Commit Graph
68 Commits
Author SHA1 Message Date
Leo Arias aae385031f Add a missing tests for yul inliner optimization
When the statement has two return values, the function is not inlinable.

When the function has one statement but it is not an assignment to the
return variable, the function is not inlinable.

l
2018-09-16 06:38:08 +00:00
Leo Arias 1395bef7ae tests: add yul simplifier not applied with function calls 2018-08-09 03:46:22 +00:00
Leo Arias cf3bf57cb2 tests: add yul simplifier not applied 2018-08-07 21:58:24 +00:00
Cryptomental a55abb550d AsmParser,TypeChecker: Fix typos.
Fix typos. The change requested as a separate PR during codespell PR.
Adapt tests as well.

Refs: #4442
2018-07-10 12:33:19 +02:00
Alex Beregszaszi e05a31b82b Rename Julia to Yul in variables 2018-06-26 00:52:36 +02:00
Alex Beregszaszi 91db46b128 Rename test suites from J/Iulia* to Yul* 2018-06-26 00:07:28 +02:00
Alex Beregszaszi d24f6fd34b update tests 2018-06-14 09:31:28 +01:00
Alex Beregszaszi 8afd0ea030 Introduce Julia filter to encapsulate top level Block as a FunctionDefinition (wasm specific) 2018-05-09 11:21:03 +02:00
chriseth 54aa10ce36 Merge pull request #4054 from ethereum/token-names
Improve parser error messages
2018-05-09 11:06:23 +02:00
Alex Beregszaszi 840ed1e88a Update parser test expectations 2018-05-04 13:31:56 +01:00
chriseth d2145428c5 Fix test case strings. 2018-05-02 17:39:42 +02:00
chriseth 78945e81e4 Test the removal of the result variable. 2018-05-02 17:39:42 +02:00
chriseth 5cd84a630c Tests. 2018-05-02 17:39:42 +02:00
chriseth a38418f0d9 Common subexpression eliminator. 2018-04-06 15:16:29 +02:00
Daniel Kirchner d63d41b3b5 test: Rename test/TestHelper.* to test/Options.* and add Options::validate(). 2018-03-14 12:04:04 +01:00
chriseth fd1662d1c4 Warn about using loose inline assembly features as experimental 0.5.0 feature. 2018-03-06 17:45:34 +01:00
chriseth dc317a44e0 Provide EVM version to assembly analysis. 2018-03-01 17:19:35 +01:00
Alex Beregszaszi ae02bb5aad Raise error on oversized number literals in assembly 2018-02-22 01:02:19 +01:00
chriseth e2bf5de8a2 Expect end of string at end of top-level block for assembly parser. 2018-02-21 00:41:39 +01:00
Federico Bond d7532f7b9c Convert static SourceReferenceFormatter functions to member ones 2018-02-19 15:04:22 +01:00
chriseth 1e09d6ba7b Test for Mod-And rule. 2018-02-12 22:47:04 +00:00
chriseth 9b61fb2e99 Merge pull request #3456 from ethereum/simplifier
Use simplification rules also for IULIA
2018-02-08 16:50:17 +01:00
chriseth 9429e18dda Fix tests for old precompiler. 2018-02-07 19:23:47 +01:00
chriseth 5523296eaa Also apply simplification rules that require multiple identical sub-expressions. 2018-02-06 22:51:30 +01:00
chriseth f7392cc698 Tests. 2018-02-06 22:51:30 +01:00
chriseth 9eea3f29ba Expression simplifier. 2018-02-06 22:51:30 +01:00
chriseth d7863e2054 Test about recursively calling functions. 2018-02-06 14:50:39 +00:00
chriseth a7ae7c6d04 Tests for functional inliner. 2018-02-06 14:50:39 +00:00
chriseth e7ef227226 Function inliner. 2018-02-06 14:50:33 +00:00
chriseth 4bd9bcbc77 Tests for inlinable function filter. 2018-02-06 14:48:47 +00:00
chriseth c0abddc9dc Test for self-referring assignment. 2018-02-06 12:58:51 +01:00
chriseth 669b63ca5f Test not to remat if the expression is too large. 2018-02-06 12:38:32 +01:00
chriseth 773be40c19 Reassign test for remat. 2018-02-06 12:38:32 +01:00
chriseth e100af592b Fix for rematerializer. 2018-02-06 12:31:43 +01:00
chriseth 22c4d282aa Only substitute if all referenced variables are in scope. 2018-02-06 12:31:43 +01:00
chriseth 30e6f69bfd Tests for rematerialiser. 2018-02-06 12:31:43 +01:00
Alex Beregszaszi 33b27258e4 Add more tests for UnusedPruner 2018-02-06 10:15:41 +00:00
Alex Beregszaszi 2cbbe58281 Support variable declarations without assignment in UnusedPruner 2018-02-06 10:07:00 +00:00
chriseth b0407cfac0 Unused variable and function remover. 2018-02-05 16:43:39 +00:00
chriseth 124190336b Split inline assembly into loose and strict flavours. 2018-01-06 01:23:38 +00:00
Alex Beregszaszi a91393f4d7 Support some restricted tokens (return, byte, address) as identifiers in Julia 2018-01-05 15:53:49 +00:00
chriseth dbad74ac1b Merge pull request #3279 from ethereum/function_hoister
Function hoister
2017-12-18 15:08:13 +01:00
chriseth 99c8ed075e Function hoister. 2017-12-14 17:28:29 +01:00
chriseth a6a64eb8ed Function grouper. 2017-12-14 17:21:01 +01:00
chriseth 30d7afc2e3 Simplify disambiguator. 2017-12-05 12:09:55 +01:00
chriseth cba58629d2 Refactor iulia tests. 2017-12-05 12:09:55 +01:00
chriseth 861210f543 Disambiguator. 2017-12-05 12:09:52 +01:00
chriseth 1d91b65b72 Force condition to be bool in iulia mode. 2017-11-23 18:52:04 +01:00
chriseth 9232cd2621 Tests. 2017-11-22 16:27:32 +01:00
Alex Beregszaszi 3b813ed295 Support multiple assignment in inline assembly 2017-09-20 11:16:23 +02:00