Commit Graph

23681 Commits

Author SHA1 Message Date
Alexander Arlt
3e98d49b3e Add explicit std:: namespace. 2023-07-12 18:13:35 +02:00
Alexander Arlt
c7a1dd2d92 iiiiiiiiiiiiiiiiiiii 2023-07-12 18:13:35 +02:00
Alexander Arlt
54c9c11d05 iiiiiiiiiiiiii 2023-07-12 18:13:35 +02:00
Alexander Arlt
65a6e732b7 iiiiiiiiiiiiiiii 2023-07-12 18:13:35 +02:00
Alexander Arlt
b80a4662b9 aaaaaaaaa 2023-07-12 18:13:35 +02:00
Alexander Arlt
894e42db34 [libevmasm] Tests: Update tests to support sub-object index. 2023-07-12 18:11:47 +02:00
Alexander Arlt
c5de882bbb [libevmasm] EVM Assembly JSON Import: add support for sub-object index. 2023-07-12 18:11:42 +02:00
Alexander Arlt
2ffa8aa57a [libevmasm] EVM Assembly JSON Export: add subobject index. 2023-07-12 17:48:48 +02:00
Alexander Arlt
385142e805 Rebase. 2023-07-12 17:48:48 +02:00
Alexander Arlt
90ac362a3b [scripts] ASTImportTest.sh: minor refactorings. 2023-07-12 17:48:48 +02:00
Alexander Arlt
49a0948d92 [test] import/export: Add simple yul reimport bytecode equivalance test. 2023-07-12 17:48:48 +02:00
Alexander Arlt
b0d65f83ce [libevmasm] EVM Assembly import: Fix sub-assembly object import. 2023-07-12 17:48:48 +02:00
Alexander Arlt
72b4629118 Add cmdlineTests/asm_json_export_yul_subobjects. 2023-07-12 17:48:48 +02:00
Alexander Arlt
ac7fcd6f7c [libevmasm] EVMAssemblStack: remove std::optional for source mappings. 2023-07-12 17:48:48 +02:00
Alexander Arlt
ff05b7a485 [evmasm] EVMAssemblyStack::parseAndAnalyze remove return code. 2023-07-12 17:48:48 +02:00
Alexander Arlt
1aac4d1a4c [test] cmdLineTests: add test that checks behavior of non unique sources. 2023-07-12 17:48:48 +02:00
Alexander Arlt
136da0c74c [solc] CommandLineInterface::assembleYul: ensure unique "<unknown>" sources. 2023-07-12 17:48:48 +02:00
Alexander Arlt
37e3e54e34 [solc] CommandLineInterface: Add evmasm::EVMAssemblyStack & use evmasm::AbstractAssemblyStack. 2023-07-12 17:48:48 +02:00
Alexander Arlt
52f2d4b6e0 [evmasm::EVMAssemblyStack] Implement AbstractAssemblyStack. 2023-07-12 17:48:48 +02:00
Alexander Arlt
e087ef6d06 [libsolidity] CompilerStack: Remove usage of evmasm::EVMAssemblyStack. 2023-07-12 17:48:48 +02:00
Alexander Arlt
a9b56ef5ff [evmasm::Assembly] Fix createAssemblyItemFromJSON value check: no value on c_instructions. 2023-07-12 17:48:48 +02:00
Alexander Arlt
024f55165a [evmasm::Assembly] Fix createAssemblyItemFromJSON VERBATIM value check. 2023-07-12 17:48:48 +02:00
Alexander Arlt
14304b7d75 [evmasm::Assembly] Fix SourceLocation::sourceName shared_ptr creation. 2023-07-12 17:48:48 +02:00
Alexander Arlt
b02031302a [test] Assembler: Update tests: Assembly::m_sourceList not a member anymore. 2023-07-12 17:48:48 +02:00
Alexander Arlt
98944cba5b [libevmasm] Remove m_sourceList member from Assembly class. 2023-07-12 17:48:48 +02:00
Kamil Śliwak
7cfb34ce76 Introduce AbstractAssemblyStack as an interface to functionality common for both CompilerStack and EVMAssemblyStack 2023-07-12 17:48:48 +02:00
Kamil Śliwak
72caea92e6 fixup! [libevmasm] Add support to import evm assembly json. 2023-07-12 17:48:48 +02:00
Alexander Arlt
d413a0739a Minor bugfix. 2023-07-12 17:48:48 +02:00
Alexander Arlt
ea2a40fce1 Update scripts/ASTImportTest.sh. 2023-07-12 17:48:48 +02:00
Alexander Arlt
d7b78cbf4c Yul to EVM assembly json export: Add simple cmdline tests. 2023-07-12 17:48:48 +02:00
Kamil Śliwak
5c43d9e3f7 fixup! [libevmasm] Add support to import evm assembly json. 2023-07-12 17:48:48 +02:00
Alexander Arlt
108490e630 [libevmasm] Add support to import evm assembly json. 2023-07-12 17:48:48 +02:00
Nikola Matić
69c034b1c0
Merge pull request #14410 from ethereum/purge-using-namespace-std-in-libsmtutil-libsolc
Purge using namespace std in libsmtutil and libsolc
2023-07-12 15:33:18 +02:00
Nikola Matic
62723b7534 Purge using namespace std in libsmtutil and libsolc 2023-07-12 14:09:19 +02:00
Nikola Matić
1ac883b84d
Merge pull request #14409 from ethereum/purge-using-namespace-from-liblangutil
Purge using namespace std from liblangutil
2023-07-12 12:10:27 +02:00
Nikola Matic
e81f2bdbd6 Purge using namespace std from liblangutil 2023-07-12 11:24:21 +02:00
Nikola Matić
8390a24e30
Merge pull request #14408 from ethereum/check-style-for-using-namespace-std-v2
Check style coverage for using namespace std
2023-07-12 11:21:37 +02:00
matheusaaguiar
b29d8a429c
Merge pull request #14391 from alpinevm/patch-2
Update compiler standard input docs to include shanghai in the available evm version options
2023-07-11 17:50:45 -03:00
Nikola Matic
c1ca2bf9d2 Check style coverage for using namespace std 2023-07-11 20:28:21 +02:00
Kamil Śliwak
b583e9e64d
Merge pull request #14398 from ethereum/fix-welcome-contributors
Remove token requirement from external contributor greeter
2023-07-10 18:19:02 +02:00
r0qs
919408901d
Remove token requirement from external contributor greeter 2023-07-10 16:26:18 +02:00
Cliff Syner
09c30566eb
Formatting docs/using-the-compiler.rst
Co-authored-by: Nuno Santos <nunofilipesantos@gmail.com>
2023-07-10 09:20:10 -05:00
Daniel
b84af3f420
Merge pull request #14394 from ethereum/purge-using-namespace-std
Purge using namespace std in libevmasm
2023-07-10 13:59:11 +02:00
Nikola Matic
a9c8b4b4d1 Purge using namespace std 2023-07-10 13:12:46 +02:00
Kamil Śliwak
27faacb72c
Merge pull request #14390 from criadoperez/fix/criadoperez
Fixed typo in protoToAbiv2.h
2023-07-10 12:35:18 +02:00
Cliff Syner
58a4296989
Update using-the-compiler.rst
Reflect all available evm options in compiler standard input docs
2023-07-10 00:33:05 -05:00
Alejandro Criado-Pérez
29358806f4
updated protoToAbiv2.h 2023-07-09 01:45:54 +02:00
Bhargava Shastry
5d7533b540
Merge pull request #14227 from ethereum/update-codegen-fuzzer
Stack optimizer fuzzer: Detect stack-too-deep during optimization
2023-07-03 14:52:27 +02:00
Leo
2f451a186b
Merge pull request #14377 from ethereum/fix-smtlib
SMTChecker: Fix generation of smtlib scripts
2023-06-30 16:58:26 +02:00
Martin Blicha
3599c8c6b9 SMTChecker: Fix generation of smtlib scripts
When both CHC and BMC engines are used, the type of state variable
changes when trusted mode for external calls is used. This is because in
CHC engine, trusted mode means we pack more information into the
symbolic state. In BMC this type is always simple.

However, if BMC is run after CHC, in the current code state variables
are reset (and their declaration dumped into SMT-LIB script) before BMC
resets the type of the state variable.

The proposed solution is to simply reset the variable type before the
first variable of this type is created.
2023-06-30 15:57:51 +02:00