mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge remote-tracking branch 'origin/develop' into breaking
This commit is contained in:
@@ -187,7 +187,7 @@ BOOST_AUTO_TEST_CASE(nested)
|
||||
x := add(add(add(add(add(add(add(add(add(add(add(add(x, r12), r11), r10), r9), r8), r7), r6), r5), r4), r3), r2), r1)
|
||||
}
|
||||
})");
|
||||
BOOST_CHECK_EQUAL(out, "h: 9 ");
|
||||
BOOST_CHECK_EQUAL(out, "h: 9 g: 5 f: 5 ");
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(also_in_outer_block)
|
||||
@@ -216,7 +216,7 @@ BOOST_AUTO_TEST_CASE(also_in_outer_block)
|
||||
function g(s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18, s19) -> w, v {
|
||||
}
|
||||
})");
|
||||
BOOST_CHECK_EQUAL(out, ": 9 ");
|
||||
BOOST_CHECK_EQUAL(out, "g: 5 : 9 ");
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_SUITE_END()
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <test/libyul/EwasmTranslationTest.h>
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <test/libyul/FunctionSideEffects.h>
|
||||
#include <test/Common.h>
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
/**
|
||||
* @date 2017
|
||||
* Unit tests for the Yul function inliner.
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <test/libyul/ObjectCompilerTest.h>
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <libyul/AsmAnalysis.h>
|
||||
#include <libyul/AsmAnalysisInfo.h>
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <test/libyul/YulInterpreterTest.h>
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#include <test/libyul/YulOptimizerTest.h>
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with solidity. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
// SPDX-License-Identifier: GPL-3.0
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
let u160max := 0xffffffffffffffffffffffffffffffffffffffff
|
||||
let a := create(0, u160max, 0)
|
||||
let b := and(u160max, create(0, u160max, 0))
|
||||
mstore(0, eq(a, b))
|
||||
}
|
||||
// ----
|
||||
// Trace:
|
||||
// CREATE(0, 0xffffffffffffffffffffffffffffffffffffffff, 0)
|
||||
// CREATE(0, 0xffffffffffffffffffffffffffffffffffffffff, 0)
|
||||
// Memory dump:
|
||||
// 0: 0000000000000000000000000000000000000000000000000000000000000001
|
||||
// Storage dump:
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
let u160max := 0xffffffffffffffffffffffffffffffffffffffff
|
||||
let a := create2(0, u160max, 0, 0)
|
||||
let b := and(u160max, create2(0, u160max, 0, 0))
|
||||
mstore(0, eq(a, b))
|
||||
}
|
||||
// ====
|
||||
// EVMVersion: >=constantinople
|
||||
// ----
|
||||
// Trace:
|
||||
// CREATE2(0, 0xffffffffffffffffffffffffffffffffffffffff, 0, 0)
|
||||
// CREATE2(0, 0xffffffffffffffffffffffffffffffffffffffff, 0, 0)
|
||||
// Memory dump:
|
||||
// 0: 0000000000000000000000000000000000000000000000000000000000000001
|
||||
// Storage dump:
|
||||
Reference in New Issue
Block a user