Commit Graph
6308 Commits
Author SHA1 Message Date
chriseth c6473ff32b Proof for rules. 2021-08-19 12:51:54 +02:00
chriseth a467f3205c Tests for knowledge base. 2021-08-19 12:51:54 +02:00
chriseth 4b038e3f02 Extend knowledge base. 2021-08-18 12:42:46 +02:00
chriseth 063d481bb3 Fix parsing fixed point values. 2021-08-17 14:46:11 +02:00
chriseth 948665ff89 Merge pull request #11749 from ethereum/simplifyConvertEvenMOre
Simplify yul conversion function even more.
2021-08-17 14:39:59 +02:00
chriseth 5015284c3a Merge pull request #11748 from ethereum/optimize_signextend
Optimizer rules for signextend.
2021-08-17 14:39:16 +02:00
Kamil Śliwak cb1a0f08ca readFileAsString(): Accept path as boost::filesystem::path instead of string 2021-08-17 12:58:33 +02:00
chriseth 704820cc6e Update tests. 2021-08-16 22:24:06 +02:00
chriseth b62bb0a0b2 Merge pull request #11804 from ethereum/fixedPointTypes
[isoltest] Leading zero for fixed point types.
2021-08-16 22:17:48 +02:00
chriseth 4480662a58 Test. 2021-08-16 18:54:33 +02:00
hrkrshnn 59db0f1537 An equivalence check for SIGNEXTEND opcode
Checking the implementation of SIGNEXTEND using Z3's native SignExt and Extract
2021-08-16 18:54:33 +02:00
chriseth 5906d25a39 Formalization of SIGNEXTEND and rule proofs 2021-08-16 18:54:33 +02:00
Daniel Kirchner 9f2885e173 Disabling of prepublish hook is no longer needed in setup_solcjs
See https://github.com/ethereum/solc-js/pull/542
2021-08-16 16:50:31 +02:00
Alexander Arlt 866617b353 [isoltest] Add support for fixed point types. 2021-08-16 13:07:22 +02:00
chriseth d7a802e4bf Merge pull request #11682 from ethereum/fixedPointTypes
Fixed point types for isoltest
2021-08-13 09:37:29 +02:00
Leo Alt 937af7d722 Fix SMT test 2021-08-12 22:34:18 +02:00
Alexander Arlt d6b9b4175b [isoltest] Add support for fixed point types. 2021-08-12 21:27:51 +02:00
chriseth fe0d027d45 Merge pull request #11785 from ethereum/someMoreBaseFees
Some more base fees.
2021-08-12 19:48:10 +02:00
Leo Alt 6ee60aa628 Fix false positive on external calls from constructors 2021-08-12 18:51:55 +02:00
chriseth c87c0f02bd Test updates. 2021-08-12 16:56:12 +02:00
chriseth 90c4623460 Some more base fees. 2021-08-12 16:37:21 +02:00
chriseth ccdc11ea5b Merge pull request #11741 from ethereum/shadowing_inlineasm_fix_yul_codegen
Fixed inline assembly external identifier access.
2021-08-12 14:38:24 +02:00
Leo Alt 10397e440c Fix ICE in constants 2021-08-12 10:53:01 +02:00
chriseth a4c94a1b5b Fixed inline assembly external identifier access. 2021-08-11 18:18:29 +02:00
Daniel Kirchner e28d00a76d Merge pull request #11763 from ethereum/basefee-hasOpcode
Allow basefee as Yul identifier for EVMVersion < london
2021-08-11 14:14:21 +02:00
Leo Alt 8ce878621a Make show unproved CLI a flag 2021-08-11 10:54:03 +02:00
hrkrshnn 892700d769 Tests for basefee as identifier in inline assembly
Also added basefee to `EVMVersion::hasOpcode(...)`
2021-08-11 10:46:40 +02:00
hrkrshnn 7f1a2be0fe Allow basefee as Yul identifier for EVMVersion < london
This was done to prevent basefee from being a breaking change. This change will be removed in 0.9.0.

TODO revert this commit in breaking.
2021-08-11 10:46:08 +02:00
Harikrishnan Mulackal 74ec3c1983 Merge pull request #11760 from ethereum/default-evmversion-london
Set default EVM version to London.
2021-08-11 10:42:41 +02:00
Harikrishnan Mulackal 0fc3e2dfb3 Merge pull request #11647 from ethereum/basefee
Implement London EVMVersion and the BASEFEE opcode
2021-08-11 10:31:22 +02:00
hrkrshnn 79733fca48 Set default EVM version to London. 2021-08-11 09:54:14 +02:00
hrkrshnn 43605d9299 Tests and Changelog for basefee. 2021-08-11 09:51:12 +02:00
hrkrshnn a54addc2cb An equivalence check for the Byte opcode
Checks that the byte opcode (implemented using shift) is equivalent to a
canonical definition of byte using extract.
2021-08-10 11:00:29 +02:00
chriseth f6789de9f8 Fix implementation of BYTE 2021-08-09 19:14:14 +02:00
hrkrshnn af1dabb555 Added EVMVersion london.
Also set the value of `block_base_fee` for testing to 7 wei.
2021-08-09 16:18:08 +02:00
hrkrshnn 543ccf5287 Added the basefee instruction in YulInterpreter 2021-08-09 16:18:08 +02:00
Leo Alt ee6285d6d7 Do not create VCs for underoverflow by default for Sol >=0.8 2021-08-09 14:12:31 +02:00
Leo Alt 08c065ee04 Add option divModWithSlacks 2021-08-06 15:50:25 +02:00
Kamil Śliwak 506cc20fe8 Remove empty exit files from command-line tests 2021-08-05 17:41:33 +02:00
Kamil Śliwak 2803dba980 Add pragmas and SPDX comments to command-line tests to get cleaner error output 2021-08-05 17:41:30 +02:00
Kamil Śliwak dc4620d2be cmdlineTests.sh: Suppress message about empty output to get consistent output on release and pre-release builds 2021-08-05 17:11:58 +02:00
chriseth db85849648 Merge pull request #11737 from ethereum/fix_shift_cleanup
Yul: Fix cleanup for left shift of bytes types.
2021-08-05 12:55:42 +02:00
chriseth 6b888b531b Refactor conversion function. 2021-08-05 11:48:35 +02:00
chriseth 0112fed73b Yul: Fix cleanup for left shift of bytes types. 2021-08-05 10:54:48 +02:00
Kamil Śliwak 2d5b9036c2 Merge pull request #11645 from ethereum/slightly-nicer-error-reporting
[Trivial] Provide a better error reporting for failed cmdline tests.
2021-08-04 15:47:14 +02:00
Marenz dea201800f Provide a better error reporting for failed cmdline tests. 2021-08-04 15:00:34 +02:00
Leo Alt 3c1f555f71 Tests 2021-08-04 13:54:50 +02:00
Leo Alt 700fe3e5d4 CL tests 2021-08-04 13:54:50 +02:00
Leo Alt 685d7a8c99 Bundle all unproved targets in a single message and only show all if setting chooses that 2021-08-04 13:54:50 +02:00
chriseth ae519c1278 Merge pull request #11658 from ethereum/removeScannerFromCompilerStack
Remove scanner from compiler stack
2021-08-03 17:47:39 +02:00