aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-02-07 06:00:33 +0800
committerchriseth <chris@ethereum.org>2018-02-08 02:23:47 +0800
commit9429e18dda7d65bea0c3e67756b5b3a6405664c7 (patch)
tree1277bf1693bcbf4d6bfc76c39ba750f66f060a13 /test
parentd7863e2054fe5617aa1de93bb9410b487d1af5d4 (diff)
downloaddexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar.gz
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar.bz2
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar.lz
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar.xz
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.tar.zst
dexon-solidity-9429e18dda7d65bea0c3e67756b5b3a6405664c7.zip
Fix tests for old precompiler.
Diffstat (limited to 'test')
-rw-r--r--test/libjulia/Inliner.cpp106
1 files changed, 53 insertions, 53 deletions
diff --git a/test/libjulia/Inliner.cpp b/test/libjulia/Inliner.cpp
index b6a7b921..88b51f28 100644
--- a/test/libjulia/Inliner.cpp
+++ b/test/libjulia/Inliner.cpp
@@ -70,31 +70,31 @@ BOOST_AUTO_TEST_CASE(smoke_test)
BOOST_AUTO_TEST_CASE(simple)
{
BOOST_CHECK_EQUAL(inlinableFunctions("{ function f() -> x:u256 { x := 2:u256 } }"), "f");
- BOOST_CHECK_EQUAL(inlinableFunctions(R"({
- function g(a:u256) -> b:u256 { b := a }
- function f() -> x:u256 { x := g(2:u256) }
- })"), "f,g");
+ BOOST_CHECK_EQUAL(inlinableFunctions("{"
+ "function g(a:u256) -> b:u256 { b := a }"
+ "function f() -> x:u256 { x := g(2:u256) }"
+ "}"), "f,g");
}
BOOST_AUTO_TEST_CASE(simple_inside_structures)
{
- BOOST_CHECK_EQUAL(inlinableFunctions(R"({
- switch 2:u256
- case 2:u256 {
- function g(a:u256) -> b:u256 { b := a }
- function f() -> x:u256 { x := g(2:u256) }
- }
- })"), "f,g");
- BOOST_CHECK_EQUAL(inlinableFunctions(R"({
- for {
- function g(a:u256) -> b:u256 { b := a }
- } 1:u256 {
- function f() -> x:u256 { x := g(2:u256) }
- }
- {
- function h() -> y:u256 { y := 2:u256 }
- }
- })"), "f,g,h");
+ BOOST_CHECK_EQUAL(inlinableFunctions("{"
+ "switch 2:u256 "
+ "case 2:u256 {"
+ "function g(a:u256) -> b:u256 { b := a }"
+ "function f() -> x:u256 { x := g(2:u256) }"
+ "}"
+ "}"), "f,g");
+ BOOST_CHECK_EQUAL(inlinableFunctions("{"
+ "for {"
+ "function g(a:u256) -> b:u256 { b := a }"
+ "} 1:u256 {"
+ "function f() -> x:u256 { x := g(2:u256) }"
+ "}"
+ "{"
+ "function h() -> y:u256 { y := 2:u256 }"
+ "}"
+ "}"), "f,g,h");
}
BOOST_AUTO_TEST_CASE(negative)
@@ -141,18 +141,18 @@ BOOST_AUTO_TEST_CASE(no_move_with_side_effects)
// The calls to g and h cannot be moved because g and h are not movable. Therefore, the call
// to f is not inlined.
BOOST_CHECK_EQUAL(
- inlineFunctions(R"({
- function f(a, b) -> x { x := add(b, a) }
- function g() -> y { y := mload(0) mstore(0, 4) }
- function h() -> z { mstore(0, 4) z := mload(0) }
- let r := f(g(), h())
- })", false),
- format(R"({
- function f(a, b) -> x { x := add(b, a) }
- function g() -> y { y := mload(0) mstore(0, 4) }
- function h() -> z { mstore(0, 4) z := mload(0) }
- let r := f(g(), h())
- })", false)
+ inlineFunctions("{"
+ "function f(a, b) -> x { x := add(b, a) }"
+ "function g() -> y { y := mload(0) mstore(0, 4) }"
+ "function h() -> z { mstore(0, 4) z := mload(0) }"
+ "let r := f(g(), h())"
+ "}", false),
+ format("{"
+ "function f(a, b) -> x { x := add(b, a) }"
+ "function g() -> y { y := mload(0) mstore(0, 4) }"
+ "function h() -> z { mstore(0, 4) z := mload(0) }"
+ "let r := f(g(), h())"
+ "}", false)
);
}
@@ -167,32 +167,32 @@ BOOST_AUTO_TEST_CASE(complex_with_evm)
BOOST_AUTO_TEST_CASE(double_calls)
{
BOOST_CHECK_EQUAL(
- inlineFunctions(R"({
- function f(a) -> x { x := add(a, a) }
- function g(b, c) -> y { y := mul(mload(c), f(b)) }
- let y := g(calldatasize(), 7)
- })", false),
- format(R"({
- function f(a) -> x { x := add(a, a) }
- function g(b, c) -> y { y := mul(mload(c), add(b, b)) }
- let y_1 := mul(mload(7), add(calldatasize(), calldatasize()))
- })", false)
+ inlineFunctions("{"
+ "function f(a) -> x { x := add(a, a) }"
+ "function g(b, c) -> y { y := mul(mload(c), f(b)) }"
+ "let y := g(calldatasize(), 7)"
+ "}", false),
+ format("{"
+ "function f(a) -> x { x := add(a, a) }"
+ "function g(b, c) -> y { y := mul(mload(c), add(b, b)) }"
+ "let y_1 := mul(mload(7), add(calldatasize(), calldatasize()))"
+ "}", false)
);
}
BOOST_AUTO_TEST_CASE(double_recursive_calls)
{
BOOST_CHECK_EQUAL(
- inlineFunctions(R"({
- function f(a, r) -> x { x := g(a, g(r, r)) }
- function g(b, s) -> y { y := f(b, f(s, s)) }
- let y := g(calldatasize(), 7)
- })", false),
- format(R"({
- function f(a, r) -> x { x := g(a, f(r, f(r, r))) }
- function g(b, s) -> y { y := f(b, g(s, f(s, f(s, s))))}
- let y_1 := f(calldatasize(), g(7, f(7, f(7, 7))))
- })", false)
+ inlineFunctions("{"
+ "function f(a, r) -> x { x := g(a, g(r, r)) }"
+ "function g(b, s) -> y { y := f(b, f(s, s)) }"
+ "let y := g(calldatasize(), 7)"
+ "}", false),
+ format("{"
+ "function f(a, r) -> x { x := g(a, f(r, f(r, r))) }"
+ "function g(b, s) -> y { y := f(b, g(s, f(s, f(s, s))))}"
+ "let y_1 := f(calldatasize(), g(7, f(7, f(7, 7))))"
+ "}", false)
);
}