chriseth
d3b53ee394
Make bool type optional for bool literals.
2020-01-29 19:01:28 +01:00
chriseth
a66782537a
Use old yul dialect only in tests.
2020-01-29 19:01:28 +01:00
chriseth
d07dd55096
Update wasm tests.
2020-01-29 17:25:25 +01:00
chriseth
23667ce12d
Update Yul optimizer tests.
2020-01-29 17:25:25 +01:00
chriseth
e7b95de315
Tests for default type parsing.
2020-01-29 17:25:25 +01:00
chriseth
fbe5bb0cce
Parse default dialect and omit when printing.
2020-01-29 17:25:25 +01:00
chriseth
e41155cf48
Merge pull request #8062 from imapp-pl/polyfill-part-2
...
Arithmetic functions implementation for EVM->EWasm translator.
2020-01-29 17:22:27 +01:00
chriseth
457cdecf6f
Merge pull request #8135 from ethereum/fix-get-options-7112
...
TestFramework: Merge Options.h into Common.h
2020-01-29 16:05:55 +01:00
Mathias L. Baumann
5130a2b0ae
Merge pull request #8063 from ethereum/yulvisit-7656
...
Use yul::AstWalker for assembly reference resolving
2020-01-29 14:56:19 +01:00
Mathias Baumann
00e4d13975
TestFramework: Merge Options.h into Common.h
2020-01-29 12:27:05 +01:00
chriseth
a788ba14f3
Merge pull request #8173 from ethereum/fix-7859
...
yul proto fuzzer: Add EVM version field
2020-01-28 22:14:25 +01:00
chriseth
35820398c2
Merge pull request #8179 from pinkiebell/codegen
...
libsolidity/codegen: Use calldatacopy to cheaply zero memory..
2020-01-28 18:07:30 +01:00
Mathias Baumann
b8e2baf5f4
Use yul::AstWalker to resolve assembly symbols
2020-01-28 17:57:48 +01:00
Mathias Baumann
2f1f8e25c1
TestFramework: Remove headers from Options.h
2020-01-28 17:29:22 +01:00
rodiazet
f1004e712c
[WASM] Add div, sdiv, mod, smod, exp, lt, sar, addmod, mulmod, signextend
2020-01-28 13:32:43 +01:00
Mathias Baumann
1027f6f78f
Extract some semantic tests
2020-01-28 11:59:44 +01:00
Bhargava Shastry
8cbe1d4b1d
yul proto fuzzer: Make function call generation optional
2020-01-24 12:31:43 +05:30
Bhargava Shastry
a335fed189
yul proto fuzzer: Add EVM version field
2020-01-24 12:31:20 +05:30
chriseth
790c6d2cae
Tests for salted create.
2020-01-23 21:20:01 +01:00
chriseth
2fa586beac
Test that uses function call options on overloaded function.
2020-01-23 21:20:01 +01:00
Mathias Baumann
a3f23d3158
Implement new with CREATE2 and function call options.
2020-01-23 21:20:01 +01:00
chriseth
679f729f2f
Implement create2 for evmhost.
2020-01-23 21:20:01 +01:00
pinkiebell
bb6fb675e0
libsolidity/codegen: Use calldatacopy to cheaply zero memory instead of
...
codecopy.
Motiviation:
Zero'ing memory is commonplace in contracts, but with the upcoming
Layer-2 EVM translation layers and other on-chain verification
mechanisms, using `codecopy` becomes a `costly` operation in those
sandboxes. Using `calldatacopy` achieves the same thing, gas costs
are also the same as codecopy, and is significantly cheaper in the `sandbox` situation.
2020-01-22 17:56:56 +01:00
Jason Cobb
595f569e97
Update tests for interface inheritance
2020-01-22 09:40:40 -05:00
Jason Cobb
573a054d5d
Prohibit interfaces inheriting from non-interfaces
2020-01-22 09:40:40 -05:00
chriseth
1b19524036
Merge pull request #8150 from ethereum/isoltest-alignment-output
...
[isoltest] Proper output of alignment in obtained test results
2020-01-20 12:38:12 +01:00
Bhargava Shastry
9befb4bdf0
yul proto fuzzer: Do not generate infinite for loops and limit total
...
number of for loops per test program to two
2020-01-20 16:27:01 +05:30
chriseth
470c19eb8c
Merge pull request #8165 from imapp-pl/yulopti-missing-step
...
yulopti: Add missing ConditionalUnsimplifier step
2020-01-20 11:45:29 +01:00
Alex Beregszaszi
004f01a388
Add test case for gas metering of exp(n, 0)
2020-01-17 14:24:55 +01:00
cameel
bf5e62931d
fixup! [yulopti] Fix typo: (f)flatten -> (f)latten
2020-01-17 12:38:45 +01:00
cameel
49ca1f8534
[yulopti] Add missing ConditionalUnsimplifier to the list of available optimizations
2020-01-17 08:01:39 +01:00
cameel
4262eebdc4
[yulopti] Fix typo: (f)flatten -> (f)latten
2020-01-17 08:01:31 +01:00
Daniel Kirchner
ee5ff4df4e
Clean up visibility via contract name and fix ICE on calling unimplemented base function.
2020-01-16 19:13:04 +01:00
Alex Beregszaszi
4d8758fcc3
Remove operator~ from FixedHash
2020-01-16 17:18:03 +00:00
Alex Beregszaszi
3c88d295b3
Remove FixedHash(unsigned) constructor
2020-01-16 16:18:08 +00:00
Erik Kundt
ae67cbde7d
Fixes missing alignment output in isoltest.
2020-01-15 18:18:16 +01:00
chriseth
c017072bac
Merge pull request #8013 from ethereum/warnings
...
Enable more warnings in the build system
2020-01-15 18:00:14 +01:00
chriseth
5fb8e76931
Merge pull request #8136 from imapp-pl/polyfill-mstore8
...
mstore8 polyfill
2020-01-15 17:02:40 +01:00
Alex Beregszaszi
eafcb42be7
Enable more compiler warnings in the build system
...
"-pedantic -Wno-unknown-pragmas -Wimplicit-fallthrough"
2020-01-15 14:33:27 +00:00
chriseth
6ab8802601
Merge pull request #8132 from ethereum/drop-lll
...
Remove the LLL compiler
2020-01-15 15:15:22 +01:00
Alex Beregszaszi
9c19b93c37
Remove LLL specific features from libevmasm
2020-01-15 13:27:51 +00:00
chriseth
ed87b08911
Merge pull request #8066 from ethereum/removeAsmFlavour
...
Remove asm flavour
2020-01-15 14:21:54 +01:00
Alex Beregszaszi
1ee4b9dc3b
Remove the LLL compiler
2020-01-15 13:18:18 +00:00
rodiazet
3760e90582
[WASM] mstore8 function implementation added.
2020-01-15 14:06:43 +01:00
chriseth
9d9a7ebe25
Merge pull request #7765 from ethereum/fix-7626
...
yul proto fuzzer: permit variable declarations inside for-init block
2020-01-15 11:21:23 +01:00
chriseth
0149220e0d
Merge pull request #8140 from nventuro/patch-1
...
Fix error message suggestion for receive
2020-01-14 23:36:09 +01:00
Nicolás Venturo
9649c92e12
Fix error message suggestion for receive
2020-01-14 23:24:27 +01:00
Mathias Baumann
21611f6b6f
Add test for incorrect evm version when importing an ast tree
2020-01-14 18:42:43 +01:00
chriseth
b3fe84a6ea
Merge pull request #7153 from djudjuu/newImportAST
...
import ast from JSON
2020-01-14 17:56:53 +01:00
chriseth
0f014144c8
Test for true/false in inline assembly.
2020-01-14 17:16:09 +01:00
chriseth
123ea0a250
Remove asm flavour.
2020-01-14 17:16:09 +01:00
djudjuu
e8556fa1b2
Ast-Import from standard-json
2020-01-14 17:15:53 +01:00
Mathias Baumann
adc4774d4a
ASTJSON: Export evm version
2020-01-14 12:51:21 +01:00
Christian Parpart
abb9f1eed7
CMake: Renaming devcore static library to solutil (to match source code paths)
2020-01-13 15:52:46 +01:00
Bhargava Shastry
49a05b5935
Permit variable declarations inside for init block
2020-01-13 16:17:33 +05:30
chriseth
a4e34b378a
Merge pull request #8105 from ethereum/functionTypeRefactor
...
Add a new Function Type referring to FunctionDefinition's without calling context and use it to allow selector lookup.
2020-01-09 17:15:46 +01:00
Daniel Kirchner
9535c0f520
Introduce FunctionKind::Declaration and allow accessing function signatures via contract name.
2020-01-09 15:40:41 +01:00
Daniel Kirchner
b845595cbd
Ignore empty options to (i)soltest
2020-01-09 14:49:11 +01:00
chriseth
5ca3abd7cb
Merge pull request #8106 from random-internet-cat/move-contract-kind
...
Move ContractKind from ContractDefinition to file-scope
2020-01-08 13:06:26 +01:00
chriseth
e81e73345e
Merge pull request #8112 from ethereum/fixIndent
...
[tiny PR] Fix indentation in test/tools/CMakeLists.txt
2020-01-08 11:44:06 +01:00
Daniel Kirchner
61652366ab
Fix indentation
2020-01-08 10:42:19 +01:00
chriseth
b5bd4787af
Merge pull request #7801 from ethereum/tuneRemat
...
Tune rematerializer
2020-01-08 10:41:32 +01:00
rodiazet
b8c59c56e0
[WASM] Add keccak256, balance, extcodecopy, blockhash, coinbase, log's, call, callcode, delegatecall, staticcall
2020-01-08 10:08:36 +01:00
chriseth
40c0602b5c
Do not rematerialize in loops.
2020-01-08 09:56:08 +01:00
chriseth
25d3f27c11
Tune Rematerializer
2020-01-08 09:56:08 +01:00
chriseth
d1a7ff0fbc
Merge pull request #8008 from ethereum/large-code
...
Issue warning if codesize exceeds EIP-170 limits
2020-01-08 09:48:59 +01:00
Daniel Kirchner
70a2902714
Merge pull request #8100 from ethereum/deadTestArguments
...
Disallow dead positional arguments for (i)soltest
2020-01-07 16:56:10 +01:00
Daniel Kirchner
be0775da49
Merge pull request #8075 from ethereum/refactor-namespaces
...
Refactor namespaces
2020-01-07 16:52:20 +01:00
Mathias L. Baumann
a2141d3be2
Merge pull request #7869 from fulldecent/fix-kill
...
Reduce usage of word kill
2020-01-07 16:01:04 +01:00
Christian Parpart
345f9928ab
Library libdevcore renamed to libsolutil.
2020-01-07 15:51:50 +01:00
Christian Parpart
8ac6258d31
lll: Adapted to namespace changes.
2020-01-07 15:51:50 +01:00
Christian Parpart
ed45b000d1
Adapt tests directory to C++ namespace changes.
2020-01-07 15:51:50 +01:00
Christian Parpart
6b23412fae
C++ namespace cleanup (except tests).
2020-01-07 15:51:50 +01:00
Jason Cobb
529405deb6
Move ContractKind from ContractDefinition to file-scope
2020-01-07 09:11:29 -05:00
William Entriken
6d068b6331
Reduce usage of the word "kill"
2020-01-07 11:18:10 +01:00
Bhargava Shastry
49aec64caf
abiv2 proto converter: Do not resize dynamic storage arrays by writing to the length field as it is now read only
2020-01-06 17:44:42 +01:00
Daniel Kirchner
3e714913a0
Disallow positional arguments for (i)soltest instead of ignoring
2020-01-06 15:28:20 +01:00
Leonardo Alt
d972a10b4f
Review 1
2020-01-02 12:43:56 +01:00
chriseth
3994c9135f
Tests.
2019-12-29 15:53:47 +01:00
Alex Beregszaszi
4d791b2679
Issue warning if codesize exceeds EIP-170 limits
2019-12-25 19:51:35 +01:00
Alex Beregszaszi
9c27e98b83
Rename EWasmBuiltinInterpreter to EwasmBuiltinInterpreter
2019-12-19 11:36:08 +00:00
Alex Beregszaszi
65e59ecd06
Rename EWasm/ewasm/eWasm to Ewasm
2019-12-19 11:36:08 +00:00
Alex Beregszaszi
8511012e95
Merge pull request #8060 from ethereum/yul-interp-fix
...
Fix getExternalCodeSize in the Yul Ewasm interpreter
2019-12-18 23:14:48 +00:00
Alex Beregszaszi
4cebe66f8c
Merge pull request #8059 from ethereum/dialectForOpt
...
Dialect setting for yul optimizer tests.
2019-12-18 22:56:35 +00:00
Alex Beregszaszi
47a8e5fbd1
Fix getExternalCodeSize in the Yul Ewasm interpreter
2019-12-18 22:54:34 +00:00
chriseth
1e59c19166
Dialect setting for yul optimizer tests.
2019-12-18 21:54:30 +01:00
rodiazet
d867f5339b
[WASM] add i64.clz and i64.store8 to Wasm dialect and EWasm interpreter.
...
dsads
2019-12-18 19:51:27 +01:00
Alex Beregszaszi
7effc94f24
Rename EVMToEWasmTranslator to EVMToEwasmTranslator
2019-12-18 16:57:45 +00:00
Alex Beregszaszi
7d3ccee921
Fix implementation of getCodeSize in Ewasm
2019-12-18 14:58:28 +00:00
Alex Beregszaszi
b3caf35e88
Change writeU256/writeU128/writeAddress not to return anything in Yul Ewasm interpreter
2019-12-18 14:58:28 +00:00
Alex Beregszaszi
9f1e8086bb
Fix returning code size in Yul Ewasm interpreter
2019-12-18 14:58:28 +00:00
chriseth
b74f357c5e
Merge pull request #8051 from ethereum/yul-interp-log
...
Fix tracing LOG instruction in the Yul Ewasm interpreter
2019-12-18 15:08:06 +01:00
Alex Beregszaszi
7d60cc1729
Fix tracing LOG instruction in the Yul Ewasm interpreter
2019-12-18 13:35:05 +00:00
rodiazet
7d8c4c24ee
Add arithmetic test cases for most of EVM->Ewasm translator
2019-12-18 13:58:03 +01:00
chriseth
4b026fa633
Update gas costs.
2019-12-18 01:41:32 +01:00
chriseth
b6fc703a27
Merge remote-tracking branch 'origin/release' into HEAD
2019-12-17 19:47:59 +01:00
chriseth
85a503725c
Merge pull request #8015 from ethereum/yul-trace-unreachable
...
Add trace for unreachable in Yul Ewasm translation tests
2019-12-17 17:42:44 +01:00
chriseth
244b011a30
More test cases.
2019-12-17 17:08:27 +01:00
chriseth
143471fe87
Tests.
2019-12-17 15:47:32 +01:00
chriseth
bdd338a8de
Merge pull request #7921 from ghallak/func-selector-ast-json
...
Add function selector to FunctionDefinition AST JSON
2019-12-16 14:07:35 +01:00