hrkrshnn
1fa6c71bd0
Allow Mapping keys to have type UserDefinedValueType.
...
Also added syntax and semantic test.
2021-09-13 10:03:49 +02:00
hrkrshnn
952540c3b5
User defined value type: changes in documentation and test case
...
Changed the name of a function from `truncate` to `floor`, since that is more appropriate; updated
the inaccurate description on the rounding behaviour. Also modified the respective semantic test.
2021-09-09 16:57:03 +02:00
chriseth
3e2e3d1baa
Merge pull request #11915 from ethereum/fix-out-of-sync-gas-costs
...
Fix breakage on `develop` caused by gas costs that went out of sync
2021-09-09 15:42:08 +02:00
chriseth
5de276cb75
Merge pull request #11914 from ethereum/userdefined-move-test
...
User defined value types: moved a syntax test to semantic test.
2021-09-09 14:19:32 +02:00
Kamil Śliwak
f6eecb8c6f
Fix gas costs that went out of sync in some tests due to a recent merge
2021-09-09 13:26:45 +02:00
hrkrshnn
a03fbf7061
User defined value types: moved a syntax test to semantic test.
2021-09-09 12:07:51 +02:00
Harikrishnan Mulackal
8a37f56e98
Merge pull request #11806 from ethereum/user-defined-types
...
User defined value types
2021-09-09 10:28:35 +02:00
hrkrshnn
7e95555325
Updated ANTLR grammar to include user defined value types.
2021-09-08 21:19:30 +02:00
hrkrshnn
fbb1b884b2
Documentation and Changelog
2021-09-08 21:19:30 +02:00
hrkrshnn
d67391531e
Implemented ASTJson import export for UserDefinedValueType
...
Also added a test.
2021-09-08 21:19:30 +02:00
hrkrshnn
5f393d1694
Semantic tests for User Defined Value types
2021-09-08 21:19:30 +02:00
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
chriseth
dae6b53c84
Merge pull request #11910 from ethereum/deterministicOptimizer
...
Sort yul functions by creation time.
2021-09-08 19:15:58 +02:00
Daniel Kirchner
8e0ce2d9ba
Merge pull request #11911 from ethereum/rematSelectorVariableOrder
...
Change RematCandidateSelector to not depend on variable name sorting.
2021-09-08 19:09:59 +02:00
Daniel Kirchner
c499f27a63
Change RematCandidateSelector to not depend on variable name sorting.
2021-09-08 15:41:40 +02:00
chriseth
55bb53c9de
Merge pull request #11912 from ethereum/refactorSourcePrinting
...
Refactor source printing
2021-09-08 14:07:07 +02:00
chriseth
59faffcd5f
Changelog entry.
2021-09-08 12:26:06 +02:00
chriseth
0b5671c885
Clarify C++ evaluation order.
2021-09-08 12:25:56 +02:00
chriseth
4b0cd6cc8c
Update gas costs.
2021-09-08 12:25:56 +02:00
chriseth
1304080a77
Update commandline tests.
2021-09-08 12:25:56 +02:00
chriseth
c63b768fff
Sort yul functions by creation time.
2021-09-08 12:25:56 +02:00
Daniel Kirchner
d512f7a4fd
Merge pull request #11890 from ethereum/stackLayoutGeneratorReportTooDeep
...
Report stack too deep and conditional stack compression in StackLayoutGenerator.
2021-09-08 10:28:30 +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
Kamil Śliwak
98ab6d91ed
SourceLocation::singleLineSnippet(): Handle \r\n line endings correctly
2021-09-07 17:18:22 +02:00
Kamil Śliwak
a7612ce873
Move the function for creating code snippets used next to source locations in assembly to liblangutil
2021-09-07 17:18:22 +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