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 |
|
chriseth
|
0e471ab811
|
Review comments.
|
2019-02-25 11:58:37 +01:00 |
|
chriseth
|
5eb155b894
|
Interpreter tests.
|
2019-02-25 11:58:36 +01:00 |
|
chriseth
|
e91be8222c
|
Yul interpreter executable.
|
2019-02-25 11:57:48 +01:00 |
|
chriseth
|
0c432a861c
|
Yul interpreter.
|
2019-02-25 11:57:48 +01:00 |
|
chriseth
|
8aeebf7fcd
|
Merge pull request #6071 from ethereum/moveEVMVersionToEVMDialect
Make EVM version part of EVM dialect.
|
2019-02-25 11:56:53 +01:00 |
|
Erik Kundt
|
f683ceb3f8
|
Adds support for boolean literals in soltest.
|
2019-02-21 23:28:48 +01:00 |
|
chriseth
|
7f5b335b47
|
Make EVM version part of EVM dialect.
|
2019-02-21 21:59:46 +01:00 |
|
chriseth
|
773a3ff880
|
Merge pull request #6036 from ethereum/soltest-hexliterals
[soltest] Add support for left-aligned hex literals
|
2019-02-21 19:11:27 +01:00 |
|
chriseth
|
13667d42ec
|
Merge pull request #6067 from ethereum/asm-parser-fatal
Do not ignore fatal error in AsmParser for inline assembly
|
2019-02-21 18:12:13 +01:00 |
|
Alex Beregszaszi
|
fcf884f201
|
Do not ignore fatal error in AsmParser for inline assembly
|
2019-02-21 16:18:53 +00:00 |
|
chriseth
|
6a1e339b9d
|
Merge pull request #6068 from ethereum/fix-no-color
Fix isoltest --no-color option
|
2019-02-21 17:08:10 +01:00 |
|
Erik Kundt
|
d40928f5fc
|
Adds support for hex literals in soltest.
|
2019-02-21 17:04:40 +01:00 |
|
chriseth
|
98012135c6
|
Merge pull request #6060 from ethereum/soltest-formatting
[soltest] Create dedicated formatting
|
2019-02-21 16:43:50 +01:00 |
|
Mathias Baumann
|
7a40088d95
|
Fix isoltest --no-color option
|
2019-02-21 16:42:23 +01:00 |
|
Erik Kundt
|
d1ad431887
|
Moves soltest function call to separate class.
|
2019-02-21 16:39:31 +01:00 |
|
chriseth
|
15d275ed37
|
Merge pull request #6023 from ethereum/assignment-whitespace-op
Add extra token for assembly assignment
|
2019-02-21 14:43:29 +01:00 |
|
chriseth
|
52df027afe
|
Merge pull request #6063 from ethereum/stackCompressorBuiltin
Take builtin functions into account in the compilability checker.
|
2019-02-21 14:40:56 +01:00 |
|
Mathias Baumann
|
1672902abb
|
Unify isoltest and soltest options code
Also provide a default value for ipc-path, which is the same one as aleth uses.
|
2019-02-21 14:04:39 +01:00 |
|
Mathias Baumann
|
f395d5bab4
|
Add extra token for assembly assignment
Adding an extra token for := prevents whitespace between : = being valid
|
2019-02-21 13:58:21 +01:00 |
|
Mathias Baumann
|
8b342cbe6a
|
Use Boost::Program_Options in soltest
|
2019-02-21 13:30:09 +01:00 |
|
Mathias Baumann
|
f4110b295b
|
Use env variable to get IPC path for isoltest
|
2019-02-21 13:27:24 +01:00 |
|
chriseth
|
27d936cf44
|
Merge pull request #5102 from ethereum/abiencoderv2-tests
Run all end-to-end tests with ABIEncoderV2
|
2019-02-21 13:11:06 +01:00 |
|
chriseth
|
947215a901
|
Take builtin functions into account in the compilability checker.
|
2019-02-21 12:13:42 +01:00 |
|
chriseth
|
8ace2c5b11
|
Special treatment for differences between ABI encoders.
|
2019-02-21 11:11:29 +00:00 |
|
Erik Kundt
|
6c7ad42e2d
|
Shares langutil code with soltest.
|
2019-02-21 01:04:34 +01:00 |
|
Alex Beregszaszi
|
219406f45b
|
Add CLI option to soltest to always use ABIEncoderV2
|
2019-02-20 16:55:19 +01:00 |
|
chriseth
|
b14d22d11e
|
Tests for events with structs in libraries.
|
2019-02-20 14:35:02 +01:00 |
|
chriseth
|
0613c69c4a
|
Merge pull request #6043 from ethereum/asm-jump-invalidlabel
Proper error message for missing variables in inline assembly
|
2019-02-20 14:32:40 +01:00 |
|
chriseth
|
fcd82025de
|
Merge pull request #6046 from ethereum/smt_division_tests
[SMTChecker] Move tests that contain division to boost tests
|
2019-02-20 14:29:15 +01:00 |
|
Leonardo Alt
|
123d0857c5
|
[SMTChecker] Move tests that contain division to boost tests
|
2019-02-20 12:17:03 +01:00 |
|
Alex Beregszaszi
|
687522a2f5
|
Move inline assembly tests from nameAndTypeResolution to inlineAssembly
|
2019-02-20 11:00:02 +00:00 |
|
Alex Beregszaszi
|
52496ea719
|
Proper error message for missing variables in inline assembly
|
2019-02-20 10:36:55 +00:00 |
|
Mathias Baumann
|
a63f7ca9df
|
Fix crash due to missing type info
|
2019-02-19 17:28:44 +01:00 |
|
chriseth
|
d9e4a10d5a
|
Merge pull request #6000 from ethereum/fixECRecoverABIV2
Fixed internal error related to ecrecover and ABIEncoderV2.
|
2019-02-19 14:36:08 +01:00 |
|
chriseth
|
874648b924
|
Merge pull request #5999 from ethereum/smt_lazy_overflow
[SMTChecker] Check for under/overflow in the end of the function
|
2019-02-19 14:28:55 +01:00 |
|
chriseth
|
05541e5adb
|
Fixed internal error related to ecrecover and ABIEncoderV2.
|
2019-02-19 14:17:03 +01:00 |
|
chriseth
|
d5791fef41
|
Fix combination of delegatecall and ABIEncoderV2.
We can set the flag to false for bare delegatecall, because we always
send a memory string and never a storage reference.
|
2019-02-19 13:57:03 +01:00 |
|
chriseth
|
55c4131a03
|
Merge pull request #6030 from ethereum/fixABIEncoderV2Mapping
Allow cleanup for mappings (do nothing).
|
2019-02-19 13:56:21 +01:00 |
|
Leonardo Alt
|
34470f3549
|
[SMTChecker] Only check for overflow/underflow in the end of the function
|
2019-02-18 23:55:58 +01:00 |
|
Alex Beregszaszi
|
2949bd14dd
|
Merge pull request #6028 from ethereum/warn-about-unused-struct-array-expr
Detect custom type expressions that have no effect
|
2019-02-18 21:12:04 +00:00 |
|
Mathias Baumann
|
e3d4155fa8
|
Detect custom type expressions that have no effect
|
2019-02-18 18:59:31 +01:00 |
|
chriseth
|
c690f679cb
|
Allow cleanup for mappings (do nothing).
|
2019-02-18 18:50:22 +01:00 |
|
chriseth
|
968ca88690
|
Merge pull request #5872 from ethereum/semantic-tests-split
Semantic test infrastructure
|
2019-02-18 18:13:55 +01:00 |
|
chriseth
|
1b6d87c5bd
|
Merge pull request #5979 from ethereum/fix-context-for-hint
Make sure "value" error hint is only displayed in the right context
|
2019-02-18 17:35:31 +01:00 |
|
chriseth
|
e88765f936
|
Merge pull request #6022 from ethereum/fixFunctionScoping
Properly detect name clashes with functions before their definition.
|
2019-02-18 16:47:21 +01:00 |
|
Mathias Baumann
|
ee9394b4aa
|
Move 'warnUnused' tests to subfolder
|
2019-02-18 16:42:58 +01:00 |
|
Mathias Baumann
|
093b9ced97
|
Make sure "value" error hint is only displayed in the right context
Before, the hint would be shown for any "value" member, even a user-specified one.
|
2019-02-18 16:29:57 +01:00 |
|
chriseth
|
cb0ad2266c
|
Merge pull request #6008 from ethereum/smt_fix_abstract_assignment
[SMTChecker] Assert type is not function when assigning
|
2019-02-18 14:54:20 +01:00 |
|
chriseth
|
b4cd2d6a93
|
Properly detect name clashes with functions before their definition.
|
2019-02-18 14:51:05 +01:00 |
|
chriseth
|
db7b38e3c4
|
Merge pull request #5978 from ethereum/fix-broken-hint
Fix error msg hint for non-payable contracts
|
2019-02-18 11:49:07 +01:00 |
|
Erik Kundt
|
dacad629ef
|
Adds semantic tests to test framework and isoltest.
|
2019-02-15 13:27:15 +01:00 |
|
Mathias Baumann
|
419a12db03
|
TypeChecker: Add test to increase coverage
|
2019-02-14 13:41:33 +01:00 |
|
Leonardo Alt
|
22cdfb18d4
|
[SMTChecker] Assert type is not function when assigning
|
2019-02-14 13:32:56 +01:00 |
|
Mathias Baumann
|
10a9960eb3
|
Fix error msg hint for non-payable contracts
|
2019-02-14 11:39:19 +01:00 |
|
chriseth
|
b1df990a0f
|
Merge pull request #5990 from ethereum/provideAccessToAssmeblyAST
Provide access to assembly ast
|
2019-02-13 17:38:22 +01:00 |
|
chriseth
|
c5879589af
|
Merge pull request #5998 from ethereum/codingStyleCheck
More coding style checks
|
2019-02-13 17:36:34 +01:00 |
|
chriseth
|
17817dc0ef
|
Merge pull request #5995 from ethereum/incr-type-checker-cov
Add tests to increase TypeChecker.cpp coverage
|
2019-02-13 17:06:58 +01:00 |
|
chriseth
|
1a823f0bf8
|
Fix tabs/spaces.
|
2019-02-13 17:05:48 +01:00 |
|
chriseth
|
17ea467e5b
|
Fix style of "const".
|
2019-02-13 16:34:53 +01:00 |
|
Mathias Baumann
|
1e603c27ea
|
Add tests to increase TypeChecker.cpp coverage
|
2019-02-13 16:31:26 +01:00 |
|
chriseth
|
3a3ed1c6b5
|
Fix assertion concerning jumps in strict assembly.
|
2019-02-13 15:57:14 +01:00 |
|
Mathias Baumann
|
6a6cc27b71
|
Rename & move tests of group typeChecking to subfolder
|
2019-02-13 15:52:31 +01:00 |
|
chriseth
|
a344381d5e
|
Provide access to AssemblyStack's AST.
|
2019-02-13 14:19:56 +01:00 |
|
Erik Kundt
|
190634e1f9
|
Implements infrastructure for semantic tests.
|
2019-02-13 13:05:58 +01:00 |
|
chriseth
|
0bd049c849
|
Adapet uses of AssemblyStack.
|
2019-02-13 12:23:07 +01:00 |
|
chriseth
|
9ab72f0188
|
Merge pull request #5971 from ethereum/overloadedEvents
More tests for overloaded events.
|
2019-02-12 12:00:02 +01:00 |
|
Bhargava Shastry
|
7751fa740f
|
Ensure we fail gracefully when user tries to optimize Yul code
|
2019-02-12 11:21:02 +01:00 |
|
chriseth
|
091bbdb459
|
More tests for overloaded events.
|
2019-02-12 10:54:58 +01:00 |
|
chriseth
|
0b392fff7e
|
Merge pull request #5968 from ethereum/calldataArrays
Disallow calldata arrays with dynamically encoded base types in TypeChecker.
|
2019-02-11 18:08:10 +01:00 |
|
Daniel Kirchner
|
9e32aa7510
|
Disallow calldata arrays with dynamically encoded base types in TypeChecker.
|
2019-02-11 17:13:12 +01:00 |
|
chriseth
|
91d224dfb6
|
Merge pull request #5966 from ethereum/AnsiColorized
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:41:14 +01:00 |
|
chriseth
|
92cb6cb793
|
Merge pull request #5936 from ethereum/calldataStructsV2
ABIEncoderV2: Implement calldata structs without dynamically encoded members.
|
2019-02-11 16:18:27 +01:00 |
|
chriseth
|
18c7ad08a0
|
Merge pull request #5925 from ethereum/stackCompressor
Stack compressor
|
2019-02-11 16:17:47 +01:00 |
|
Christian Parpart
|
53f9be8a23
|
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:00:24 +01:00 |
|
chriseth
|
83083d2208
|
Stack compressor.
|
2019-02-11 15:48:29 +01:00 |
|
chriseth
|
5a34743d88
|
Allow optimizer steps to run on FunctionDefinition and group suite.
|
2019-02-11 15:48:29 +01:00 |
|
chriseth
|
b34e104173
|
Make dialect a shared pointer.
|
2019-02-11 15:48:29 +01:00 |
|
Mathias Baumann
|
259d803387
|
Conditional Expression: Delay invalid type fatal error
Check the whole conditional first and then output errors for
both, the true and false expressions.
|
2019-02-11 15:47:19 +01:00 |
|
Mathias Baumann
|
08977af843
|
Rename & move test to move away from number prefix
|
2019-02-11 15:47:19 +01:00 |
|
Daniel Kirchner
|
0e4912a203
|
ABIEncoderV2: Implement calldata structs without dynamically encoded members.
|
2019-02-11 15:46:58 +01:00 |
|
chriseth
|
94607011dc
|
Merge pull request #5965 from ethereum/fixSolcjsTests
Use master branch from solc-js for tests
|
2019-02-11 15:46:09 +01:00 |
|
chriseth
|
b5a2c66771
|
Merge pull request #5957 from ethereum/function-param-fix
Ensure function parameter names always matches parameter types length
|
2019-02-11 15:45:28 +01:00 |
|
chriseth
|
d099d55c66
|
Use master branch from solc-js.
|
2019-02-11 15:29:58 +01:00 |
|
Mathias Baumann
|
66b24225fb
|
Remove duplicate if-check
|
2019-02-11 14:56:57 +01:00 |
|
chriseth
|
49cd55d3a0
|
Merge pull request #5839 from ethereum/inplaceEncoding
Inplace and non-padded encoding for ABIEncoderV2.
|
2019-02-11 12:01:28 +01:00 |
|
Mathias Baumann
|
fe2429de9f
|
Packed Encoding: Disallow types in v2 that aren't allowed in v1
|
2019-02-11 11:37:48 +01:00 |
|
chriseth
|
227addfcef
|
Syntax tests.
|
2019-02-11 11:37:48 +01:00 |
|
chriseth
|
7684d886ae
|
Semantic tests.
|
2019-02-11 11:37:47 +01:00 |
|
Mathias Baumann
|
feae01f042
|
Add tests to increase coverage of TypeChecker
|
2019-02-11 11:23:56 +01:00 |
|
Mathias Baumann
|
d41ffd1dcf
|
Rename & move tests to get rid of old number prefix in name
|
2019-02-11 11:23:20 +01:00 |
|
Daniel Kirchner
|
9203363fe9
|
Merge pull request #5860 from ethereum/test-file-parser
Test file parser.
|
2019-02-07 19:02:13 +01:00 |
|
Mathias Baumann
|
ee28cb65a6
|
Add tests to increase coverage of TypeChecker
|
2019-02-06 20:45:30 +01:00 |
|
Erik Kundt
|
c9c4578023
|
Adds support for tuples in test file parser.
|
2019-02-06 17:25:40 +01:00 |
|
Erik Kundt
|
161b22bd13
|
Cleans up test file parser and its tests.
|
2019-02-06 17:22:40 +01:00 |
|
Erik Kundt
|
7fa167977b
|
Adds multi-line support for test file parser.
|
2019-02-06 17:22:40 +01:00 |
|
Erik Kundt
|
f90c6f57bb
|
Implements a test file parser.
|
2019-02-06 17:22:40 +01:00 |
|
chriseth
|
231cec56c6
|
Merge pull request #5926 from ethereum/inv-num-crash
Fix crash for too large struct array indicies
|
2019-02-06 14:11:25 +01:00 |
|
Mathias Baumann
|
9f431339ef
|
Fix crash for too large struct array indicies
|
2019-02-06 11:50:25 +01:00 |
|
Alex Beregszaszi
|
532c55acbd
|
Add better sanity check to test/Metadata
|
2019-02-05 23:13:21 +00:00 |
|
Alex Beregszaszi
|
43ccc75293
|
Remove duplicated code in test/Metadata
|
2019-02-05 23:13:17 +00:00 |
|
Alex Beregszaszi
|
26de5684a2
|
Move bytecodeSansMetadata(bytes) helper to test/Metadata
|
2019-02-05 23:13:01 +00:00 |
|
Alex Beregszaszi
|
be22032141
|
Clean up some includes in tests
|
2019-02-05 22:58:43 +00:00 |
|
Alex Beregszaszi
|
3cdcd06b66
|
Add last test case for callbacks in libsolc
|
2019-02-05 20:26:47 +00:00 |
|
chriseth
|
263eaaa516
|
Merge pull request #5937 from ethereum/libsolc-callback-test
Add test cases for libsolc with callbacks
|
2019-02-05 21:11:44 +01:00 |
|
chriseth
|
438e19aa0f
|
Merge pull request #5931 from ethereum/fix-mapping-storage-check
Fix check that mappings can only have storage location
|
2019-02-05 21:03:20 +01:00 |
|
Alex Beregszaszi
|
257dbf1f6a
|
Add test cases for libsolc with callbacks
|
2019-02-05 19:34:56 +00:00 |
|
Alex Beregszaszi
|
e9a0d99218
|
Add optimiser test for triggering CopyMethod in ConstantOpimiser
|
2019-02-05 18:44:53 +00:00 |
|
Mathias Baumann
|
77f407d450
|
Fix check that mappings can only have storage location
|
2019-02-05 18:06:42 +01:00 |
|
chriseth
|
d7e2838702
|
Merge pull request #5904 from bshastry/ossfuzz-dict
Add fuzzer config files for oss-fuzz and a solidity fuzzing dictionary
|
2019-02-04 19:17:39 +01:00 |
|
chriseth
|
22c8d74a8a
|
Store all stack errors before they are thrown.
|
2019-02-04 17:32:05 +01:00 |
|
chriseth
|
77baf6caf7
|
Compilability checker.
|
2019-02-04 17:32:05 +01:00 |
|
Bhargava Shastry
|
4cac45dc4a
|
Add fuzzer config files for oss-fuzz and a solidity fuzzing dictionary.
Update ossfuzz README.md.
|
2019-02-04 15:58:41 +01:00 |
|
chriseth
|
bb46e91677
|
Merge pull request #5891 from ethereum/const-opt-assembly
Take only Assembly instance as an input to ConstantOptimiser
|
2019-01-31 18:54:12 +01:00 |
|
Alex Beregszaszi
|
ae1cd252b0
|
Take only Assembly instance as an input to ConstantOptimiser
|
2019-01-31 16:02:29 +00:00 |
|
Alex Beregszaszi
|
554511b68e
|
Introduce solidity_free in libsolc
|
2019-01-31 15:53:55 +00:00 |
|
Alex Beregszaszi
|
b1cb949a4b
|
Shutdown IPC socket gracefully in RPCSession
|
2019-01-31 13:16:35 +00:00 |
|
chriseth
|
ddab3f06a5
|
Merge pull request #5907 from ethereum/rpcsession-check-id
Check message identifier in RPCSession
|
2019-01-31 13:36:37 +01:00 |
|
Alex Beregszaszi
|
8e2de02fc2
|
Format RPCSession parsing error more nicely
|
2019-01-30 13:34:40 +00:00 |
|
Alex Beregszaszi
|
e1780e3ae8
|
Check message identifier in RPCSession
|
2019-01-30 12:57:25 +00:00 |
|
chriseth
|
35483422f3
|
Pad code to multiple of 32 bytes.
|
2019-01-30 11:31:28 +01:00 |
|
Alex Beregszaszi
|
1276f3c4f3
|
Clean up includes in the fuzzer
|
2019-01-29 16:14:51 +00:00 |
|
Alex Beregszaszi
|
0e2b43e141
|
Pass by reference in fuzzer
|
2019-01-29 16:14:48 +00:00 |
|
Alex Beregszaszi
|
c537321309
|
Add more debuggin in the fuzzer
|
2019-01-29 16:08:25 +00:00 |
|
chriseth
|
e8d918c4ee
|
Merge pull request #5887 from ethereum/fuzzer-optim
Fix fuzzer_common to keep assembly intact
|
2019-01-28 17:24:28 +01:00 |
|
Alex Beregszaszi
|
c19afd5ad3
|
Fix fuzzer_common to keep assembly intact
|
2019-01-28 16:18:49 +00:00 |
|
Alex Beregszaszi
|
9aafa32825
|
Disallow empty import statements
|
2019-01-28 13:52:15 +00:00 |
|
Alex Beregszaszi
|
2fc7928697
|
Merge pull request #5864 from ethereum/tuneOptOrder
Some optimizer tuning.
|
2019-01-28 13:50:09 +00:00 |
|
Alex Beregszaszi
|
06998bc8e1
|
Run constant optimiser on fresh inputs in the fuzzer
|
2019-01-28 10:40:33 +00:00 |
|
chriseth
|
12e2187661
|
Some tuning.
|
2019-01-24 23:06:01 +01:00 |
|
chriseth
|
2e7274b49d
|
Merge pull request #5837 from ethereum/fixCalldataEncodedSize
Fix reported packed encoded size.
|
2019-01-24 13:10:27 +01:00 |
|
chriseth
|
14b553897e
|
Tests.
|
2019-01-23 11:13:24 +01:00 |
|
Bhargava Shastry
|
24b1de7df0
|
This PR refactors and shares oss-fuzz specific test harness code with the afl fuzzer harness. ChangeLog updated.
|
2019-01-23 11:06:25 +01:00 |
|
chriseth
|
ea292393a3
|
Merge pull request #5838 from maxsam4/useLiteralContent-patch
useLiteralContent data validation
|
2019-01-23 10:35:32 +01:00 |
|
Mudit Gupta
|
2f91781a80
|
useLiteralContent data validation
Squashed commit of the following:
commit bbceee6997c1b951eb6054f7d5b7560fe1773690
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 23:27:49 2019 +0530
Removed extra check
commit 4f7c3cc58e94836b1dddcc5f2938da14adad6252
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:51:05 2019 +0530
Updated test error message
commit 5da45f2a23840e7bb1978853e1c184faec65b3e0
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:46:09 2019 +0530
Renamed test
commit e661418deac25f31c49091be3c80244f566fc14c
Author: Leonardo <leo@ethereum.org>
Date: Tue Jan 22 17:41:56 2019 +0530
Update libsolidity/interface/StandardCompiler.cpp
Co-Authored-By: maxsam4 <guptamudit@ymail.com>
commit d289b4dc1956ab736aada613e810cf2e2d124d4d
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:29:40 2019 +0530
changed style
commit 5a7cf08db3027d75081d2e698dd51b807bef5abb
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:20:37 2019 +0530
Added test case for missing useLiteralContent
commit 6e866c46aa92d6a89f2b341bd717c3886946f3ff
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:09:30 2019 +0530
input check for useLiteralContent
|
2019-01-23 10:22:27 +05:30 |
|
Alex Beregszaszi
|
028bc7d20a
|
Only replace solc-js copies in directories present during externalTests
|
2019-01-22 17:03:24 +00:00 |
|
Alex Beregszaszi
|
a52de117ea
|
Do not use fork of openzeppelin anymore
|
2019-01-22 16:38:17 +00:00 |
|
chriseth
|
faa66983ae
|
Use v0.5.0 tag of solc-js repository for external tests.
|
2019-01-22 10:03:35 +01:00 |
|
Leonardo Alt
|
7f8ceaadab
|
[SMTChecker] Clear state knowledge after external function calls
|
2019-01-21 12:58:40 +01:00 |
|
chriseth
|
f8e9aed839
|
Merge pull request #5717 from ethereum/smt_typecast
[SMTChecker] Support basic typecast without truncation
|
2019-01-21 12:35:07 +01:00 |
|
Daniel Kirchner
|
610ef9f199
|
Disallow calldata structs.
|
2019-01-21 10:30:57 +01:00 |
|
chriseth
|
2ec997e697
|
Merge pull request #5775 from ethereum/codeAccess
Provide access to code of contract types.
|
2019-01-18 00:16:06 +01:00 |
|
chriseth
|
0711873a2f
|
Merge pull request #5794 from ethereum/ssaReverser
[Yul] Add SSAReverser to optimiser.
|
2019-01-17 23:50:51 +01:00 |
|
Daniel Kirchner
|
29f66b2674
|
Stabilize SSAReverser.
|
2019-01-17 21:05:32 +01:00 |
|
Daniel Kirchner
|
fd16585724
|
Undo second SSA transformation and add more tests.
|
2019-01-17 20:37:43 +01:00 |
|
Daniel Kirchner
|
6de2d92f20
|
Add SSAReverser to the yul optimiser.
|
2019-01-17 20:37:43 +01:00 |
|
chriseth
|
2a0d4f358c
|
Add test for content of creationCode and runtimeCode.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
fed56f33d5
|
Type is not reserved anymore.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
4669b06ab4
|
Warn if type(..).runtimeCode is used with assembly in the constructor.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
e6fee257e6
|
Code generation for access to contract code.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
2fcfb216b5
|
Syntax for meta type information.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
44237211d1
|
Tests.
|
2019-01-17 20:36:48 +01:00 |
|
Leonardo Alt
|
83e7233bb8
|
Change error message and add tests
|
2019-01-17 14:28:03 +01:00 |
|
Leonardo Alt
|
a10db051de
|
[SMTChecker] Support basic typecast
|
2019-01-16 13:00:54 +01:00 |
|
Daniel Kirchner
|
81f24f24e6
|
Add equivalent function combiner as Yul optimizer step.
|
2019-01-15 17:21:03 +01:00 |
|
Daniel Kirchner
|
4c8f8e9491
|
Disallow mismatching types in switch cases and detect duplicates by value for number literals.
|
2019-01-15 16:32:21 +01:00 |
|
chriseth
|
950e193642
|
Merge pull request #5765 from ethereum/unreachableCode
Warn about unreachable code.
|
2019-01-10 11:31:54 +01:00 |
|
Daniel Kirchner
|
0dfd4a726e
|
Warn about unreachable code.
|
2019-01-10 10:36:50 +01:00 |
|
chriseth
|
b7ef850955
|
Update tests.
|
2019-01-09 16:57:33 +01:00 |
|
chriseth
|
edda79eec5
|
Variables are free with regards to code size.
|
2019-01-09 16:57:33 +01:00 |
|
chriseth
|
9244b8ea5a
|
More code for optimizer tuning.
|
2019-01-08 18:07:14 +01:00 |
|
chriseth
|
5b8b016fae
|
Use the block flattener.
|
2019-01-08 16:02:14 +01:00 |
|
chriseth
|
884d51c1f2
|
Merge pull request #5759 from ethereum/anotherBigTest
Another ABI test case for the optimizer.
|
2019-01-08 16:01:41 +01:00 |
|
chriseth
|
2d19903d1a
|
Another ABI test case for the optimizer.
|
2019-01-08 15:14:45 +01:00 |
|
chriseth
|
f5b24a38b8
|
Make function grouper idempotent.
|
2019-01-08 15:05:09 +01:00 |
|
chriseth
|
6414d63906
|
Merge pull request #5716 from ethereum/fixDataSizeOffset
Fix data size offset and properly provide builtins.
|
2019-01-08 00:07:42 +01:00 |
|
chriseth
|
40e1283d72
|
Merge pull request #5713 from ethereum/addAztek
[Yul] Add AZTEK code as test.
|
2019-01-07 17:25:41 +01:00 |
|
chriseth
|
ace601b8f6
|
Tests.
|
2019-01-07 17:23:38 +01:00 |
|
chriseth
|
5b73c2ae3b
|
Take special functions that require literals into account.
|
2019-01-07 17:23:38 +01:00 |
|
chriseth
|
9f5d34af7d
|
Merge pull request #5752 from ethereum/addDialect
[Yul] Refactor: Make the dialect available everywhere.
|
2019-01-07 17:23:05 +01:00 |
|
chriseth
|
9222eff08f
|
Make the dialect available everywhere.
|
2019-01-07 16:41:03 +01:00 |
|
chriseth
|
b604b87272
|
Add AZTEK code as test.
|
2019-01-07 16:23:35 +01:00 |
|
androlo
|
d2105be57d
|
Move actual test files.
|
2019-01-07 15:05:54 +01:00 |
|
chriseth
|
6e626ad955
|
Unify json and non-json commandline tests.
|
2019-01-07 14:50:49 +01:00 |
|
androlo
|
b18c8a60ff
|
Use directories for tests.
|
2019-01-07 14:50:49 +01:00 |
|
chriseth
|
633228f1a7
|
Merge pull request #5710 from ethereum/moveTests
[REF][cmdlinetests] Move functions to the top
|
2019-01-07 14:47:53 +01:00 |
|
chriseth
|
b06e84501b
|
Merge pull request #5711 from ethereum/printCommandOnError
[cmdline tests] Print command on error.
|
2019-01-07 14:37:32 +01:00 |
|
chriseth
|
ff7bc85478
|
Merge pull request #5741 from ethereum/fix-5730-SourceLocation
Fixes SourceLocation extraction on multiline locations with a too long first line
|
2019-01-07 14:37:07 +01:00 |
|
chriseth
|
2e9c70add0
|
Use rematerializer if variable is unreferenced or value is "cheap".
|
2019-01-07 14:03:32 +01:00 |
|
Christian Parpart
|
9e61dbad07
|
Adds new test for SourceReferenceExtractor to extract multiline location with a too long first line.
|
2019-01-07 11:56:43 +01:00 |
|
androlo
|
88c7975ca5
|
Move functions to the top.
|
2018-12-21 00:46:31 +01:00 |
|
chriseth
|
09feb9cf52
|
Print command.
|
2018-12-20 12:56:18 +01:00 |
|
androlo
|
4487567629
|
Only select directories to skip the README.
|
2018-12-20 12:19:14 +01:00 |
|
chriseth
|
8690898ac1
|
Formatting.
|
2018-12-20 12:19:14 +01:00 |
|
chriseth
|
ae08d7c375
|
Merge pull request #5681 from ethereum/limitOutput
Do not compile unless requested.
|
2018-12-19 17:02:28 +01:00 |
|
chriseth
|
4c7151e57f
|
Do not include empty JSON objects in output.
|
2018-12-19 14:59:29 +01:00 |
|
chriseth
|
1bf396af78
|
Tests.
|
2018-12-19 12:58:17 +01:00 |
|
Christian Parpart
|
62fe57479e
|
make use of C++ = default constructor declarations as well as more non-static member initialization syntax.
|
2018-12-19 11:26:42 +01:00 |
|
Christian Parpart
|
d10bae245e
|
liblangutil: SourceLocation to default initialize data members (w/o the use of ctor)
See: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c45-dont-define-a-default-constructor-that-only-initializes-data-members-use-in-class-member-initializers-instead
|
2018-12-19 11:21:45 +01:00 |
|
chriseth
|
20189c3f3b
|
Merge pull request #5637 from ethereum/better-json-error-reporting
Json: Provide better error message when 'settings' is not an object
|
2018-12-18 19:39:46 +01:00 |
|
Mathias Baumann
|
c43d96f2bf
|
Json: Provide better error messages for wrong types
|
2018-12-18 18:36:50 +01:00 |
|
Alex Beregszaszi
|
bd2f2ecbbd
|
Move unsatisfied_version test from SolidityNameAndTypeResolution to SolidityParser
|
2018-12-18 15:02:59 +00:00 |
|
Alex Beregszaszi
|
ba15bc0a23
|
Fail if parsing failed in AnalysisFramework
Otherwise Compilerstack::analyze will throw an exception.
|
2018-12-18 15:02:37 +00:00 |
|
Alex Beregszaszi
|
c2ec6d71b4
|
Add version pragma parsing to Parser
|
2018-12-18 15:02:35 +00:00 |
|
Mathias Baumann
|
1b8570f829
|
Only generate sort/search code when interface functions exist
|
2018-12-17 21:24:37 +01:00 |
|
chriseth
|
332f914e4e
|
Merge pull request #5388 from ethereum/smt_mapping
[SMTChecker] Support for mapping
|
2018-12-17 14:09:52 +01:00 |
|
chriseth
|
bf7d71d6b3
|
Merge pull request #5613 from ethereum/yulStringLiterals
[Yul] Use C++ user-defined literals for creating YulString constants.
|
2018-12-17 14:07:24 +01:00 |
|
chriseth
|
2f11a677de
|
Add gnosis safe as external test.
|
2018-12-14 23:48:04 +01:00 |
|
Leonardo Alt
|
9199718ec0
|
Clear all mapping knowledge after array variable assignment
|
2018-12-14 12:21:53 +01:00 |
|
Leonardo Alt
|
6a2809a582
|
[SMTChecker] Support to mapping
|
2018-12-14 12:21:53 +01:00 |
|
chriseth
|
bc22a25a60
|
Remove VarDeclPropagator.
|
2018-12-13 16:51:10 +01:00 |
|
chriseth
|
6c6a53a439
|
Do not create unassigned variables.
|
2018-12-13 16:51:10 +01:00 |
|
chriseth
|
11209ec48a
|
Add variable declaration initializer.
|
2018-12-13 16:49:04 +01:00 |
|
chriseth
|
b11d413720
|
Consider return variables to be zero initially.
|
2018-12-13 16:02:30 +01:00 |
|
chriseth
|
1d274a8924
|
Merge pull request #5644 from ethereum/noInlineIntoLarge
[Yul] Do not inline into already big functions.
|
2018-12-13 15:57:49 +01:00 |
|
chriseth
|
ef95a1ab53
|
Merge pull request #5651 from ethereum/cmdlineJsonTests
Remove pre-release warning from standard json cmdline tests.
|
2018-12-13 15:28:40 +01:00 |
|
Daniel Kirchner
|
d5a50d8aee
|
Remove pre-release warning from standard json cmdline tests.
|
2018-12-13 14:42:29 +01:00 |
|
chriseth
|
60a368244a
|
Do not inline into already big functions.
|
2018-12-13 12:12:54 +01:00 |
|
chriseth
|
642c69f935
|
Merge pull request #5641 from ethereum/supportUnassigned
[Yul] Support unassigned variables in the SSA value tracker and the data flow analyzer.
|
2018-12-13 11:33:45 +01:00 |
|
chriseth
|
6e205cc4e3
|
Merge pull request #5624 from ethereum/standard_json_unknown_keys
Disallow unknown JSON keys in standard-json
|
2018-12-13 09:58:34 +01:00 |
|
Daniel Kirchner
|
5ac7620045
|
Use C++ user-defined literals for creating YulString constants.
|
2018-12-12 18:45:43 +01:00 |
|
chriseth
|
17bf164afe
|
Merge pull request #4951 from ethereum/alethUpdates
Use current aleth release for testing.
|
2018-12-12 18:41:35 +01:00 |
|
chriseth
|
9557dd7e74
|
Support unassigned variables in the SSA value tracker and the data flow analyzer.
|
2018-12-12 18:06:28 +01:00 |
|
Leonardo Alt
|
8cd2ac8462
|
Disallow unknown JSON keys in standard-json
|
2018-12-12 17:32:42 +01:00 |
|
Daniel Kirchner
|
123d33ad41
|
Add tolerance to gas meter tests.
|
2018-12-12 17:24:56 +01:00 |
|
chriseth
|
87237281bf
|
Merge pull request #5630 from ethereum/warn_functions_empty_body
Supress unused var and state mut warnings for functions with empty body
|
2018-12-12 17:00:50 +01:00 |
|
Leonardo Alt
|
508aae8a67
|
Disable state mutability warning for functions with empty body
|
2018-12-12 14:43:44 +01:00 |
|
Leonardo Alt
|
53537864a2
|
Disable unused var warning for functions with empty body
|
2018-12-12 14:43:44 +01:00 |
|
Daniel Kirchner
|
788612d2ef
|
Refactoring of the ControlFlowGraph and use for detecting all uninitialized storage accesses.
|
2018-12-12 04:20:53 +01:00 |
|
chriseth
|
fb3a0ac1c7
|
Codegen for object access.
|
2018-12-11 19:24:44 +01:00 |
|
chriseth
|
9f86ede32d
|
Merge pull request #5454 from ethereum/smt_math_functions
[SMTChecker] Abstract math functions
|
2018-12-11 18:35:10 +01:00 |
|
chriseth
|
b5deca0383
|
Merge pull request #4779 from ethereum/optimise-string-literals
Decide better in storing string literals as data
|
2018-12-11 17:50:14 +01:00 |
|
Leonardo Alt
|
08737e43dc
|
[SMTChecker] Use SymbolicFunctionVariable for uninterpreted functions
|
2018-12-11 11:28:25 +01:00 |
|
Daniel Kirchner
|
6d82ad1338
|
Test updates for recent versions of aleth.
|
2018-12-11 04:47:05 +01:00 |
|
chriseth
|
d80d324de7
|
Tests for gas costs.
|
2018-12-10 18:06:07 +01:00 |
|
Yi Huang
|
81f703427e
|
Add tests for implcit conversions from literals to fixed-point numbers.
|
2018-12-10 17:31:20 +01:00 |
|
Mathias Baumann
|
55d7d327c4
|
Have only one source where testsuits are defined
|
2018-12-10 16:49:33 +01:00 |
|
chriseth
|
b05d33d771
|
Tests for stack reusing code generator.
|
2018-12-10 14:28:56 +01:00 |
|
Erik Kundt
|
e2395a3dcf
|
Adds more detailed type errors and tests.
|
2018-12-07 12:35:35 +01:00 |
|
Erik Kundt
|
b2afb8cdda
|
Adds an additional message to failing type conversions.
|
2018-12-07 11:55:53 +01:00 |
|
chriseth
|
6a9e8a6fe3
|
Merge pull request #4936 from ethereum/binSelect
Binary search for dispatch.
|
2018-12-07 00:55:09 +01:00 |
|
Daniel Kirchner
|
1eb60cbb39
|
Add structural simplifier as optimization step for Yul.
|
2018-12-06 18:37:35 +01:00 |
|
chriseth
|
b7cfa499b0
|
Add tests.
|
2018-12-06 14:43:14 +01:00 |
|
chriseth
|
0e8841005c
|
Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactor
[2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
|
2018-12-06 14:01:39 +01:00 |
|
Christian Parpart
|
073b03d90c
|
liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and making use of new SourceLocation's CharStream knowledge
|
2018-12-06 14:01:01 +01:00 |
|
chriseth
|
6124176374
|
Gas tests for the binary search dispatch routine.
|
2018-12-06 13:07:14 +01:00 |
|
chriseth
|
d67b232343
|
Extend capabilities of the generic commandline test.
|
2018-12-06 12:38:24 +01:00 |
|
chriseth
|
5fde279d2a
|
Merge pull request #5514 from corollari/develop
Remove unary + from the type system
|
2018-12-06 10:27:09 +01:00 |
|
Albert
|
eee2f2b069
|
Update test
|
2018-12-06 01:54:04 +01:00 |
|
Albert
|
df08d79623
|
Fix #5470
Remove unary + from the type system
|
2018-12-06 01:54:04 +01:00 |
|
chriseth
|
bc6ddbdd09
|
Remove w parameter for toHex.
|
2018-12-05 22:51:49 +01:00 |
|
Kevin Kelley
|
fb6fd1b3c2
|
add a 'readable' format for large hex values
|
2018-12-05 22:15:02 +01:00 |
|
Mathias Baumann
|
f4e9c70ecc
|
Tests for SSAValueTracker ignoring function call on rhs
|
2018-12-05 18:01:41 +01:00 |
|
chriseth
|
32c9da9419
|
Merge pull request #5593 from ethereum/issue-5384
Fix expression simplifier asserting on default values
|
2018-12-05 17:58:23 +01:00 |
|
chriseth
|
dd6327594f
|
Merge pull request #5592 from ethereum/fix-issue-5446
Relax assertion about jumps in loose mode
|
2018-12-05 11:43:31 +01:00 |
|
Mathias Baumann
|
5d31ad2daf
|
Test for unhandled default values in expression simplifier
|
2018-12-05 11:43:02 +01:00 |
|
Mathias Baumann
|
6e5160efa0
|
Relax assertion about jumps in loose mode
|
2018-12-05 10:25:59 +01:00 |
|
chriseth
|
6efe2a5266
|
Merge pull request #5390 from ethereum/smt_one_loop
[SMTChecker] Unroll loops once
|
2018-12-05 09:23:19 +01:00 |
|
chriseth
|
852297fa2f
|
Builtin functions for yul analysis.
|
2018-12-04 14:50:00 +01:00 |
|
chriseth
|
c3fc2da763
|
Tests for parser for builtins.
|
2018-12-04 14:49:16 +01:00 |
|
chriseth
|
961026347d
|
Use dialect option in yul parser tests.
|
2018-12-04 14:49:16 +01:00 |
|
chriseth
|
8654f8f6d4
|
Merge pull request #5573 from ethereum/builtins
[Yul] Introduce the concept of builtin functions.
|
2018-12-04 14:11:49 +01:00 |
|
Daniel Kirchner
|
1b8a013d4a
|
Properly recurse in ForLoopInitRewriter
|
2018-12-04 13:36:25 +01:00 |
|
Leonardo Alt
|
8069bb61da
|
[SMTChecker] Loops are unrolled once
|
2018-12-04 12:35:19 +01:00 |
|
chriseth
|
99db4e3ff4
|
Introduce the concept of builtin functions.
|
2018-12-04 12:06:33 +01:00 |
|
chriseth
|
7698b0b63f
|
Do not stop if there is more than one error.
|
2018-12-04 11:37:03 +01:00 |
|
chriseth
|
d829794737
|
Improve yul error messages around number of arguments and variables.
|
2018-12-04 11:37:03 +01:00 |
|