31 Commits
Author SHA1 Message Date
chriseth b8488597da Combine value and loop depth. 2020-01-08 12:25:46 +01:00
chriseth 25d3f27c11 Tune Rematerializer 2020-01-08 09:56:08 +01:00
Christian Parpart 345f9928ab Library libdevcore renamed to libsolutil. 2020-01-07 15:51:50 +01:00
Christian Parpart 6b23412fae C++ namespace cleanup (except tests). 2020-01-07 15:51:50 +01:00
Leonardo Alt 389da5228e Merge remote-tracking branch 'origin/develop' into merge_develop_060 2019-11-20 12:27:40 +01:00
Leonardo Alt be849b3c47 Replace boost::variant by std::variant in libyul 2019-11-19 17:23:18 +01:00
chriseth ceb8ee9124 [Yul] leave statement. 2019-10-29 14:32:16 +01:00
Christian Parpart df729b3084 Make use of C++17 std::optional<> instead of boost::optional<>. 2019-10-28 11:39:30 +01:00
chriseth a8e8eaebcd Fix load resolver and properly take side-effects of user-defined
functions into account.
2019-09-04 19:16:54 +02:00
chriseth 1c5845e3f2 Side-effects of user-defined functions. 2019-09-02 17:41:51 +02:00
chriseth e396dc7246 Properly set storage and memory after erasing potentially destroyed keys 2019-08-13 18:43:15 +02:00
chriseth 2b979cba38 Also optimize memory. 2019-06-20 18:43:37 +02:00
chriseth 1f9d11c644 Knowledge about storage. 2019-06-20 18:43:37 +02:00
chriseth c9e2d388b5 Merge pull request #6848 from ethereum/invertibleRelation
Implement references using InvertibleRelation as data structure.
2019-05-29 13:34:10 +02:00
Bhargava Shastry dbae0fa939 Reset Yul string repository before each compilation. 2019-05-28 13:12:39 +02:00
chriseth 4061ad0a7b Implement references using InvertibleRelation as data structure. 2019-05-27 22:55:59 +02:00
fnatic 5b6ed7a97c Removing scope rules for pre block in 'For Loops' 2019-04-17 05:58:40 +05:30
Christian Parpart 57bcb8ba83 [yul] Ensures DataFlowAnalyzer works fine with break/continue statements just like without. 2019-03-14 16:18:45 +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
Christian Parpart 065c3c87af libyul: changing some AST members from shared_ptr<> to unique_ptr<>
* Some spaces look a little more verbose now, but that shouln't be a problem as it also should raise readability, too.
* This makes some use of return-value-optimizations also.
2019-01-16 14:58:59 +01:00
chriseth 9222eff08f Make the dialect available everywhere. 2019-01-07 16:41:03 +01:00
chriseth b11d413720 Consider return variables to be zero initially. 2018-12-13 16:02:30 +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
Christian Parpart ec47c8946b Isolating libyul library API into its own namespace yul. 2018-11-23 14:29:00 +01:00
Christian Parpart 713d94476e Reorder some include files and group <libyul/>'s together (as much as possible) 2018-11-23 12:37:19 +01:00
Christian Parpart 0f4ed52a71 Rewrite header paths to adapt to recent git mv of libsolidity/inlineasm to libyul 2018-11-23 11:18:57 +01:00
chriseth b2b11eaa00 Fix data flow analyzer for function definitions. 2018-11-07 20:32:55 +01:00
chriseth 674e17c2a8 Performance: Replace string by special single-copy YulString class. 2018-11-07 19:30:27 +01:00
chriseth 48749146da Fix a bug in CSE where a variable that was already out of scope was used. 2018-10-18 14:55:51 +02:00
Christian Parpart 1304361b9c Renaming namespace dev::julia to dev::yul. 2018-10-15 11:58:51 +02:00
Christian Parpart 9a4bec7e47 Renaming libjulia to libyul 2018-10-15 11:52:35 +02:00