Alex Beregszaszi
|
7e88ba8da0
|
Enable the -Wconversion warning
|
2020-12-08 16:45:24 +00:00 |
|
chriseth
|
329b8f2a60
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-12-07 13:04:14 +01:00 |
|
Daniel Kirchner
|
96a50b52e2
|
Add storage load/store functions to Yul dialect.
|
2020-12-03 19:10:05 +01:00 |
|
chriseth
|
9a5902f9d7
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-12-02 12:28:02 +01:00 |
|
chriseth
|
e10712c173
|
Merge pull request #10454 from ethereum/ewasm-cleanup
[ewasm] Clean up some builtins and fix text representation of `select`
|
2020-12-01 17:34:48 +01:00 |
|
chriseth
|
8279d90ba2
|
Merge pull request #10403 from ethereum/rename-asmdata
Rename AsmData* to AST*
|
2020-12-01 14:33:11 +01:00 |
|
Alex Beregszaszi
|
04cf4867fe
|
[ewasm] Clean up opcodes/builtins in the binary encoder
Also make sure that `i32.drop/i64.drop` won't silently drop its arguments, as they may have side-effects.
|
2020-12-01 12:50:54 +00:00 |
|
Alex Beregszaszi
|
a29a7ad680
|
[ewasm] Properly encode i32/i64.select in the text format
|
2020-12-01 11:22:38 +00:00 |
|
chriseth
|
6de7eaba95
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-12-01 10:50:13 +01:00 |
|
Alex Beregszaszi
|
a7ee1355bd
|
[ewasm] Use select instruction where appropriate
|
2020-11-30 12:10:32 +00:00 |
|
Alex Beregszaszi
|
9640cfd77e
|
[ewasm] Add i32.select/i64.select
|
2020-11-30 11:58:33 +00:00 |
|
Alex Beregszaszi
|
06af2fb38a
|
[ewasm] Change eq() in polyfill to branch-less version
|
2020-11-27 22:47:55 +00:00 |
|
Alex Beregszaszi
|
a22077f736
|
Rename AsmData -> AST
Also attempt to only include ASTForward where appropriate.
|
2020-11-25 17:58:02 +00:00 |
|
chriseth
|
a0a02f2307
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-11-23 19:28:08 +01:00 |
|
Alex Beregszaszi
|
f76ac0a753
|
[wasm] Document what StringLiteral is
|
2020-11-20 21:16:56 +00:00 |
|
Alexander Arlt
|
9d6296eca4
|
[ewasm] Polyfill: calldataload & calldatacopy.
|
2020-11-20 13:46:04 -05:00 |
|
chriseth
|
a7db4fa4a5
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-11-18 20:05:02 +01:00 |
|
Alexander Arlt
|
c0d28492c3
|
[ewasm] Polyfill: Rename endian_swap -> bswap.
|
2020-11-17 21:30:06 -05:00 |
|
Alexander Arlt
|
19f764bf65
|
Split ewasm polyfill functions into different files.
|
2020-11-17 19:27:44 -05:00 |
|
chriseth
|
0a31a6bc36
|
Merge pull request #10258 from ethereum/develop
Merge develop into breaking.
|
2020-11-11 13:36:17 +01:00 |
|
Alex Beregszaszi
|
6f6bcdd526
|
[ewasm] Display custom sections as hex string in the text output
|
2020-11-10 23:48:24 +01:00 |
|
chriseth
|
da92fe548e
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-11-10 13:48:32 +01:00 |
|
Alex Beregszaszi
|
6e11754c8b
|
[ewasm] Support compiling data subobjects
|
2020-11-09 17:47:12 +00:00 |
|
Alex Beregszaszi
|
e41700e5f7
|
[ewasm] Clarify custom section handling in BinaryTransform
|
2020-11-09 17:47:01 +00:00 |
|
Alex Beregszaszi
|
cd08dab4e6
|
[ewasm] Allow compiling Yul without "main"
|
2020-11-09 16:36:29 +00:00 |
|
chriseth
|
e93a84ccd4
|
Merge remote-tracking branch 'origin/develop' into HEAD
|
2020-10-28 18:19:31 +01:00 |
|
Alex Beregszaszi
|
13652bd4a9
|
[ewasm] Add assertion for datasize/dataoffset in BinaryTransform
|
2020-10-27 17:43:31 +00:00 |
|
Alex Beregszaszi
|
6d79a8885f
|
[ewasm] Implement stop() in EVM->Ewasm translator
|
2020-10-27 17:09:30 +00:00 |
|
chriseth
|
bfd267459c
|
Panic codes.
|
2020-10-22 19:25:55 +02:00 |
|
Daniel Kirchner
|
0dca223b45
|
Add another argument to setimmutable and the AssignImmutable opcode, allowing to modify code at any memory offset.
|
2020-10-15 18:14:41 +02:00 |
|
Alexander Arlt
|
b6e1415509
|
Add LEB128 encoding functions & tests.
|
2020-09-28 16:06:19 -05:00 |
|
Daniel Kirchner
|
f3c2d6cfdc
|
Move memory load and store functions to the dialect.
|
2020-09-17 22:13:27 +02:00 |
|
Daniel Kirchner
|
f4b42d1c72
|
Add stack limit evader.
|
2020-09-17 22:13:27 +02:00 |
|
Harikrishnan Mulackal
|
d166c2540a
|
Fix typo block
|
2020-09-07 17:24:03 +02:00 |
|
Alex Beregszaszi
|
dd44fc1f06
|
Use explicit yul namespace in WasmCodeTransform
|
2020-08-27 19:49:30 +01:00 |
|
Alex Beregszaszi
|
fdf68a9525
|
Add some asserts to WasmCodeTransform
|
2020-08-27 19:49:30 +01:00 |
|
Harikrishnan Mulackal
|
3cbe65e4f3
|
Refactor SideEffects struct
|
2020-08-18 14:53:59 +02:00 |
|
Alex Beregszaszi
|
f6a57af809
|
Add LiteralKind to Dialect.literalArguments
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
|
2020-08-05 11:37:00 +01:00 |
|
Alex Beregszaszi
|
24bb6252ac
|
Merge Parser::instructions() into EVMDialect
|
2020-07-29 13:15:54 +01:00 |
|
chriseth
|
b1f79072df
|
Fix stack compressor wrt literal arguments.
|
2020-07-23 14:03:51 +02:00 |
|
chriseth
|
6bb6783d39
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-22 15:26:44 +02:00 |
|
Djordje Mijovic
|
6f97e6153c
|
[yul] Adding support for accessing subobjects via .
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
|
2020-07-21 17:56:11 +02:00 |
|
chriseth
|
9be5ed1220
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-21 11:35:28 +02:00 |
|
chriseth
|
1c9179683e
|
Merge pull request #9433 from ethereum/reportAllStackErrors
Report all stack errors
|
2020-07-20 15:44:51 +02:00 |
|
chriseth
|
f5d8636d28
|
Document variableHeightDiff.
|
2020-07-20 15:44:29 +02:00 |
|
Sachin Grover
|
b7adb2aa42
|
Add SPDX license identifier if not present already in source file
Fixes: #9220
|
2020-07-17 20:24:12 +05:30 |
|
Daniel Kirchner
|
92cd1ddb7d
|
Add markAsInvalid to the various assemblies.
|
2020-07-16 17:38:13 +02:00 |
|
Daniel Kirchner
|
579e4b5a69
|
Report all stack errors in the EVM code transform.
|
2020-07-16 17:38:04 +02:00 |
|
chriseth
|
f945163909
|
Merge pull request #9432 from ethereum/develop
Merge develop into breaking.
|
2020-07-16 17:14:45 +02:00 |
|
Alex Beregszaszi
|
870ea98c21
|
Prefix EIP-615 opcodes with EIP615 in Instructions
|
2020-07-13 17:34:19 +01:00 |
|
Daniel Kirchner
|
def0ebbb3e
|
Free variables directly after visiting RHS of Variable Declarations during EVMCodeTransform.
|
2020-07-13 17:36:15 +02:00 |
|
chriseth
|
8eee3ed3a2
|
Merge pull request #9388 from ethereum/develop
Merge develop into breaking.
|
2020-07-13 14:55:21 +02:00 |
|
Alex Beregszaszi
|
87557896ed
|
Add ctz and popcnt to WasmDialect
|
2020-07-13 11:10:14 +01:00 |
|
Djordje Mijovic
|
547590b972
|
Fixing additional signedness errors after adding -Wsign-conversion flag
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
|
2020-07-09 17:22:45 +02:00 |
|
chriseth
|
64b6524bdb
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-08 09:37:14 +02:00 |
|
chriseth
|
982a269b2b
|
Merge pull request #9325 from ethereum/develop
Merge develop into breaking.
|
2020-07-06 19:11:02 +02:00 |
|
chriseth
|
4d2b9cd38f
|
Jump types for yul functions.
|
2020-07-06 18:12:54 +02:00 |
|
Alex Beregszaszi
|
60d4b1e8cc
|
Rename drop to i64.drop in WasmDialect
Also properly implement support for both i32.drop and i64.drop in BinaryTransform, TextTransform, and YulInterpreter
|
2020-07-06 15:47:17 +01:00 |
|
Alex Beregszaszi
|
55e41b602a
|
Explicitly check for jump instructions in EVMDialect
|
2020-07-06 14:46:24 +01:00 |
|
chriseth
|
ab68406006
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-07-06 15:25:25 +02:00 |
|
Daniel Kirchner
|
8c5fce5b31
|
Merge pull request #9304 from ethereum/yul-assert
Only use yulAssert and not solAssert in libyul
|
2020-07-03 19:00:14 +02:00 |
|
Alex Beregszaszi
|
4c7c7c0270
|
Only use yulAssert and not solAssert in libyul
|
2020-07-03 15:46:50 +01:00 |
|
Kamil Śliwak
|
356b9a7904
|
Restrict linkersymbol builtin to object dialect of Yul
|
2020-07-02 14:41:40 +02:00 |
|
Bhargava Shastry
|
1a0391bceb
|
Fuzzer: Add a specialized StackTooDeepError Exception that is caught in the fuzzing harness
|
2020-07-01 11:08:20 +02:00 |
|
chriseth
|
3e3f9a472f
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-30 18:56:51 +02:00 |
|
Kamil Śliwak
|
a331d4449d
|
Add linkersymbol() builtin to Yul EVM dialect
|
2020-06-24 15:06:52 +02:00 |
|
chriseth
|
af0cd4ab98
|
Merge pull request #9252 from ethereum/develop
Merge develop into breaking.
|
2020-06-23 18:28:24 +02:00 |
|
Alexander Arlt
|
86be0fbc2f
|
[ewasm] Fix infinite loops.
|
2020-06-23 12:35:03 +02:00 |
|
chriseth
|
71cb7551f4
|
Merge pull request #9208 from ethereum/develop
Merge develop into breaking.
|
2020-06-16 16:11:41 +02:00 |
|
Kamil Śliwak
|
06e1b38d1d
|
WasmCodeTransform: Convert Yul 'if's with i32 argument directly to wasm 'if' without an extra comparison with zero
|
2020-06-16 15:36:47 +02:00 |
|
Kamil Śliwak
|
d9ca02b47a
|
Enable translation of i32 Yul variables/literals to i32 wasm variables/literals
- Until now they were being translated to i64
|
2020-06-16 15:36:47 +02:00 |
|
chriseth
|
50e8d6850f
|
Remove wasm type conversions.
|
2020-06-16 15:36:42 +02:00 |
|
chriseth
|
5fdbb5c3e3
|
Simplify inline assembly resolver.
|
2020-06-15 18:10:18 +02:00 |
|
chriseth
|
8155ad2187
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-15 17:11:41 +02:00 |
|
Djordje Mijovic
|
33e7b24df0
|
Adding fixes for signedness conversion warnings in libyul
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
|
2020-06-12 10:39:30 +02:00 |
|
Kamil Śliwak
|
e67f5072df
|
Add support for generating code with i32 variables in text and binary wasm
|
2020-06-11 02:44:23 +02:00 |
|
Kamil Śliwak
|
6a82d32ef6
|
Add the ability to store variable types in wasm AST
|
2020-06-11 02:44:23 +02:00 |
|
Kamil Śliwak
|
840ff40263
|
Define wasm::Type enum and use it for import parameters and result
|
2020-06-11 02:44:23 +02:00 |
|
chriseth
|
6b3171c38b
|
Merge remote-tracking branch 'origin/develop' into breaking
|
2020-06-10 11:30:50 +02:00 |
|
Kamil Śliwak
|
edfbae0167
|
was/BinaryTransform: Remove unnecessary std:: prefixes from the .cpp file
|
2020-06-09 17:34:32 +02:00 |
|
Kamil Śliwak
|
b9ecccdece
|
wasm/BinaryTransform: Rename globals and functions to globalIDs and functionIDs
|
2020-06-09 17:29:34 +02:00 |
|
Kamil Śliwak
|
b2a8639c20
|
wasm/BinaryTransform: Make most of section generation stateless and pass global/function/type maps via parameters
|
2020-06-09 17:29:08 +02:00 |
|
Kamil Śliwak
|
adbd4be151
|
wasm/BinaryTransform: Make global/function/type maps constant
|
2020-06-09 17:26:00 +02:00 |
|
Kamil Śliwak
|
4b1ea93b41
|
wasm/BinaryTransform: Put code for enumerating globals/functions/types in separate functions
|
2020-06-09 17:26:00 +02:00 |
|
Christian Parpart
|
2af45c62c8
|
[Yul] Removed now disabled pc() from wasm backend.
|
2020-06-08 16:46:55 +02:00 |
|
Kamil Śliwak
|
fe0a0802b2
|
wasm/BinaryTransform: Fix wrong alignment for .load/.store with arguments smaller than 64-bits
|
2020-06-06 00:00:46 +02:00 |
|
Kamil Śliwak
|
976a0f9395
|
wasm/BinaryTransform: Don't add an empty local entry in binary wasm if there are no locals
|
2020-06-05 21:03:06 +02:00 |
|
Kamil Śliwak
|
c96196c346
|
Define constants to make flag meanings more apparent in binary wasm
|
2020-05-28 22:17:02 +02:00 |
|
chriseth
|
bd64e537cb
|
Fix implementation of leave.
|
2020-05-26 10:24:01 +02:00 |
|
Alex Beregszaszi
|
cfdfa36065
|
Rename wasm::Break(If) to wasm::Branch(If) for clarity
|
2020-05-21 00:02:02 +01:00 |
|
chriseth
|
84092edc5d
|
Merge pull request #8914 from random-internet-cat/down-with-unique-ptr
Down with unique_ptr!
|
2020-05-20 13:22:06 +02:00 |
|
chriseth
|
4e9f6c3508
|
Fix webassembly loops by adding explicit break at the end.
|
2020-05-19 22:16:16 +02:00 |
|
Jason Cobb
|
899e6d7e2b
|
Use optional for FunctionImport::returnType
|
2020-05-18 10:24:38 -04:00 |
|
chriseth
|
6308ca4a22
|
Binary transform for br and br_if.
|
2020-05-14 11:30:19 +02:00 |
|
chriseth
|
7da453014d
|
Fix source location of yul variable declarations without value.
|
2020-05-12 17:45:19 +02:00 |
|
Daniel Kirchner
|
c1ed5bbb0f
|
Update Dockerfiles and CI scripts to Ubuntu 20.04 and simplify them.
|
2020-05-11 17:35:01 +02:00 |
|
chriseth
|
6fb112fa8e
|
Remove some unneeded headers.
|
2020-05-07 01:49:46 +02:00 |
|
Mathias Baumann
|
debcc8c056
|
Add setimmutable and loadimmutable to dialect.
|
2020-05-04 15:00:50 +02:00 |
|
Alexander Arlt
|
aac7a1e434
|
Apply modernize-pass-by-value.
|
2020-04-14 10:32:13 -05:00 |
|
chriseth
|
a7a1feb1b8
|
Merge pull request #8626 from ethereum/immutable-functioncallgraph
Prepare literalArguments for immutable builtin functions
|
2020-04-09 15:46:02 +02:00 |
|