Commit Graph
20827 Commits
Author SHA1 Message Date
hrkrshnn 229f50eef1 Syntax checks for user defined value types 2021-09-08 19:56:48 +02:00
hrkrshnn 54484e9795 Implemented codegen for UserDefinedValueType 2021-09-08 19:56:48 +02:00
hrkrshnn ce75790e8d TypeChecker: added checks for wrap and unwrap
For user defined value types and also added a test case.
2021-09-07 19:42:51 +02:00
hrkrshnn 0647039864 DeclarationTypeChecker for UserDefinedValueTypes
- Checks for repetitions.
- Assigns types.
- Checks if the 'actual type' is an elementary type name.
- Checks if the 'actual type' is a value type.

Also added tests.
2021-09-07 19:42:51 +02:00
hrkrshnn 15452371d4 Types for UserDefinedValueType 2021-09-07 19:42:51 +02:00
hrkrshnn 9f7426b4a9 Implemented parsing for UserDefinedValueType
Also added parsing tests.
2021-09-07 19:42:51 +02:00
hrkrshnn d3ae9cf71b Added AST node UserDefinedValueType 2021-09-07 19:42:51 +02:00
Leonardo 6feed460cf Merge pull request #11905 from ethereum/smt_cleanup_typetype
[SMTChecker] Cleanup spurious messages about TypeTypes
2021-09-07 17:46:57 +02:00
chriseth c9360ef80d Merge pull request #11908 from ethereum/preventOptimizerRunningMultipleTimes
Run the optimizer only once.
2021-09-07 17:37:54 +02:00
Leo Alt 6e2fe1e340 [SMTChecker] Cleanup spurious messages about TypeTypes 2021-09-07 16:55:25 +02:00
chriseth 3fe52d9869 Run the optimizer only once. 2021-09-07 15:06:31 +02:00
Leonardo 11a8505990 Merge pull request #11904 from ethereum/removing-soljson-js-no-longer-needed-after-npm-install
Don't try to remove `soljson.js` after running `npm install` in cloned `solc-js` repo
2021-09-06 23:46:26 +02:00
Leonardo 1d6eb2e248 Merge pull request #11880 from ethereum/circle-ci-config-cleanup-and-deduplication
CircleCI config cleanup and deduplication
2021-09-06 23:44:02 +02:00
chriseth a7b85d3a41 Merge pull request #11865 from ethereum/compressSourceIndices
Only list used source names.
2021-09-06 22:13:27 +02:00
Kamil Śliwak f4d1044331 Don't try to remove soljson.js after running npm install in cloned solc-js repo 2021-09-06 21:04:36 +02:00
chriseth 5093cff7ae Rename source location function. 2021-09-06 18:33:36 +02:00
chriseth f14b7598c7 Only list used source names. 2021-09-06 18:33:05 +02:00
chriseth 4615e62514 Merge pull request #11902 from ethereum/addHelperForContext
Refactor: Add helper for context.
2021-09-06 18:28:17 +02:00
chriseth 5d2931cba3 Refactor: Add helper for context. 2021-09-06 18:18:33 +02:00
chriseth b8eb2a0d38 Merge pull request #11901 from ethereum/fix-changelog
Move changelog item to bugfix.
2021-09-06 18:03:55 +02:00
Daniel Kirchner d0ce6433d9 Merge pull request #11894 from ethereum/builtinExpressionVisit
Remove expression visit function from Yul Builtins.
2021-09-06 17:49:40 +02:00
hrkrshnn 4d52e873e7 Move changelog item to bugfix. 2021-09-06 17:44:45 +02:00
Daniel Kirchner a683ea7646 Remove the expression callback from the code generator functions of Yul builtins. 2021-09-06 17:07:53 +02:00
chriseth be95a8172b Merge pull request #11891 from ethereum/guidedRematerializer
Allow the Rematerializer to be restricted to an exact set of variables.
2021-09-06 16:22:14 +02:00
Harikrishnan Mulackal e9b70b168a Merge pull request #11899 from ethereum/move-check-keccak-gas
Resolving Keccak-256: check if arguments are identifiers early.
2021-09-06 14:28:42 +02:00
hrkrshnn 2cdd3b2081 Resolving Keccak-256: check if arguments are identifiers early.
Previously, the check on whether the optimization was useful gas wise was done before checking if
the keccak256 opcode had identifier as arguments. Since the gas meter crashes when encountering
certain Yul opcodes (create, dataoffset, etc.), this optimizer step crashed.
2021-09-06 13:48:07 +02:00
Harikrishnan Mulackal 3da3ffee5f Merge pull request #11897 from paulrberg/develop
docs: delete stale note about reading code
2021-09-06 10:01:57 +02:00
Paul Razvan Berg 8d1331a081 docs: delete stale note about reading code 2021-09-04 22:40:36 +03:00
yatharthagoenka 5a02384233 Cleanup/Deduplication in .circleci/config 2021-09-03 22:56:19 +02:00
Daniel Kirchner 646421fee1 Allow the Rematerializer to be restricted to an exact set of variables. 2021-09-03 15:29:51 +02:00
Daniel Kirchner 8447b32d52 Merge pull request #11861 from ethereum/smt_value
[SMTChecker] Support `value` in CHC for external function calls
2021-09-03 14:00:21 +02:00
Daniel Kirchner d384664dcb Merge pull request #11615 from ethereum/yulStackLayoutGenerator
Yul Stack Layout Generator (New Code Transform Step 2)
2021-09-03 13:13:18 +02:00
chriseth 7f137d352a Merge pull request #11869 from ethereum/remodelUseSrc
Allow and require use-src to be repeated for each object.
2021-09-02 18:34:07 +02:00
Daniel Kirchner f881409ea4 Stack layout generator for new code generation. 2021-09-02 17:47:19 +02:00
chriseth 9c2ab1ff2f Merge pull request #11881 from ethereum/unsuable-symbol-11855
Properly export symbols from aliased imports.
2021-09-02 16:39:16 +02:00
chriseth 5caa15879b Allow and require use-src to be repeated for each object. 2021-09-02 11:29:42 +02:00
Kamil Śliwak 70fe0c65d5 Merge pull request #11883 from ethereum/remove-archlinux-ci-workarounds
Remove CI workarounds for archlinux
2021-09-01 20:58:03 +02:00
Bhargava Shastry 6f8f58ebb7 Merge pull request #11874 from ethereum/remove-unsigned-overflow-ubsan-nightly
Fix UBSan CI
2021-09-01 20:29:42 +02:00
Leo Alt 106c591dde Support the external call option 2021-09-01 20:18:37 +02:00
Marenz 4700c2b973 Properly export symbols from aliased imports. 2021-09-01 19:55:30 +02:00
Kamil Śliwak 4e76914622 Switch back to using the latest ArchLinux docker image 2021-09-01 19:00:03 +02:00
Kamil Śliwak 5849e0c16e Re-enable SMT tests on Arch Linux
- Z3 4.8.12 has already been released
2021-09-01 18:59:13 +02:00
Bhargava Shastry 7b05d3bc70 CMake: Remove unsigned-integer-overflow check from UBSan compiler flags because it is too noisy. 2021-09-01 16:47:06 +02:00
chriseth 29cc7aa951 Merge pull request #11847 from ethereum/enum-min-max-11469
Add type().min/max for enums
2021-09-01 15:43:05 +02:00
Daniel Kirchner f4effe966e Merge pull request #11824 from ethereum/yulControlFlowGraphRecursiveCalls
Mark recursive calls in yul control flow graph.
2021-09-01 15:18:04 +02:00
Marenz 2b28f87abf Add type().min/max for enums 2021-09-01 15:02:02 +02:00
Bhargava Shastry 31fd97bb14 Merge pull request #11863 from ethereum/update-circleci-evm-version
Circle CI: Introduce default evm version parameter and change the default to `london`
2021-09-01 10:30:14 +02:00
Harikrishnan Mulackal 1e334a8993 Merge pull request #11799 from benldrmn/increase_use_of_constexpr
Increase use of C++ constexpr
2021-08-31 17:23:36 +02:00
Bhargava Shastry 427aec2cb4 Circle CI: Introduce default evm version parameter; remove hard-coded setting. 2021-08-31 17:15:15 +02:00
chriseth 208ba61ee6 Merge pull request #11866 from ethereum/clarifyExample
Clarify function call options example.
2021-08-31 17:08:25 +02:00