Commit Graph
11961 Commits
Author SHA1 Message Date
chriseth deed8e21f6 Merge pull request #5334 from ethereum/stringPerformance
[Yul] String performance
2018-11-07 20:26:33 +01:00
chriseth 674e17c2a8 Performance: Replace string by special single-copy YulString class. 2018-11-07 19:30:27 +01:00
Daniel Kirchner c38591858d Document interoperability between 0.5.0 and pre-0.5.0 contracts. 2018-11-07 16:55:06 +01:00
Daniel Kirchner 8b2f8b1ea2 Document disallowed explicit conversions between unrelated contract types. 2018-11-07 16:44:35 +01:00
chriseth 0a96f091ab Merge pull request #5346 from ethereum/chriseth-patch-4
[DOCS] Integers cannot be implicitly converted to address
2018-11-07 14:59:54 +01:00
chriseth a459b8c81e Merge pull request #5359 from ethereum/cpp17-forward-compat
Eliminate `byte`-typedef and use `uint8_t` in all their places instead.
2018-11-07 12:42:02 +01:00
Christian Parpart ab0de38f16 Eliminate byte-typedef and use uint8_t in all their places instead.
This change is made to (easily) be forward compatible with future C++
standards, in order to allow compiling the code with newer standards at
some point in the future.

* Removed the `using byte = uint8_t;` line from Common.h
* Mechanically change all uses of `byte` to `uint8_t`.

Tested with GCC 7.3 in C++11/14/17 modes :-)
2018-11-07 12:17:57 +01:00
Daniel Kirchner a3e37a9d5a Relax identity requirement of function type conversions during code generation. 2018-11-06 13:22:33 +01:00
Daniel Kirchner e036133d1b Fix negative denominator in `boost::rational` during exponentiation. 2018-11-06 10:52:10 +01:00
chriseth 5df83346f3 Integers cannot be implicitly converted to address 2018-11-06 09:11:02 +01:00
Daniel Kirchner 88aee34c22 Merge pull request #5347 from ethereum/boostRationalNegativeDenominator
Remove uses of boost::rational with negative denominator in tests.
2018-11-05 21:59:15 +01:00
Daniel Kirchner 36903d7e27 Remove uses of boost::rational with negative denominator, which breaks with boost 1.68. 2018-11-05 21:36:52 +01:00
chriseth e4da724fb8 Merge pull request #5343 from lshapton/patch-1
Fixes small typo in documentation
2018-11-04 18:44:09 +01:00
Leanne e5836fc276 Fixes typo 2018-11-03 16:02:41 -04:00
mordax 5effc0eeb9 Disable covereage cmake option 2018-11-03 15:31:15 -04:00
chriseth 2672d9a8a4 Merge pull request #5337 from ethereum/ubuntuVersion
Update ubuntu versions.
2018-10-30 16:07:48 +01:00
chriseth 199a994e28 Update ubuntu versions. 2018-10-30 15:57:14 +01:00
chriseth cbbbc0d5d9 Merge pull request #5336 from Eitan-Lev/Update-newcomers-tag
up-for-grabs swapped for good first issue
2018-10-30 15:33:27 +01:00
chriseth 437467acfc Merge pull request #5188 from ethereum/large-array-encoding
Do not crash when trying to encode too large arrays
2018-10-30 15:31:47 +01:00
Erik Kundt 1d8e9af407 Fixes crash while encoding too large arrays. 2018-10-30 15:14:57 +01:00
Eitan Levin 1b18891424 up-for-grabs swapped for good first issue 2018-10-30 16:04:15 +02:00
chriseth 0b4f6ab72d Merge pull request #5331 from lazaridiscom/patch-2
move CHECKLIST to the end
2018-10-29 12:09:55 +01:00
Lazaridis 48ab12479c move CHECKLIST to the end
## Rationale

The github/gitter UIs show the content of a PR-link on mouse-over.

Having the CHECKLIST on top results in those pop-ups showing the checklist instead of the (more relevant) description.
2018-10-29 00:11:03 +02:00
chriseth 4d82831b06 Merge pull request #5316 from lazaridiscom/4891-memory-store-asserts
refine memory-store assertions, closes #4891
2018-10-28 20:50:41 +01:00
chriseth acf92930ba Merge pull request #5247 from ethereum/yul-vardecl-propagation
Yul: Implements empty-var-decl-propagation
2018-10-28 20:46:34 +01:00
chriseth 0e9127a7c8 Add rematerializer to interactive optimizer. 2018-10-28 13:27:21 +01:00
chriseth c338b422d4 Merge pull request #5315 from ethereum/yul-expr-joiner
Refactor Yul's ExpressionJoiner
2018-10-28 13:26:39 +01:00
chriseth 9a58e71b9e Merge pull request #5320 from lazaridiscom/patch-1
add missing "p"
2018-10-28 12:28:44 +01:00
Lazaridis ccda086f1c add missing "p" 2018-10-28 06:56:15 +02:00
Lazaridis cab8dea7fe refine memory-store assertions, closes #4891 2018-10-27 00:04:54 +03:00
Christian Parpart 1264290d57 [Yul] ExpressionJoiner: code cleanup
* ensure public API is only containing `run(Block&)`, all the rest is private API / implementation details
* adding some comments to class data members to quicker understand their meaning
* eliminate unnecessary `operator()(If&)` as it's not changing default behaviour of `ASTModifier`
* simplify readability of `visit(Expression&)`'s impl, also moving assert's into "isLatestStatementVarDeclOf", as this one is already ensuring exactly that.
* ctor impl's use of ReferenceCounter use shortened.
* renamed and improved `isLatestStatementVarDeclOf` to better match its meaning (especially since it's only used once)
2018-10-26 13:53:37 +02:00
Christian Parpart f08ab77249 Yul: Implements empty-var-decl-propagation 2018-10-26 13:13:57 +02:00
chriseth c84003533f Merge pull request #5314 from berkerol/patch-1
DOCS: Add check for whether voter has right to vote
2018-10-26 11:42:34 +02:00
Berk Erol 19064e81bc Add check for whether voter has right to vote 2018-10-26 09:53:57 +03:00
chriseth 41375b5d79 Merge pull request #5122 from ethereum/docs-contributing-pt3
Final contribution review in fuzzer section
2018-10-25 18:41:52 +02:00
chriseth 1b02bfdb4a Merge pull request #5311 from ethereum/chriseth-patch-3
Clarify import.
2018-10-25 18:41:44 +02:00
Chris Ward feff3fe3e9 Final contribution review in fuzzer section 2018-10-25 18:40:40 +02:00
chriseth 525fa5109d Clarify import. 2018-10-25 18:28:24 +02:00
chriseth 6e3456d182 Merge pull request #5304 from ethereum/removeASTutils
Remove unused AST utils.
2018-10-25 17:27:03 +02:00
chriseth 39687cf110 Remove unused AST utils. 2018-10-25 14:02:09 +02:00
chriseth 3473326fc4 Merge pull request #5273 from ethereum/interactiveOpt
[Yul] Interactive optimizer tool
2018-10-25 13:55:08 +02:00
chriseth c36a3bd683 Merge pull request #5283 from ethereum/smt_fixed_bytes
[SMTChecker] Support FixedBytes
2018-10-25 13:01:01 +02:00
chriseth f714b0dd7c Merge pull request #5242 from ethereum/someChecks
Some well-formedness checks for the Yul AST.
2018-10-25 12:44:28 +02:00
chriseth 4076875927 Merge pull request #5271 from ethereum/fullSuite
[Yul] Full suite tests.
2018-10-25 12:44:10 +02:00
chriseth d335539891 Merge pull request #5296 from ethereum/setPragmaToArbitrary
Set pragma to arbitrary
2018-10-25 12:42:15 +02:00
Leonardo Alt d8cbf321da Grouping of symbolic variables in the same file and support to FixedBytes 2018-10-25 09:30:48 +02:00
chriseth 60f1d52f59 Full suite tests. 2018-10-24 18:02:08 +02:00
chriseth f92623063d Add redundant assign and ssa. 2018-10-24 17:54:35 +02:00
chriseth 57843f790c Interactive optimizer tool. 2018-10-24 17:52:28 +02:00
chriseth 1424beda79 Remove pragma changer. 2018-10-24 14:52:55 +02:00