mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			39 lines
		
	
	
		
			811 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			811 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| {
 | |
|     function recursive() { recursive() }
 | |
|     function terminating() { stop() }
 | |
|     function maybeReverting() { if calldataload(0) { revert(0, 0) } }
 | |
| 
 | |
|     let a := calldataload(7)
 | |
|     if a { recursive() }
 | |
| 
 | |
|     a := calldataload(a)
 | |
|     if a { maybeReverting() }
 | |
| 
 | |
|     a := calldataload(a)
 | |
|     if a { terminating() }
 | |
| 
 | |
|     sstore(0, a)
 | |
| }
 | |
| // ----
 | |
| // step: conditionalSimplifier
 | |
| //
 | |
| // {
 | |
| //     function recursive()
 | |
| //     { recursive() }
 | |
| //     function terminating()
 | |
| //     { stop() }
 | |
| //     function maybeReverting()
 | |
| //     {
 | |
| //         if calldataload(0) { revert(0, 0) }
 | |
| //     }
 | |
| //     let a := calldataload(7)
 | |
| //     if a { recursive() }
 | |
| //     a := 0
 | |
| //     a := calldataload(a)
 | |
| //     if a { maybeReverting() }
 | |
| //     a := calldataload(a)
 | |
| //     if a { terminating() }
 | |
| //     a := 0
 | |
| //     sstore(0, a)
 | |
| // }
 |