mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
| ======= yul_to_wasm_source_location_crash/input.yul (Ewasm) =======
 | |
| 
 | |
| ==========================
 | |
| 
 | |
| Translated source:
 | |
| /// @use-src 0:"test.sol"
 | |
| object "C" {
 | |
|     code {
 | |
|         function main()
 | |
|         {
 | |
|             let hi := i64.shl(i64.extend_i32_u(bswap32(i32.wrap_i64(0))), 32)
 | |
|             let y := i64.or(hi, i64.extend_i32_u(bswap32(i32.wrap_i64(i64.shr_u(0, 32)))))
 | |
|             i64.store(0:i32, y)
 | |
|             i64.store(i32.add(0:i32, 8:i32), y)
 | |
|             i64.store(i32.add(0:i32, 16:i32), y)
 | |
|             i64.store(i32.add(0:i32, 24:i32), y)
 | |
|             i64.store(32:i32, y)
 | |
|             i64.store(i32.add(32:i32, 8:i32), y)
 | |
|             i64.store(i32.add(32:i32, 16:i32), y)
 | |
|             i64.store(i32.add(32:i32, 24:i32), y)
 | |
|             eth.storageStore(0:i32, 32:i32)
 | |
|         }
 | |
|         function bswap16(x:i32) -> y:i32
 | |
|         {
 | |
|             y := i32.or(i32.and(i32.shl(x, 8:i32), 0xff00:i32), i32.and(i32.shr_u(x, 8:i32), 0xff:i32))
 | |
|         }
 | |
|         function bswap32(x:i32) -> y:i32
 | |
|         {
 | |
|             let hi:i32 := i32.shl(bswap16(x), 16:i32)
 | |
|             y := i32.or(hi, bswap16(i32.shr_u(x, 16:i32)))
 | |
|         }
 | |
|     }
 | |
| }
 |