mingchuan
|
f705b09b21
|
Provide option to auto-correct cmdlineTests expectations
|
2019-04-08 20:39:49 +08:00 |
|
Leonardo Alt
|
4fe303530a
|
[SMTChecker] Show unsupported warning for asm blocks
|
2019-04-05 16:41:15 +02:00 |
|
chriseth
|
1be3882ade
|
Test shadowing between variables inside and outside of functions.
|
2019-04-05 13:41:39 +02:00 |
|
chriseth
|
d20b3c9f9f
|
Function grouper is a requirement for the VarNameCleaner.
|
2019-04-05 13:41:38 +02:00 |
|
Leonardo Alt
|
79d8a4e13a
|
[SMTChecker] Refactor VariableUsage
|
2019-04-05 11:38:37 +02:00 |
|
Mathias Baumann
|
a83e54cfd3
|
TestFramework: Use getBlockByNumber and eth_flush to get transaction confirmation
|
2019-04-04 16:39:15 +02:00 |
|
Mathias Baumann
|
58a3148ffb
|
TestFramework: also output failed request
|
2019-04-04 16:39:15 +02:00 |
|
chriseth
|
3df4936b6f
|
Merge pull request #6179 from ethereum/solidity-yul1
Solidity to Yul compiler
|
2019-04-04 16:33:39 +02:00 |
|
chriseth
|
50ded99b4d
|
Merge pull request #6470 from ethereum/throwInFuzzer
Throw exception to allow fuzzer to report which file it failed on.
|
2019-04-04 16:18:57 +02:00 |
|
chriseth
|
141c6da534
|
Semantic tests for compilation via Yul.
|
2019-04-04 15:02:43 +02:00 |
|
chriseth
|
420a7dc3d6
|
Initial IR generator.
|
2019-04-04 15:02:42 +02:00 |
|
Daniel Kirchner
|
d0fda7ca7c
|
Merge pull request #6262 from ethereum/abiEncodeCalldataArray
ABIEncoderV2: implement encoding of calldata arrays and structs.
|
2019-04-04 14:51:45 +02:00 |
|
chriseth
|
ef413bb0b3
|
Throw exception to allow fuzzer to report which file it failed on.
|
2019-04-04 14:05:38 +02:00 |
|
chriseth
|
3795569da6
|
Merge pull request #6448 from ethereum/forceYulOptimization
Run tests with both ABIV2 and Yul optimizer.
|
2019-04-04 13:51:54 +02:00 |
|
Bhargava Shastry
|
762dd24784
|
Reference only those variables that are in scope.
|
2019-04-04 13:28:56 +02:00 |
|
chriseth
|
c0ce540e26
|
Run tests with both ABIV2 and Yul optimizer.
|
2019-04-04 13:18:30 +02:00 |
|
Daniel Kirchner
|
91a2a9a9c3
|
Implement ABI encoding of calldata arrays and structs.
|
2019-04-04 13:05:32 +02:00 |
|
Bhargava Shastry
|
f15cedad7a
|
yulInterpreter: More fine-grained exception handling
|
2019-04-04 13:02:55 +02:00 |
|
chriseth
|
887112b1b0
|
Fix SSA for multi-assignments.
|
2019-04-04 12:06:04 +02:00 |
|
chriseth
|
8c570f31c5
|
Merge pull request #6442 from ethereum/smt_unary_inc_dec
[SMTChecker] Support unary inc/dec for array/mapping access
|
2019-04-04 11:45:13 +02:00 |
|
chriseth
|
ee2f566207
|
Merge pull request #5815 from ethereum/strict-abi-decoder
Strict abi decoder (validate incoming data instead of cleaning it)
|
2019-04-04 11:13:44 +02:00 |
|
Mathias Baumann
|
d46f29e128
|
Add bitshift optimizer tests
|
2019-04-03 22:38:31 +02:00 |
|
Daniel Kirchner
|
5ff1f85231
|
Adjust semantics tests.
|
2019-04-03 17:59:04 +02:00 |
|
chriseth
|
e3d7a34c2c
|
Make yul a setting.
|
2019-04-03 14:58:20 +02:00 |
|
chriseth
|
aeb260cde1
|
Add settings framework for interactive tests.
|
2019-04-03 14:58:20 +02:00 |
|
chriseth
|
3282c72a21
|
Update tests.
|
2019-04-03 11:32:03 +02:00 |
|
Alex Beregszaszi
|
43008dd08e
|
Validate value types in decoder of ABIEncoderV2.
|
2019-04-03 11:32:02 +02:00 |
|
chriseth
|
1b7878cfde
|
Merge pull request #6445 from ethereum/circularStorageMemoryCopy
Implemented copying recursive structs from storage to memory.
|
2019-04-03 10:20:23 +02:00 |
|
Leonardo Alt
|
aa9b9aa87e
|
[SMTChecker] Support unary inc/dec for array/mapping access
|
2019-04-02 16:53:19 +02:00 |
|
Daniel Kirchner
|
ab8dfed144
|
Implement copying recursive structs from storage to memory.
|
2019-04-02 16:01:44 +02:00 |
|
chriseth
|
7c880a26c0
|
Merge pull request #6431 from ethereum/external-tests-split
Split up external tests
|
2019-04-02 14:39:00 +02:00 |
|
Erik Kundt
|
79e74b75d1
|
Splits up external tests into separate files.
|
2019-04-02 13:42:58 +02:00 |
|
Bhargava Shastry
|
0cc6e1cb08
|
Use default EVMVersion instead of a hard coded one
|
2019-04-02 11:40:59 +02:00 |
|
chriseth
|
e894e0b967
|
Merge pull request #6410 from ethereum/eliminate-dead-code
Yul Optimizer: Remove dead code
|
2019-04-01 18:12:47 +02:00 |
|
chriseth
|
862ad28edd
|
Merge pull request #6433 from ethereum/fuzzhelp
Run several instances of solfuzzer in parallel
|
2019-04-01 17:49:58 +02:00 |
|
Mathias Baumann
|
3216e5d846
|
Run several instances of solfuzzer in parallel
|
2019-04-01 17:18:15 +02:00 |
|
Mathias Baumann
|
e20acf5d0a
|
Yul Optimizer: Remove dead code
|
2019-04-01 17:16:04 +02:00 |
|
Mathias Baumann
|
30820dda99
|
Support multiple input files with solfuzzer
|
2019-04-01 16:57:32 +02:00 |
|
chriseth
|
e7340f2126
|
Merge pull request #6430 from ethereum/fuzzhelp
Fix --help parameter for solfuzzer
|
2019-04-01 16:51:15 +02:00 |
|
Mathias Baumann
|
101ca5c120
|
Fix --help parameter for solfuzzer
the `readStandardInput()` branch would be taken if "input-file" was not
given and only "help", thus never reaching the check for "help"
|
2019-04-01 15:50:34 +02:00 |
|
chriseth
|
45e3cce765
|
Force-activate ABIEncoderV2 in external tests.
|
2019-04-01 15:36:03 +02:00 |
|
Erik Kundt
|
c72686b343
|
Fixes forced optimizer settings in external tests.
|
2019-04-01 14:53:21 +02:00 |
|
Mathias Baumann
|
5c66ccc179
|
Optimize obsolete ANDs in combination with certain SHIFTs
|
2019-03-29 10:08:05 +01:00 |
|
Alex Beregszaszi
|
84fbf605aa
|
Replace shifts by larger than 255 with 0
|
2019-03-29 10:07:54 +01:00 |
|
chriseth
|
f9820adb5e
|
Merge pull request #6396 from ethereum/optSetForAsmStack
Make optimiser settings available to assembly stack.
|
2019-03-28 19:03:23 +01:00 |
|
chriseth
|
84251e5a22
|
Merge pull request #6405 from ethereum/smt_compound_assignment
[SMTChecker] Support arithmetic compound assignment operators.
|
2019-03-28 18:27:25 +01:00 |
|
chriseth
|
3264e9abf0
|
Make optimiser settings available to assembly stack.
|
2019-03-28 18:24:13 +01:00 |
|
Leonardo Alt
|
dadafed022
|
Short circuit tests
|
2019-03-28 16:08:30 +01:00 |
|
Leonardo Alt
|
a7e826a224
|
[SMTChecker] Implement short circuit
|
2019-03-28 16:08:30 +01:00 |
|
chriseth
|
a1d59dfb4c
|
Merge pull request #6371 from ethereum/smt_variable_usage_function_calls
[SMTChecker] Merge SSA state vars properly
|
2019-03-28 15:54:31 +01:00 |
|
chriseth
|
30da62aa2c
|
Merge pull request #6408 from ethereum/includeCleanup
Include cleanup
|
2019-03-28 15:31:07 +01:00 |
|
Leonardo Alt
|
c7e5468505
|
Arithmetic compound assignment operators tests
|
2019-03-28 15:27:52 +01:00 |
|
chriseth
|
2b0c653f57
|
Merge pull request #6241 from ethereum/yul-bc-codegen
Yul codegen for break & continue statements
|
2019-03-28 14:48:50 +01:00 |
|
chriseth
|
20ae3ad555
|
Remove "using namespace".
|
2019-03-28 14:32:48 +01:00 |
|
Leonardo Alt
|
2764d2f525
|
Tests that used to give false negatives
|
2019-03-28 14:32:47 +01:00 |
|
chriseth
|
529aca5cbd
|
Merge pull request #6407 from ethereum/changeNamespace
Remove "using namespace" from header and move Instruction to dev::eth.
|
2019-03-28 14:32:07 +01:00 |
|
Christian Parpart
|
b8c6274179
|
[yul] Implements EVM codegen for break/continue plus respective tests & ChangeLog entry.
|
2019-03-28 14:09:25 +01:00 |
|
chriseth
|
2308904f68
|
Remove "using namespace" from header and move Instruction to dev::eth.
|
2019-03-28 13:48:11 +01:00 |
|
chriseth
|
6d8e84c93e
|
Merge pull request #6315 from ethereum/yul-for-continue-tests
[Yul] RedundantAssignEliminator adoptions for continue/break AST nodes
|
2019-03-28 12:18:02 +01:00 |
|
chriseth
|
ff1e5c2298
|
Merge pull request #6372 from ethereum/update-external-tests
Update external tests
|
2019-03-28 11:26:38 +01:00 |
|
Erik Kundt
|
3e6de8904b
|
Reactivates external gnosis-safe tests.
|
2019-03-28 10:31:08 +01:00 |
|
Erik Kundt
|
7808af79ae
|
Modularize external test setup.
|
2019-03-28 10:31:03 +01:00 |
|
chriseth
|
91f96c299e
|
More logic about control flow with continue and about finalize. Remove BlockScope.
|
2019-03-27 22:16:31 +01:00 |
|
Bhargava Shastry
|
10c3b31fa4
|
yulInterpreter: Add timeout based on the number of interpreted statements.
|
2019-03-27 12:06:02 +01:00 |
|
Christian Parpart
|
a1ec49409d
|
Yul] RedundantAssignEliminator: Implements break/continue handling within ForLoop.
|
2019-03-26 17:36:43 +01:00 |
|
Bhargava Shastry
|
b3c3a1f9cd
|
Use visitor pattern for proto converter.
|
2019-03-26 16:39:44 +01:00 |
|
chriseth
|
72c0e44907
|
Merge pull request #6338 from ethereum/compilerstack-setsource
Introduce setSources in CompilerStack
|
2019-03-26 15:31:57 +01:00 |
|
Bhargava Shastry
|
ef94d6d645
|
yul Interpreter: Move memory size limit to interpreter state.
|
2019-03-26 14:42:25 +01:00 |
|
Bhargava Shastry
|
a895ccba39
|
ossfuzz: Enable optimization in Assembly stack assembler call.
|
2019-03-26 13:42:51 +01:00 |
|
Mathias Baumann
|
bfe3f378b2
|
Fix throw in error output
|
2019-03-26 11:32:08 +01:00 |
|
chriseth
|
d079cdbfaa
|
Merge pull request #6362 from ethereum/fixABIEncoderV2StorageRead
Fix abi encoder v2 storage read
|
2019-03-26 10:23:08 +01:00 |
|
Alex Beregszaszi
|
e211b5b1e1
|
Add warning that Yul is still experimental
|
2019-03-25 20:17:11 +00:00 |
|
Alex Beregszaszi
|
0432401e20
|
Emit warning when using the Yul optimiser
|
2019-03-25 18:38:06 +01:00 |
|
chriseth
|
6b9c44d5f9
|
Tests for arrays.
|
2019-03-25 18:28:44 +01:00 |
|
chriseth
|
3039456f48
|
Tests for encoder from storage bug.
|
2019-03-25 18:28:43 +01:00 |
|
Alex Beregszaszi
|
3ee8bb6814
|
Use setSource in tests
|
2019-03-25 15:11:08 +00:00 |
|
Mathias L. Baumann
|
dce27bb452
|
Merge pull request #6370 from ethereum/more-info-after-ci-fail
Provide more info when CI fails
|
2019-03-25 16:08:16 +01:00 |
|
Mathias Baumann
|
e478115d26
|
Provide more info when CI fails
|
2019-03-25 15:16:03 +01:00 |
|
Alex Beregszaszi
|
76c3c54c12
|
Merge pull request #6360 from ethereum/split-imports-test
Split imports tests to avoid resetting CompilerStack
|
2019-03-25 13:15:38 +00:00 |
|
chriseth
|
caddce6ef0
|
Detect duplicate cases based on integer value of case label.
|
2019-03-25 12:38:22 +01:00 |
|
Alex Beregszaszi
|
d9303d4cfb
|
Split imports tests to avoid resetting CompilerStack
|
2019-03-25 11:33:21 +00:00 |
|
chriseth
|
b17daee20e
|
Merge pull request #6358 from ethereum/fixLLLTests
Fix LLL tests.
|
2019-03-25 11:49:53 +01:00 |
|
chriseth
|
31fa51b1f8
|
Fix LLL tests.
|
2019-03-25 10:53:49 +01:00 |
|
Alex Beregszaszi
|
532d43e0c8
|
Exclude metadata in compiler test
In SolidityCompiler/does_not_include_creation_time_only_internal_functions.
|
2019-03-22 17:35:15 +00:00 |
|
Alex Beregszaszi
|
3bc2c35cc4
|
Support compiling Yul within StandardCompiler
|
2019-03-22 01:35:16 +00:00 |
|
Alex Beregszaszi
|
ed1ad2fc14
|
Merge pull request #6317 from ethereum/byte_optimization_bugfix
Fixes bug in byte optimization rule and adds tests.
|
2019-03-21 21:49:34 +00:00 |
|
Alex Beregszaszi
|
7d94d3af20
|
Merge pull request #6309 from ethereum/proto-add-str-hex-lit
yul proto: Add support for generating string and hex literals.
|
2019-03-21 21:47:58 +00:00 |
|
Alex Beregszaszi
|
cbbc2df506
|
Merge pull request #6351 from ethereum/smt_shortcircuit_test
[SMTChecker] Add buggy short circuit test
|
2019-03-21 21:24:51 +00:00 |
|
Leonardo Alt
|
2ae778bf0a
|
[SMTChecker] Add buggy short circuit test
|
2019-03-21 18:47:14 +01:00 |
|
chriseth
|
2de5554e4a
|
Fix MacOS commandline tests.
|
2019-03-21 18:19:05 +01:00 |
|
Bhargava Shastry
|
f7b5a27581
|
Fixes bug in byte optimization rule and adds tests.
|
2019-03-21 14:29:06 +01:00 |
|
Bhargava Shastry
|
d1d3dd8571
|
yul proto: Add support for generating string and hex literals.
|
2019-03-21 12:25:52 +01:00 |
|
chriseth
|
d381e26fc8
|
Rename "enabled" optimizer setting stage to "standard".
|
2019-03-21 11:04:40 +01:00 |
|
chriseth
|
51ae865b96
|
Merge pull request #6222 from ethereum/internal-error-maybe
Disallow internal function types as parameters for public/external library function
|
2019-03-21 09:18:23 +01:00 |
|
chriseth
|
ebb8c1758e
|
Merge pull request #6339 from ethereum/lll-test-fix
Fix LLL tests using the opimiser
|
2019-03-21 08:54:07 +01:00 |
|
Mathias Baumann
|
8e899a0d32
|
Disallow internal function types as parameters for public/external library function
|
2019-03-21 07:25:57 +01:00 |
|
Alex Beregszaszi
|
7ec3eaa40d
|
Fix LLL tests using the opimiser
|
2019-03-20 19:21:24 +00:00 |
|
Bhargava Shastry
|
22f5a82edc
|
yul proto: Add support for generating for and switch statements.
|
2019-03-20 18:50:27 +00:00 |
|
chriseth
|
064f73be0c
|
Merge pull request #6249 from ethereum/optimizerTests
Change optimizer tests so that they also always test the peephole optimizer.
|
2019-03-20 18:38:06 +01:00 |
|
chriseth
|
9aab2329ed
|
Merge pull request #6244 from ethereum/smt_modifiers
[SMTChecker] Support modifiers
|
2019-03-20 18:04:28 +01:00 |
|
chriseth
|
6ac0ee1751
|
Merge pull request #5946 from bshastry/yul_opt_ossfuzz
Adds an oss-fuzz harness to fuzz AssemblyStack API calls for parsing …
|
2019-03-20 16:26:56 +01:00 |
|
chriseth
|
d788a88873
|
Use "none" and "full" optimizer settings in the optimizer tests.
|
2019-03-20 16:11:37 +01:00 |
|
chriseth
|
2fd6661b09
|
Add tests for some optimizer rules.
|
2019-03-20 16:10:59 +01:00 |
|
chriseth
|
8468dca0bb
|
Merge pull request #6323 from ethereum/bug-637
Fix function calls with named arguments for overloaded functions
|
2019-03-20 16:07:09 +01:00 |
|
Bhargava Shastry
|
6c1d0b62b5
|
Adds oss-fuzz harnesses to fuzz AssemblyStack API calls for parsing/optimizing StrictAssembly and generating EVM bytecode.
|
2019-03-20 16:06:45 +01:00 |
|
chriseth
|
57f99247c8
|
Update tests.
|
2019-03-20 15:07:05 +01:00 |
|
chriseth
|
8514c0bc60
|
Provide max iterations for stack compressor as parameter.
|
2019-03-20 15:07:05 +01:00 |
|
chriseth
|
38cbf8d230
|
Pass "optimize stack allocation" flag down to the stack compressor.
|
2019-03-20 15:03:27 +01:00 |
|
Mathias Baumann
|
84b68006ba
|
Fix function calls with named arguments for overloaded functions
|
2019-03-20 14:54:41 +01:00 |
|
Leonardo Alt
|
9659f40c8d
|
[SMTChecker] Support modifiers
|
2019-03-20 11:32:20 +01:00 |
|
chriseth
|
4d89fc1644
|
Merge pull request #6320 from ethereum/callvalue_nonpayable
Inline Assembly: Issue error for callvalue in nonpayable function
|
2019-03-20 10:07:09 +01:00 |
|
Leonardo Alt
|
0386d39942
|
Add test with internal function
|
2019-03-19 20:45:27 +01:00 |
|
Leonardo Alt
|
9acec99c31
|
Issue error for callvalue in nonpayable function
|
2019-03-19 20:45:27 +01:00 |
|
chriseth
|
87ebb16890
|
Use ABI_CHECK for event data comparison.
|
2019-03-19 17:23:50 +01:00 |
|
chriseth
|
304ef77b4a
|
Merge pull request #6300 from ethereum/extractedTestsEVMVersionRules
Support EVM Version rules for extracted tests.
|
2019-03-18 15:29:04 +01:00 |
|
Daniel Kirchner
|
a178486436
|
Review suggestions.
|
2019-03-18 14:34:00 +01:00 |
|
Christian Parpart
|
82ced641e5
|
[Yul] Adds another test case for multiple continue statements within a for-loop
|
2019-03-18 12:43:20 +01:00 |
|
chriseth
|
834c23fc38
|
Merge pull request #6289 from ethereum/strictasm_fuzzer_ascii_only
Discard fuzz input containing non ASCII character(s).
|
2019-03-18 11:44:06 +01:00 |
|
Bhargava Shastry
|
725fc898fd
|
Discard fuzz input containing at least one character not in the following set: "isprint"able, newline, and horizontal
Co-Authored-By: bshastry <bshastry@ethereum.org>
|
2019-03-18 10:36:43 +01:00 |
|
Daniel Kirchner
|
4a28e1eb43
|
Support EVM Version rules for extracted tests.
|
2019-03-15 17:23:20 +01:00 |
|
Bhargava Shastry
|
5e8ed426df
|
Add more binary operations to the yul proto spec.
|
2019-03-14 22:26:25 +01:00 |
|
chriseth
|
500843f9c5
|
Merge pull request #6242 from ethereum/yul-bc-dataflow
Yul dataflow analysis for continue/break statements
|
2019-03-14 16:34:34 +01:00 |
|
Christian Parpart
|
57bcb8ba83
|
[yul] Ensures DataFlowAnalyzer works fine with break/continue statements just like without.
|
2019-03-14 16:18:45 +01:00 |
|
chriseth
|
85a0d6a334
|
Merge pull request #6118 from ethereum/useStackOpt
Use stack optimizations.
|
2019-03-14 15:58:47 +01:00 |
|
chriseth
|
a3fbbe2019
|
Merge pull request #6291 from ethereum/proto-bugfixes
Proto spec and translator bug fixes.
|
2019-03-14 15:54:29 +01:00 |
|
Bhargava Shastry
|
5681086d2c
|
Proto spec and translator bug fixes.
|
2019-03-14 15:40:54 +01:00 |
|
chriseth
|
308e3ef1cd
|
Add test for standard compiler.
|
2019-03-14 15:34:23 +01:00 |
|
chriseth
|
49d914a391
|
Fix and test yul stack optimization flag for commandline interface.
|
2019-03-14 15:34:23 +01:00 |
|
chriseth
|
6d1ed93247
|
Use stack optimizations.
|
2019-03-14 15:34:23 +01:00 |
|
Erik Kundt
|
b9a7a88346
|
Improves Result<T> in order to prevent defects.
|
2019-03-14 14:33:28 +01:00 |
|
Erik Kundt
|
6ac5c52528
|
Implements merging of Result<T>.
|
2019-03-14 14:33:28 +01:00 |
|
chriseth
|
d1d6d59c80
|
Merge pull request #6281 from ethereum/fixYulAssertion
Fix assertion in yul interpreter.
|
2019-03-14 11:22:51 +01:00 |
|
Erik Kundt
|
ac5f860df9
|
Fixes hex string update via isoltest.
|
2019-03-14 11:01:26 +01:00 |
|
chriseth
|
db379403fc
|
Fix assertion in yul interpreter.
|
2019-03-13 20:58:15 +01:00 |
|
Erik Kundt
|
2a536911f2
|
Prints returned / expected byte ranges if conversion failed.
|
2019-03-13 17:45:02 +01:00 |
|
chriseth
|
55c66b0178
|
Fix gas costs.
|
2019-03-13 14:18:53 +01:00 |
|
chriseth
|
2896d6176b
|
Merge pull request #6120 from ethereum/soltest-hex-strings
[soltest] Add support for hex string literals
|
2019-03-13 14:12:32 +01:00 |
|
Erik Kundt
|
25ddf85d95
|
Adds support for hex string literals in soltest.
|
2019-03-13 12:37:33 +01:00 |
|
chriseth
|
58a3f3cf68
|
Merge pull request #6248 from ethereum/shiftopt-fix-overflow
Fixes u256 overflow in logical shift optimization rule and adds tests.
|
2019-03-13 12:02:33 +01:00 |
|
Bhargava Shastry
|
515fa872c8
|
Fixes u256 overflow in logical shift optimization rule and adds tests.
|
2019-03-13 11:19:20 +01:00 |
|
Erik Kundt
|
39c45ac8ed
|
Moves ecrecover tests to isoltest.
|
2019-03-13 10:53:10 +01:00 |
|
Christian Parpart
|
cfefa2c1d1
|
Merge pull request #6136 from ethereum/yul-break-continue
[Yul] introduce break/continue keywords.
|
2019-03-11 20:38:57 +01:00 |
|
chriseth
|
8445449c7f
|
Merge pull request #6187 from ethereum/filter-library-abi-3409
Exclude internal functions in library ABIs
|
2019-03-11 17:39:51 +01:00 |
|
chriseth
|
6683ec90ca
|
Merge pull request #6209 from ethereum/dynamicCalldataStructs
Allow dynamically encoded calldata structs with ABIEncoderV2.
|
2019-03-11 17:05:34 +01:00 |
|
Daniel Kirchner
|
66fc7ffab2
|
Allow dynamically encoded calldata structs with ABIEncoderV2.
|
2019-03-11 16:40:13 +01:00 |
|
Mathias Baumann
|
fbbd03dbd7
|
Exclude internal functions in library ABIs
|
2019-03-11 16:33:44 +01:00 |
|
Mathias Baumann
|
e411a502fd
|
Fix missing trailing dot in error message
|
2019-03-11 16:15:18 +01:00 |
|
Daniel Kirchner
|
f805939429
|
Merge pull request #6221 from ethereum/soltest-signature-struct-arrays
[soltest] Allow struct array in function signatures
|
2019-03-11 15:32:42 +01:00 |
|
Alex Beregszaszi
|
859f905b2e
|
Merge pull request #6237 from ethereum/smt_merkle_proof_test
[SMTChecker] Add MerkleProof test that used to crash
|
2019-03-11 15:17:46 +01:00 |
|
Christian Parpart
|
05e2d362c8
|
[Yul] Adds break/continue statements and some general tests for for-loop syntax.
|
2019-03-11 15:05:05 +01:00 |
|
chriseth
|
0f98f2a15e
|
Merge pull request #6236 from ethereum/better-errors
isImplicitlyConvertibleTo(): Add better error messages
|
2019-03-11 14:58:45 +01:00 |
|
Erik Kundt
|
cd9c0914cb
|
Allows struct array in soltest function.
|
2019-03-11 14:36:16 +01:00 |
|
Alex Beregszaszi
|
6718b62f94
|
Merge pull request #6233 from ethereum/metadata-tests
Improve metadata tests (add CBOR parser)
|
2019-03-11 14:35:04 +01:00 |
|
Leonardo Alt
|
365b59b1f9
|
Add MerkleProof test that used to crash
|
2019-03-11 14:29:47 +01:00 |
|
Mathias Baumann
|
d70cb375cf
|
isImplicitlyConvertibleTo(): Add better error messages
|
2019-03-11 13:38:02 +01:00 |
|
Alex Beregszaszi
|
67c15a208d
|
Use CBOR parser in metadata tests
|
2019-03-11 13:01:37 +01:00 |
|
Alex Beregszaszi
|
61220eb3e0
|
Add tiny CBOR parser
|
2019-03-11 13:01:37 +01:00 |
|
Leonardo Alt
|
a8209e9899
|
[SMTChecker] Shortcut RationalNumber expressions
|
2019-03-11 12:53:49 +01:00 |
|
Alex Beregszaszi
|
12f34c8229
|
Add onlyMetadata helper in test/Metadata
|
2019-03-09 12:34:26 +01:00 |
|
chriseth
|
5c4a3aa270
|
Merge pull request #6213 from ethereum/iszeroJump
Peephole optimizer for "iszero iszero <tag> jumpi".
|
2019-03-07 18:16:29 +01:00 |
|
chriseth
|
0eb799424d
|
Merge pull request #6183 from ethereum/soltest-alignment
[soltest] Introduce explicit alignment
|
2019-03-07 17:43:59 +01:00 |
|
chriseth
|
e0d1b2f5b3
|
Peephole optimizer for "iszero iszero <tag> jumpi".
|
2019-03-07 15:52:02 +01:00 |
|
Leonardo Alt
|
02d0e609b9
|
[SMTChecker] Support enums
|
2019-03-07 15:15:12 +01:00 |
|
chriseth
|
7241aa755c
|
Merge pull request #6186 from ethereum/runExternalTestsWithOptimizer
Run external tests with and without optimizer.
|
2019-03-07 12:57:03 +01:00 |
|
chriseth
|
8d9be8bb6d
|
Merge pull request #6211 from ethereum/fixFormatting
Fix formatting and compilation error.
|
2019-03-06 22:55:02 +01:00 |
|
chriseth
|
553f578d03
|
Fix compilation error.
|
2019-03-06 22:01:19 +01:00 |
|
chriseth
|
791fde953d
|
First simplify switch with known constant expression.
|
2019-03-06 21:32:55 +01:00 |
|
chriseth
|
aa062221bb
|
Tabs, not spaces!
|
2019-03-06 21:32:10 +01:00 |
|
chriseth
|
0f336f30ca
|
Merge pull request #6207 from ethereum/fixStructuralVisitationOrder
Fix visitation order bug for structural simplifier.
|
2019-03-06 21:29:17 +01:00 |
|
chriseth
|
0f7b1b31a1
|
Merge pull request #5996 from ethereum/calldataArrays
Allow calldata arrays with dynamically encoded base type.
|
2019-03-06 19:55:57 +01:00 |
|
chriseth
|
21115f8050
|
Fix visitation order bug for structural simplifier.
|
2019-03-06 19:34:07 +01:00 |
|
Mathias Baumann
|
21322dae29
|
YulOpt: Remove empty cases
|
2019-03-06 19:02:23 +01:00 |
|
Mathias Baumann
|
3ce7069766
|
YulOpt: Remove empty cases
|
2019-03-06 18:39:44 +01:00 |
|
Erik Kundt
|
a40fbf0fc4
|
Right-aligns hex numbers and introduces alignment built-ins.
|
2019-03-06 18:24:13 +01:00 |
|
chriseth
|
3ccf73b3eb
|
Merge pull request #6204 from ethereum/soltest-signature-arrays
[soltest] Add support for arrays in function signatures
|
2019-03-06 18:12:39 +01:00 |
|
Daniel Kirchner
|
e3148b5c45
|
Tests for arrays with dynamically encoded base types.
|
2019-03-06 18:04:24 +01:00 |
|
Daniel Kirchner
|
f9dc30c3d1
|
Add generalized dynamic array encoding to ExecutionFramework.
|
2019-03-06 18:04:12 +01:00 |
|
Daniel Kirchner
|
f7c6eda2c3
|
Allow calldata arrays with dynamically encoded base type.
|
2019-03-06 18:04:12 +01:00 |
|
chriseth
|
cdf29277f7
|
Merge pull request #6055 from ethereum/smt_arrays
[SMTChecker] Add support to arrays
|
2019-03-06 18:00:23 +01:00 |
|
Erik Kundt
|
ab31c28ed9
|
Adds support for arrays in function signatures.
|
2019-03-06 16:47:00 +01:00 |
|
chriseth
|
dc69152238
|
Merge pull request #6143 from ethereum/fix-unimplemented-assert-5659
Check base contracts for abi encoder compatibility
|
2019-03-06 11:59:49 +01:00 |
|
Bhargava Shastry
|
54d0d153fa
|
Reduce input file size for solc and constant optimizer fuzzers.
|
2019-03-06 11:35:22 +01:00 |
|
Leonardo Alt
|
29b2ab6f66
|
Handle aliasing
|
2019-03-06 11:29:54 +01:00 |
|
Leonardo Alt
|
cb6c2b33f8
|
Add tests
|
2019-03-06 11:29:26 +01:00 |
|
Leonardo Alt
|
e74f58130e
|
Add SMT type support to Solidity arrays
|
2019-03-06 11:29:26 +01:00 |
|
Mathias Baumann
|
9919670ddd
|
Check base contracts for abi encoder compatibility
|
2019-03-06 11:16:54 +01:00 |
|
chriseth
|
4740dc62df
|
Merge pull request #6193 from ethereum/yul-opt-different-types-6181
YulOpt: Extend StructuralSimplifier to work with all types
|
2019-03-05 19:11:13 +01:00 |
|
Mathias Baumann
|
f6e09d6368
|
YulOpt: Extend StructuralSimplifier to work with all types
|
2019-03-05 18:39:27 +01:00 |
|
Mathias Baumann
|
921d52bfcd
|
Move Literal to u256 conversions to extra functions
That way we can reuse them at different places
|
2019-03-05 18:39:27 +01:00 |
|
Bhargava Shastry
|
a370551ea2
|
ossfuzz: Reduce test input size to less than equal to 600 bytes.
|
2019-03-05 16:55:55 +01:00 |
|
chriseth
|
d70da689ef
|
Run external tests with and without optimizer.
|
2019-03-05 14:53:36 +01:00 |
|
Bhargava Shastry
|
d9bcbe6ad5
|
LibProtobuf Mutator (LPM) based fuzzer for yul subset
|
2019-03-05 12:32:55 +01:00 |
|
chriseth
|
d0ab5454f8
|
Merge pull request #6171 from ethereum/ignorePrefixWhileInlining
Do not prepend function name to all variables when inlining.
|
2019-03-05 11:36:53 +01:00 |
|
chriseth
|
bbda89c428
|
Create a differential fuzzer using tracing facility from the yul interpreter.
|
2019-03-04 20:44:17 +01:00 |
|
chriseth
|
6c9961e040
|
Merge pull request #5941 from ethereum/metadata-compilerstack
Metadata should not require compilation
|
2019-03-04 18:53:07 +01:00 |
|
chriseth
|
2d48377f4b
|
Merge pull request #6157 from ethereum/allocate-memory
Add allocateMemory helper with value known at compile time
|
2019-03-04 18:35:04 +01:00 |
|
chriseth
|
3f784d6e00
|
Do not prepend function name to all variables when inlining.
|
2019-03-04 18:07:00 +01:00 |
|
chriseth
|
38831e885d
|
Merge pull request #5855 from ethereum/cp
[Yul] Variable Name Canonicalization
|
2019-03-04 17:58:45 +01:00 |
|
Alex Beregszaszi
|
a96cc6e0e8
|
Add allocateMemory helper with value known at compile time
|
2019-03-04 17:46:42 +01:00 |
|
Christian Parpart
|
609855546e
|
Yul: Adds optimizer pass to make variable names suffix-canonical.
|
2019-03-04 17:26:56 +01:00 |
|
chriseth
|
62b2599cb7
|
Update tests.
|
2019-03-04 16:31:08 +01:00 |
|
Alex Beregszaszi
|
fcbb8ec51c
|
Allow returning metadata in StandardCompiler without compilation
|
2019-03-04 16:19:55 +01:00 |
|
chriseth
|
9a949c1bda
|
Set default EVM version to Petersburg.
|
2019-03-04 14:53:00 +01:00 |
|
Alex Beregszaszi
|
ecd246aeb6
|
Support petersburg in evmVersion
|
2019-03-04 14:10:41 +01:00 |
|
chriseth
|
2e0ea16a0f
|
Merge pull request #5959 from ethereum/optimiser2
Introduce global optimiser settings.
|
2019-03-04 12:54:59 +01:00 |
|
chriseth
|
5490a5cd37
|
Merge pull request #6115 from ethereum/fixUnavailableOpcodes
Make unavailable opcodes errors.
|
2019-03-04 12:26:22 +01:00 |
|
chriseth
|
43850d55f3
|
Update tests.
|
2019-03-04 11:44:54 +01:00 |
|
chriseth
|
851dd635eb
|
Remove defaults in constructor arguments.
|
2019-03-04 11:41:52 +01:00 |
|
chriseth
|
5ddbc434d6
|
Provide commandline option to activate yul optimizer.
|
2019-03-04 11:40:28 +01:00 |
|
chriseth
|
4d10f4b4cf
|
Process and validate standard-json optimizer settings.
|
2019-03-04 11:40:28 +01:00 |
|
Alex Beregszaszi
|
cf5c13f9c7
|
Introduce global optimiser settings.
|
2019-03-04 11:40:28 +01:00 |
|
chriseth
|
0e475438a9
|
Merge pull request #6142 from ethereum/yul_interpreter_fix_overflow
yulInterpreter: Fix u256 overflow in logMemory.
|
2019-02-28 23:29:14 +01:00 |
|
chriseth
|
8f5e12c192
|
Make unavailable opcodes errors.
|
2019-02-28 22:20:01 +01:00 |
|
Alex Beregszaszi
|
c3ab43dca7
|
Remove blockhash workaround in tests
This is now obsolete as final constantinople doesn't contain the blockhash EIP.
Revert 3e55aa3fa2 .
|
2019-02-28 21:17:58 +00:00 |
|
Bhargava Shastry
|
c48cc19fae
|
yulInterpreter: Fix u256 overflow in logMemory.
|
2019-02-28 16:42:50 +01:00 |
|
chriseth
|
ab33ff1408
|
Merge pull request #6132 from ethereum/ossfuzz-nullref-typechecker
TypeChecker: Check if type exists before dereferencing it
|
2019-02-28 16:38:54 +01:00 |
|
chriseth
|
3dee9c50cd
|
Merge pull request #6131 from ethereum/fix-yul-opt
Yul Optimizer: reduce switches with const arguments
|
2019-02-28 16:28:53 +01:00 |
|
Mathias Baumann
|
50b4193705
|
TypeChecker: Check if type exists before dereferencing it
|
2019-02-28 15:49:15 +01:00 |
|
Mathias Baumann
|
c686a65876
|
Yul Optimizer: reduce switches with const arguments
|
2019-02-28 15:43:10 +01:00 |
|
chriseth
|
6aab3b1369
|
Merge pull request #6139 from ethereum/compilerstack-restrict
Restrict the state when settings can be altered in CompilerStack
|
2019-02-28 14:52:52 +01:00 |
|
Alex Beregszaszi
|
8b6049b733
|
Merge pull request #6111 from ethereum/fuzz-crash-smt
Fix SMT Checker crash due to missing type information
|
2019-02-28 13:19:32 +00:00 |
|
Alex Beregszaszi
|
b04b86a938
|
Restrict the state when settings can be altered in CompilerStack
|
2019-02-28 12:55:36 +00:00 |
|
chriseth
|
e9543d83c7
|
Merge pull request #6129 from ethereum/expressionSimplifierToUseDataFlowAnalyzer
Fix expression simplifying by moving from SSAValueTracker to DataFlowAnalyzer as a base.
|
2019-02-28 12:21:41 +01:00 |
|
Mathias Baumann
|
f782125463
|
Fix SMT Checker crash due to missing type information
|
2019-02-28 11:55:45 +01:00 |
|
chriseth
|
4f7f3bf689
|
Merge pull request #6113 from ethereum/positionalArgForYulRun
Allow positional arguments for yulrun.
|
2019-02-27 16:24:04 +01:00 |
|
chriseth
|
477c53a46f
|
Fix expression simplifying by moving from SSAValueTracker to DataFlowAnalyzer as a base.
|
2019-02-27 16:14:39 +01:00 |
|
Erik Kundt
|
9d6ffb7c0f
|
Adds a workaround for truffle npm issue.
|
2019-02-27 12:37:53 +01:00 |
|
chriseth
|
77a3d08a87
|
Merge pull request #6104 from ethereum/useCorrectSolcjs
Use correct solcjs binary for testing.
|
2019-02-27 11:49:02 +01:00 |
|
chriseth
|
5123a2afa7
|
Allow positional arguments for yulrun.
|
2019-02-27 11:44:09 +01:00 |
|
Erik Kundt
|
e13bb994fb
|
Fix ambiguous type on Windows.
|
2019-02-27 10:40:58 +01:00 |
|
chriseth
|
514c9910aa
|
Fix implementation of signextend.
|
2019-02-26 17:56:32 +01:00 |
|
chriseth
|
ebec54aacb
|
Merge pull request #6093 from ethereum/mapping-string-keys
Allow dynamic types in public mappings
|
2019-02-26 17:05:18 +01:00 |
|
chriseth
|
4e74c508ce
|
Merge pull request #6089 from ethereum/extcodehash
Consider extcodehash as part of Constantinople
|
2019-02-26 17:04:01 +01:00 |
|
Mathias Baumann
|
e4a52aa2f6
|
Allow dynamic types in public mappings
|
2019-02-26 15:48:54 +01:00 |
|
chriseth
|
aba879f39f
|
Use correct solcjs binary for testing.
|
2019-02-26 15:10:58 +01:00 |
|
Alex Beregszaszi
|
d2f493268b
|
Provide access to the name of contracts.
|
2019-02-26 14:07:03 +00:00 |
|
Alex Beregszaszi
|
cb7b053a4a
|
Consider extcodehash as part of Constantinople
|
2019-02-26 12:40:31 +00:00 |
|
chriseth
|
38fc740690
|
Merge pull request #6080 from ethereum/library-index-access
Disallow index access on contracts and libraries
|
2019-02-26 13:26:05 +01:00 |
|
Alex Beregszaszi
|
758537b274
|
Add test for returning string literal in LLL
|
2019-02-25 23:59:52 +00:00 |
|
Erik Kundt
|
3076d80480
|
Adds syntax test that covers arrays of contracts.
|
2019-02-25 23:05:33 +00:00 |
|
Erik Kundt
|
2d0daae796
|
Disallows index access on contracts and libraries.
|
2019-02-25 23:05:33 +00:00 |
|
Alex Beregszaszi
|
a498062816
|
Fix gas test after using shifts in constant optimiser
|
2019-02-25 19:44:47 +00:00 |
|
chriseth
|
7a2645f7d2
|
Merge pull request #6079 from ethereum/shift-tests
Add more test cases for shifts with constants
|
2019-02-25 16:28:06 +01:00 |
|
Erik Kundt
|
e4182e2add
|
Fixes wrong EVMVersion namespace in yulrun.
|
2019-02-25 15:56:17 +01:00 |
|
Alex Beregszaszi
|
7d52884247
|
Add more test cases for shifts with constants
|
2019-02-25 14:44:30 +00:00 |
|
chriseth
|
70bbdd8fac
|
Merge pull request #3464 from ethereum/iulia_interp
Yul interpreter
|
2019-02-25 15:38:41 +01:00 |
|
Leonardo Alt
|
2405b2151a
|
EVMVersion in langutil namespace instead of solidity
|
2019-02-25 15:29:57 +01:00 |
|
chriseth
|
94e2afff81
|
Rebase update.
|
2019-02-25 14:30:34 +01:00 |
|
chriseth
|
cc88c517a2
|
Review changes.
|
2019-02-25 11:58:37 +01:00 |
|
Bhargava Shastry
|
d564c24f30
|
POP is actually a valid instruction.
|
2019-02-25 11:58:37 +01:00 |
|