aboutsummaryrefslogtreecommitdiffstats
path: root/test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-10-12 21:15:41 +0800
committerGitHub <noreply@github.com>2018-10-12 21:15:41 +0800
commit1d312c8e4073e2e7ce9a23a721013942e1e5c727 (patch)
treeaed816fd4530a0dcf2b20ad4ac6b3daad060fae2 /test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul
parent5f5dc8956d39ab19c5408aa4c39a3cd10d3a2dec (diff)
parenta937a449df81928437bb6f367289c776fe842dc9 (diff)
downloaddexon-solidity-1d312c8e4073e2e7ce9a23a721013942e1e5c727.tar.gz
dexon-solidity-1d312c8e4073e2e7ce9a23a721013942e1e5c727.tar.zst
dexon-solidity-1d312c8e4073e2e7ce9a23a721013942e1e5c727.zip
Merge pull request #5203 from ethereum/moveMoreYulTests
Move more yul optimizer tests
Diffstat (limited to 'test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul')
-rw-r--r--test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul b/test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul
new file mode 100644
index 00000000..8623f15d
--- /dev/null
+++ b/test/libjulia/yulOptimizerTests/expressionSplitter/inside_function.yul
@@ -0,0 +1,24 @@
+{
+ let x := mul(f(0, mload(7)), 3)
+ function f(a, b) -> c {
+ c := mul(a, mload(add(b, c)))
+ }
+ sstore(x, f(mload(2), mload(2)))
+}
+// ----
+// expressionSplitter
+// {
+// let _1 := mload(7)
+// let _2 := f(0, _1)
+// let x := mul(_2, 3)
+// function f(a, b) -> c
+// {
+// let _3 := add(b, c)
+// let _4 := mload(_3)
+// c := mul(a, _4)
+// }
+// let _5 := mload(2)
+// let _6 := mload(2)
+// let _7 := f(_6, _5)
+// sstore(x, _7)
+// }