mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Added command line tests for keccak optimization with low runs
The value of keccak256(0, 32) should not be replaced by the big constant
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
Optimized IR:
|
||||
/*******************************************************
|
||||
* WARNING *
|
||||
* Solidity to Yul compilation is still EXPERIMENTAL *
|
||||
* It can result in LOSS OF FUNDS or worse *
|
||||
* !USE AT YOUR OWN RISK! *
|
||||
*******************************************************/
|
||||
|
||||
object "C_12" {
|
||||
code {
|
||||
{
|
||||
mstore(64, 128)
|
||||
if callvalue() { revert(0, 0) }
|
||||
mstore(0, 100)
|
||||
sstore(0, keccak256(0, 32))
|
||||
let _1 := datasize("C_12_deployed")
|
||||
codecopy(0, dataoffset("C_12_deployed"), _1)
|
||||
return(0, _1)
|
||||
}
|
||||
}
|
||||
object "C_12_deployed" {
|
||||
code {
|
||||
{
|
||||
mstore(64, 128)
|
||||
if callvalue() { revert(0, 0) }
|
||||
mstore(0, 100)
|
||||
sstore(0, 17385872270140913825666367956517731270094621555228275961425792378517567244498)
|
||||
stop()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user