mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #6129 from ethereum/expressionSimplifierToUseDataFlowAnalyzer
Fix expression simplifying by moving from SSAValueTracker to DataFlowAnalyzer as a base.
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
{
|
||||
let x := mload(0)
|
||||
x := 0
|
||||
mstore(0, add(7, x))
|
||||
}
|
||||
// ----
|
||||
// expressionSimplifier
|
||||
// {
|
||||
// let x := mload(0)
|
||||
// x := 0
|
||||
// mstore(0, 7)
|
||||
// }
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
// This tests that a bug is fixed that was related to just taking
|
||||
// values of SSA variables in account and not clearing them when
|
||||
// a dependency was reassigned.
|
||||
pop(foo())
|
||||
function foo() -> x_9
|
||||
{
|
||||
x_9 := sub(1,sub(x_9,1))
|
||||
mstore(sub(1,div(sub(x_9,1),sub(1,sub(x_9,1)))), 1)
|
||||
}
|
||||
}
|
||||
// ----
|
||||
// fullSuite
|
||||
// {
|
||||
// mstore(1, 1)
|
||||
// }
|
||||
Reference in New Issue
Block a user