Alexander Arlt
c5673278a7
Remove EWASM backend.
2023-05-11 10:56:55 -05:00
Rodrigo Q. Saramago
ef6ff2f055
Adds support for the EVM version "Paris".
...
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399 ).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
Alex Beregszaszi
0357cedb5c
Update tests and include new for create/create2 calculation
2022-09-27 22:31:46 +02:00
wechman
cf3bae0839
Fix "slot" access via mapping reference in assembly
2022-08-17 07:53:52 +02:00
Daniel Kirchner
aa7e4e02bb
A few more tests.
2022-06-10 20:12:09 +02:00
chriseth
14cdb76e4b
Add failing test
2022-06-10 17:32:28 +02:00
Daniel Kirchner
a2f768d29a
Remove empty settings.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
58d21f1e9d
Remove // compileViaYul: also
2022-05-19 20:23:28 +02:00
Daniel Kirchner
1a0605c594
Update tests.
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
Marenz
98dd78362e
Add `.address
and
.selector
` in inside assembly for external function pointers
2021-10-04 18:05:57 +02:00
Daniel Kirchner
fc37b18e88
Fix inline assembly assignments to calldata structs and statically-sized arrays.
2021-09-13 15:22:46 +02:00
chriseth
a4c94a1b5b
Fixed inline assembly external identifier access.
2021-08-11 18:18:29 +02:00
hrkrshnn
892700d769
Tests for basefee as identifier in inline assembly
...
Also added basefee to `EVMVersion::hasOpcode(...)`
2021-08-11 10:46:40 +02:00
Kamil Śliwak
105b4b4c8b
Update tests
2021-07-05 13:46:53 +02:00
Alex Beregszaszi
f952f851b7
Enable more semantic tests for Ewasm
2021-04-23 17:00:01 +01:00
hrkrshnn
221292c278
Tests and changelog
2021-04-22 18:19:47 +02:00
Alex Beregszaszi
45c6bbe02b
Trivial isoltest updates: directives sorted alphabetically
2021-04-20 17:21:56 +02:00
hrkrshnn
30e08ee3a5
Changelog and test for the KeccakCaching bug
2021-03-23 11:09:00 +01:00
chriseth
78a097a012
Only warn about variables being shadowed in inline assembly.
2021-02-19 14:29:22 +01:00
chriseth
ccaa81fbe7
Implement function modifiers.
2020-12-17 17:00:51 +01:00
hrkrshnn
88c99a7538
Tests/Docs: changing type of msg.sender and tx.origin into address
...
And also making the type of address(literal) as non-payable address.
2020-12-14 16:55:48 +01:00
Alex Beregszaszi
28e65bac46
Add unimplemented assert for modifiers in the IR
...
Also improved relevant tests for modifiers to be more strict and detect if the modifier body was skipped.
2020-11-27 18:34:17 +00:00
chriseth
f313668ef1
Merge pull request #10211 from ethereum/copyArrayCalldata2MemSol2Yul
...
[Sol->Yul] Copying arrays from calldata to memory
2020-11-23 15:02:18 +01:00
Djordje Mijovic
41ec7cc23e
Adding new tests and activating old tests.
2020-11-23 14:52:55 +01:00
Alexander Arlt
da36055449
[ewasm] Polyfill: calldataload & calldatacopy: Enable Tests.
2020-11-21 08:57:56 -05:00
chriseth
1508b08f3e
Implement inline assembly access to constants.
2020-11-18 12:35:23 +01:00
chriseth
2665eaa4fa
Support .offset and .length for calldata bytes and string arrays.
2020-11-18 01:45:56 +01:00
Djordje Mijovic
ad8d840ee7
[Sol->Yul] Implementing conversion of struct to struct pointer.
...
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2020-10-08 16:37:57 +02:00
Alex Beregszaszi
4e5b403c37
Introduce RightArrow (->) token in the scanner
2020-08-27 12:28:27 +01:00
Djordje Mijovic
d99b81ef02
[Sol->Yul] Enabling storage pointers to local vars in inline assembly.
2020-08-26 10:25:42 +02:00
Alex Beregszaszi
bb29307b02
Add/Update tests for Yul function definition
2020-08-12 23:53:08 +01:00
chriseth
fc2e9ec2ff
Use .slot
and .offest
to access storage items.
2020-07-13 14:59:22 +02:00
Djordje Mijovic
472fb21ee0
[Sol->Yul] Enabling new bytes(n)
2020-05-14 12:55:14 +02:00
Djordje Mijovic
8b7f87eed5
[isoltest] Enforcing compileViaYul to be set if test can pass via yul
2020-05-05 00:38:13 +02:00
chriseth
f25157a5f8
Sort tests.
2020-03-19 14:42:25 +01:00
chriseth
45041e5d3a
Allow access to `_slot
` for local storage pointer variables.
2020-02-25 14:28:04 +01:00
Djordje Mijovic
dd9009eba6
TestFileParser: Adding new keyword wei for expressing function value
2020-02-21 11:39:37 +01:00
chriseth
0f014144c8
Test for true/false in inline assembly.
2020-01-14 17:16:09 +01:00
chriseth
e061f1e743
Merge remote-tracking branch 'origin/develop' into HEAD
2019-12-05 16:44:26 +01:00
Gaith Hallak
4d90180e24
Support referencing other constants in inline assembly
2019-12-05 13:27:17 +03:00
Leonardo Alt
389da5228e
Merge remote-tracking branch 'origin/develop' into merge_develop_060
2019-11-20 12:27:40 +01:00
Alex Beregszaszi
cbb08ae3db
Add semantic test for SELFBALANCE in inline assembly
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
fc2af72a3d
Add semantic test for CHAINID in inline assembly
2019-11-19 17:09:18 +01:00
chriseth
499fe57d33
Tests
2019-10-29 14:32:16 +01:00
chriseth
cdd137e3d1
Support constant numbers in inline assembly.
2019-07-02 14:01:05 +02:00