aboutsummaryrefslogtreecommitdiffstats
path: root/test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul
diff options
context:
space:
mode:
Diffstat (limited to 'test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul')
-rw-r--r--test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul b/test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul
new file mode 100644
index 00000000..5cc5a17d
--- /dev/null
+++ b/test/libjulia/yulOptimizerTests/expressionSplitter/control_flow.yul
@@ -0,0 +1,33 @@
+{
+ let x := calldataload(0)
+ if mul(add(x, 2), 3) {
+ for { let a := 2 } lt(a, mload(a)) { a := add(a, mul(a, 2)) } {
+ let b := mul(add(a, 2), 4)
+ sstore(b, mul(b, 2))
+ }
+ }
+}
+// ----
+// expressionSplitter
+// {
+// let x := calldataload(0)
+// let _1 := add(x, 2)
+// let _2 := mul(_1, 3)
+// if _2
+// {
+// for {
+// let a := 2
+// }
+// lt(a, mload(a))
+// {
+// let _3 := mul(a, 2)
+// a := add(a, _3)
+// }
+// {
+// let _4 := add(a, 2)
+// let b := mul(_4, 4)
+// let _5 := mul(b, 2)
+// sstore(b, _5)
+// }
+// }
+// }