Marenz
|
f508494f52
|
Fix undefined order of evaluation
|
2022-08-29 15:33:25 +02:00 |
|
hrkrshnn
|
0b2a670a94
|
Improved stack too deep message when compiled without --optimize
|
2022-07-03 14:03:00 +02:00 |
|
Kamil Śliwak
|
539e139555
|
Add explicit throws after some assertions to work around a spurious warning in GCC 12.1
|
2022-06-01 20:37:48 +02:00 |
|
hrkrshnn
|
5ae17c8e65
|
Recommend via-ir whenever a stack too deep error is encountered.
|
2022-05-05 19:22:03 +02:00 |
|
Daniel Kirchner
|
5cd98006d4
|
Fill in junk in stack layouts on terminating control flow paths.
|
2022-03-15 18:36:55 +01:00 |
|
Daniel Kirchner
|
9410e125da
|
Change memory-safe assembly annotation suggestion during stack too deep errors.
|
2022-03-14 11:54:09 +01:00 |
|
Daniel Kirchner
|
ce0a3e93f2
|
Store whether an evmasm Assembly is creation code.
|
2022-03-09 17:42:29 +01:00 |
|
chriseth
|
77c40cd2af
|
Merge pull request #12740 from ethereum/remove-locale-dependent-operations
Replace all locale-dependent operations with locale-agnostic counterparts
|
2022-03-07 17:56:58 +01:00 |
|
wechman
|
52dfccca98
|
Replace all locale-dependent operations with locale-agnostic counterparts
|
2022-03-07 17:23:08 +01:00 |
|
chriseth
|
4f19d68ee9
|
Merge pull request #12620 from ethereum/assemblyAnnotation
Memory-safety annotation for inline assembly.
|
2022-03-07 12:48:41 +01:00 |
|
Daniel Kirchner
|
dfb7bf2853
|
Report memoryguard in stack too deep error.
|
2022-03-02 16:42:28 +01:00 |
|
chriseth
|
b0dcd7b915
|
Split out disassemble to remove numeric from instruction includes.
|
2022-03-02 15:30:41 +01:00 |
|
Daniel Kirchner
|
de28f31716
|
Improved stack shuffling in corner cases.
|
2022-01-21 15:41:30 +01:00 |
|
chriseth
|
9a0821f2c3
|
Fix warning about reference.
|
2021-12-16 00:12:19 +01:00 |
|
chriseth
|
929ed094ce
|
Register functions earlier.
|
2021-11-04 13:48:11 +01:00 |
|
chriseth
|
99aa18c4f3
|
Refactor: Only return output.
|
2021-11-04 13:42:50 +01:00 |
|
Daniel Kirchner
|
28ae316556
|
Named function labels.
|
2021-11-03 12:42:07 +01:00 |
|
Daniel Kirchner
|
b2c9b69de2
|
Enable for IR code generation with stack optimization > homestead.
|
2021-11-03 12:39:55 +01:00 |
|
chriseth
|
9f48b7419c
|
Do not use named function labels if function names are not unique.
|
2021-10-19 18:33:00 +02:00 |
|
chriseth
|
9417d6775f
|
Control flow side-effects for user-defined functions.
|
2021-10-14 17:46:07 +02:00 |
|
Kamil Śliwak
|
2cd1c644b6
|
Remove unused includes and sort existing includes in a few places
|
2021-10-11 20:34:48 +02:00 |
|
chriseth
|
1531863835
|
Split Common.h into Numeric.h.
|
2021-09-23 15:27:29 +02:00 |
|
chriseth
|
c8e6ef9657
|
Merge pull request #12004 from ethereum/disambiguateBytesRequired
Disambiguate bytesRequired
|
2021-09-23 15:25:44 +02:00 |
|
Kamil Śliwak
|
ce4420f857
|
Separate DebugData fields for Solidity and Yul source locations
|
2021-09-22 13:11:39 +02:00 |
|
chriseth
|
50ce1f5ddd
|
Disambiguate bytesRequired
|
2021-09-22 11:22:07 +02:00 |
|
chriseth
|
e6f0fe8ae3
|
Use source id in yul to evm code transform.
|
2021-09-22 11:11:51 +02:00 |
|
chriseth
|
a66e6f08c0
|
Merge pull request #11951 from ethereum/scopeFillerNullptr
Use locationOf helper instead of accessing debugData directly.
|
2021-09-14 15:43:01 +02:00 |
|
Daniel Kirchner
|
854b8b65b5
|
Better source locations in Yul ControlFlowGraph and OptimizedEVMCodeTransform.
|
2021-09-14 13:43:16 +02:00 |
|
Daniel Kirchner
|
75c3286311
|
Optimized EVM Code Transform.
|
2021-09-14 13:37:04 +02:00 |
|
Daniel Kirchner
|
7abc55d89a
|
Use locationOf helper instead of accessing debugData directly.
|
2021-09-14 10:04:09 +02:00 |
|
Daniel Kirchner
|
d512f7a4fd
|
Merge pull request #11890 from ethereum/stackLayoutGeneratorReportTooDeep
Report stack too deep and conditional stack compression in StackLayoutGenerator.
|
2021-09-08 10:28:30 +02:00 |
|
Daniel Kirchner
|
a683ea7646
|
Remove the expression callback from the code generator functions of Yul builtins.
|
2021-09-06 17:07:53 +02:00 |
|
Daniel Kirchner
|
e022ba1bfb
|
Report stack too deep and conditionally aggressively compress stack in StackLayoutGenerator.
|
2021-09-06 09:08:04 +02:00 |
|
Daniel Kirchner
|
f881409ea4
|
Stack layout generator for new code generation.
|
2021-09-02 17:47:19 +02:00 |
|
Daniel Kirchner
|
c82f9b9fab
|
Mark recursive calls in yul control flow graph.
|
2021-08-19 16:54:43 +02:00 |
|
chriseth
|
a4c94a1b5b
|
Fixed inline assembly external identifier access.
|
2021-08-11 18:18:29 +02:00 |
|
hrkrshnn
|
7f1a2be0fe
|
Allow basefee as Yul identifier for EVMVersion < london
This was done to prevent basefee from being a breaking change. This change will be removed in 0.9.0.
TODO revert this commit in breaking.
|
2021-08-11 10:46:08 +02:00 |
|
chriseth
|
467cbf92bc
|
Only provide code generator to CodeTransform.
|
2021-08-04 18:38:10 +02:00 |
|
Daniel Kirchner
|
f3707f2ab0
|
Control flow graph for Yul.
|
2021-07-15 15:24:12 +02:00 |
|
chriseth
|
8d5e82b406
|
Fix source location of builtin function calls.
|
2021-07-06 16:54:29 +02:00 |
|
Daniel Kirchner
|
bc288aacf5
|
Have the stack optimization in the code transform only reuse slots that are reachable and fix argument slot reuse on functions without return variables.
|
2021-06-28 18:11:57 +02:00 |
|
chriseth
|
0df8a38e55
|
Support metadata via IR.
|
2021-06-21 18:20:31 +02:00 |
|
chriseth
|
fe35512feb
|
Remove EVMAssembly.
|
2021-06-08 18:41:22 +02:00 |
|
TerranCivilian
|
c15501eea9
|
Remove unneeded include files
|
2021-06-07 12:53:18 -04:00 |
|
chriseth
|
f9c94d7c42
|
Note function entry points.
|
2021-05-04 17:15:13 +02:00 |
|
Djordje Mijovic
|
e404b6e7a6
|
Refactoring yul source locations.
|
2021-05-04 16:05:23 +02:00 |
|
Alex Beregszaszi
|
176ce4edf7
|
Split EthAssemblyAdapter from AsmCodeGen
|
2021-04-27 11:31:15 +01:00 |
|
chriseth
|
cb1af8b88a
|
Make verbatim compatible with KnownState.
|
2021-04-26 19:56:44 +02:00 |
|
chriseth
|
e2d8005737
|
Add verbatim builtin.
|
2021-04-26 19:56:44 +02:00 |
|
hrkrshnn
|
011f8d3ff7
|
Changed the type of gas calculation to bigint instead of size_t
Since the gas calculation can involve multiplication by ``--optimize-runs``, it is possible that
`size_t` is not enough to represent the total gas.
|
2021-04-22 18:19:47 +02:00 |
|