Commit Graph

23668 Commits

Author SHA1 Message Date
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
Daniel
30cd1a0fb4
Merge pull request #14370 from ethereum/smt-cleanup
Remove ReasoningBasedSimplifier from libyul
2023-06-28 16:31:13 +02:00
Martin Blicha
29041c8101 Remove ReasoningBasedSimplifier from libyul
Due to a design decision to move away from a bundled SMT solver,
ReasoningBasedSimplifier in its current form cannot be use any longer.
This is a necessary step to allow a unified way to call solvers using
only SMTLIB interface.

Since this optimization pass has always been marked as highly
experimental and never turned on by default, it should be OK to remove
it.
2023-06-28 14:38:36 +02:00
r0qs
c819243374
Merge pull request #14368 from ethereum/gh-built-in-triage-automation
Remove triage workflow in favor of github built-in automation
2023-06-28 12:37:49 +02:00
Kamil Śliwak
3bb492a28d
Merge pull request #14351 from ethereum/ci-deduplicate-base-env-with-anchors
Deduplicate environment variables in CI
2023-06-27 14:43:24 +02:00
Kamil Śliwak
8b64195d4b CI: Make jobs extend base environments instead of redefining them
- Also remove variables that are now redundant.
- Note that this adds new variables for jobs that previously did not have them. This should not affect behavior because we were simply omitting those variables where they were not necessary.
2023-06-27 14:00:28 +02:00
Kamil Śliwak
793adc8106 CI: Define base environments in terms of environments of dicts they depend on 2023-06-27 13:56:36 +02:00
Kamil Śliwak
d12a981ba8 CI: Define aliases for all the base environment dicts 2023-06-27 13:56:36 +02:00
Leo
2cf03e3f0b
Merge pull request #14344 from pgebal/pgebal/fix-ice-internal-type
Fix error in SMTChecker: Use rich indentifier instead of external identifier to encode member access to functions
2023-06-27 12:31:25 +02:00
Bhargava Shastry
87d0c84960 Stack optimizer fuzzer: Detect stack-too-deep during optimization
Co-authored-by: r0qs <deepmarolaest@gmail.com>
2023-06-27 10:32:23 +02:00
r0qs
a4777937ed
Remove triage workflow in favor of github built-in automation 2023-06-26 22:53:29 +02:00
Daniel
34d2383f28
Merge pull request #14281 from alexjorgef/patch-1
Change installation documentation for Arch Linux
2023-06-26 19:42:11 +02:00
Alexandre Ferreira
b70477d795
Change installation documentation for Arch Linux
Correct inline code with double backquotes


Add more information

Add external links to packages;
Add a note to inform that packages don't have official support.
2023-06-26 17:58:03 +01:00
Daniel
1067232bbc
Merge pull request #14354 from ethereum/parallelize-bytecode-compare-presets
Parallelize optimized and unoptimized bytecode reports in CI
2023-06-26 12:57:52 +02:00