mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			20 lines
		
	
	
		
			529 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			529 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| {
 | |
|     // This is not fully simplified on purpose because we
 | |
|     // need another split step in between. The full simplification
 | |
|     // is tested in the fullSuite.
 | |
|     let x := calldataload(0)
 | |
|     let a := and(0xff, shr(248, shl(248, shr(248, x))))
 | |
|     let b := shr(12, shl(8, and(x, 0xf0f0)))
 | |
|     sstore(a, b)
 | |
| }
 | |
| // ====
 | |
| // EVMVersion: >byzantium
 | |
| // ----
 | |
| // step: expressionSimplifier
 | |
| //
 | |
| // {
 | |
| //     let x := calldataload(0)
 | |
| //     let a := and(0xff, and(shr(248, x), 255))
 | |
| //     sstore(a, shr(12, and(shl(8, x), 15790080)))
 | |
| // }
 |