aboutsummaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* Add equivalent function combiner as Yul optimizer step.Daniel Kirchner2019-01-169-115/+312
|
* Disallow mismatching types in switch cases and detect duplicates by value ↵Daniel Kirchner2019-01-152-1/+14
| | | | for number literals.
* Merge pull request #5765 from ethereum/unreachableCodechriseth2019-01-1019-1/+120
|\ | | | | Warn about unreachable code.
| * Warn about unreachable code.Daniel Kirchner2019-01-1019-1/+120
| |
* | Update tests.chriseth2019-01-095-155/+174
| |
* | Variables are free with regards to code size.chriseth2019-01-091-0/+116
|/
* More code for optimizer tuning.chriseth2019-01-091-42/+91
|
* Use the block flattener.chriseth2019-01-084-232/+198
|
* Merge pull request #5759 from ethereum/anotherBigTestchriseth2019-01-081-0/+1136
|\ | | | | Another ABI test case for the optimizer.
| * Another ABI test case for the optimizer.chriseth2019-01-081-0/+1136
| |
* | Make function grouper idempotent.chriseth2019-01-083-7/+41
|/
* Merge pull request #5716 from ethereum/fixDataSizeOffsetchriseth2019-01-086-7/+81
|\ | | | | Fix data size offset and properly provide builtins.
| * Tests.chriseth2019-01-083-0/+74
| |
| * Take special functions that require literals into account.chriseth2019-01-083-7/+7
| |
* | Merge pull request #5713 from ethereum/addAztekchriseth2019-01-081-0/+416
|\ \ | |/ |/| [Yul] Add AZTEK code as test.
| * Add AZTEK code as test.chriseth2019-01-071-0/+416
| |
* | Merge pull request #5752 from ethereum/addDialectchriseth2019-01-084-35/+46
|\ \ | | | | | | [Yul] Refactor: Make the dialect available everywhere.
| * | Make the dialect available everywhere.chriseth2019-01-074-35/+46
| |/
* | Move actual test files.androlo2019-01-07100-23/+23
| |
* | Unify json and non-json commandline tests.chriseth2019-01-071-18/+14
| |
* | Use directories for tests.androlo2019-01-071-17/+16
|/
* Merge pull request #5710 from ethereum/moveTestschriseth2019-01-071-39/+47
|\ | | | | [REF][cmdlinetests] Move functions to the top
| * Move functions to the top.androlo2018-12-211-39/+47
| |
* | Merge pull request #5711 from ethereum/printCommandOnErrorchriseth2019-01-071-0/+4
|\ \ | | | | | | [cmdline tests] Print command on error.
| * | Print command.chriseth2018-12-201-0/+4
| | |
* | | Merge pull request #5741 from ethereum/fix-5730-SourceLocationchriseth2019-01-073-0/+20
|\ \ \ | | | | | | | | Fixes SourceLocation extraction on multiline locations with a too long first line
| * | | Adds new test for SourceReferenceExtractor to extract multiline location ↵Christian Parpart2019-01-073-0/+20
| | |/ | |/| | | | | | | with a too long first line.
* / | Use rematerializer if variable is unreferenced or value is "cheap".chriseth2019-01-0718-123/+137
|/ /
* | Only select directories to skip the README.androlo2018-12-201-8/+5
| |
* | Formatting.chriseth2018-12-201-48/+61
|/
* Merge pull request #5681 from ethereum/limitOutputchriseth2018-12-209-3/+59
|\ | | | | Do not compile unless requested.
| * Do not include empty JSON objects in output.chriseth2018-12-194-4/+6
| |
| * Tests.chriseth2018-12-196-0/+54
| |
* | make use of C++ `= default` constructor declarations as well as more ↵Christian Parpart2018-12-195-8/+1
| | | | | | | | non-static member initialization syntax.
* | liblangutil: SourceLocation to default initialize data members (w/o the use ↵Christian Parpart2018-12-194-22/+22
|/ | | | | | of ctor) See: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c45-dont-define-a-default-constructor-that-only-initializes-data-members-use-in-class-member-initializers-instead
* Merge pull request #5637 from ethereum/better-json-error-reportingchriseth2018-12-1945-0/+252
|\ | | | | Json: Provide better error message when 'settings' is not an object
| * Json: Provide better error messages for wrong typesMathias Baumann2018-12-1945-0/+252
| |
* | Move unsatisfied_version test from SolidityNameAndTypeResolution to ↵Alex Beregszaszi2018-12-182-12/+8
| | | | | | | | SolidityParser
* | Fail if parsing failed in AnalysisFrameworkAlex Beregszaszi2018-12-181-1/+1
| | | | | | | | Otherwise Compilerstack::analyze will throw an exception.
* | Add version pragma parsing to ParserAlex Beregszaszi2018-12-181-0/+9
|/
* Only generate sort/search code when interface functions existMathias Baumann2018-12-182-5/+48
|
* Merge pull request #5388 from ethereum/smt_mappingchriseth2018-12-1716-0/+218
|\ | | | | [SMTChecker] Support for mapping
| * Clear all mapping knowledge after array variable assignmentLeonardo Alt2018-12-141-1/+4
| |
| * [SMTChecker] Support to mappingLeonardo Alt2018-12-1416-0/+215
| |
* | Merge pull request #5613 from ethereum/yulStringLiteralschriseth2018-12-171-3/+3
|\ \ | | | | | | [Yul] Use C++ user-defined literals for creating YulString constants.
| * | Use C++ user-defined literals for creating YulString constants.Daniel Kirchner2018-12-131-3/+3
| | |
* | | Add gnosis safe as external test.chriseth2018-12-151-0/+3
| |/ |/|
* | Remove VarDeclPropagator.chriseth2018-12-1310-108/+3
| |
* | Do not create unassigned variables.chriseth2018-12-1315-47/+46
| |
* | Add variable declaration initializer.chriseth2018-12-136-0/+99
| |
* | Consider return variables to be zero initially.chriseth2018-12-133-34/+64
| |
* | Merge pull request #5644 from ethereum/noInlineIntoLargechriseth2018-12-134-151/+246
|\ \ | | | | | | [Yul] Do not inline into already big functions.
| * | Do not inline into already big functions.chriseth2018-12-134-151/+246
| | |
* | | Merge pull request #5651 from ethereum/cmdlineJsonTestschriseth2018-12-132-3/+8
|\ \ \ | |/ / |/| | Remove pre-release warning from standard json cmdline tests.
| * | Remove pre-release warning from standard json cmdline tests.Daniel Kirchner2018-12-132-3/+8
| | |
* | | Merge pull request #5641 from ethereum/supportUnassignedchriseth2018-12-136-6/+50
|\ \ \ | |/ / |/| | [Yul] Support unassigned variables in the SSA value tracker and the data flow analyzer.
| * | Support unassigned variables in the SSA value tracker and the data flow ↵chriseth2018-12-136-6/+50
| | | | | | | | | | | | analyzer.
* | | Merge pull request #5624 from ethereum/standard_json_unknown_keyschriseth2018-12-1322-9/+155
|\ \ \ | |_|/ |/| | Disallow unknown JSON keys in standard-json
| * | Disallow unknown JSON keys in standard-jsonLeonardo Alt2018-12-1322-9/+155
| | |
* | | Merge pull request #4951 from ethereum/alethUpdateschriseth2018-12-135-44/+11
|\ \ \ | |/ / |/| | Use current aleth release for testing.
| * | Add tolerance to gas meter tests.Daniel Kirchner2018-12-131-5/+7
| | |
| * | Test updates for recent versions of aleth.Daniel Kirchner2018-12-114-39/+4
| | |
* | | Merge pull request #5630 from ethereum/warn_functions_empty_bodychriseth2018-12-1335-75/+0
|\ \ \ | |_|/ |/| | Supress unused var and state mut warnings for functions with empty body
| * | Disable state mutability warning for functions with empty bodyLeonardo Alt2018-12-1231-45/+0
| | |
| * | Disable unused var warning for functions with empty bodyLeonardo Alt2018-12-1215-30/+0
| | |
* | | Refactoring of the ControlFlowGraph and use for detecting all uninitialized ↵Daniel Kirchner2018-12-1222-46/+122
|/ / | | | | | | storage accesses.
* | Codegen for object access.chriseth2018-12-1211-16/+192
| |
* | Merge pull request #5454 from ethereum/smt_math_functionschriseth2018-12-126-18/+35
|\ \ | | | | | | [SMTChecker] Abstract math functions
| * | [SMTChecker] Use SymbolicFunctionVariable for uninterpreted functionsLeonardo Alt2018-12-116-18/+35
| |/
* | Merge pull request #4779 from ethereum/optimise-string-literalschriseth2018-12-126-1/+114
|\ \ | |/ |/| Decide better in storing string literals as data
| * Tests for gas costs.chriseth2018-12-116-1/+114
| |
* | Add tests for implcit conversions from literals to fixed-point numbers.Yi Huang2018-12-113-1/+18
| |
* | Have only one source where testsuits are definedMathias Baumann2018-12-103-96/+87
|/
* Tests for stack reusing code generator.chriseth2018-12-101-0/+353
|
* Adds more detailed type errors and tests.Erik Kundt2018-12-075-15/+21
|
* Adds an additional message to failing type conversions.Erik Kundt2018-12-075-10/+25
|
* Merge pull request #4936 from ethereum/binSelectchriseth2018-12-076-0/+194
|\ | | | | Binary search for dispatch.
| * Gas tests for the binary search dispatch routine.chriseth2018-12-066-0/+194
| |
* | Add structural simplifier as optimization step for Yul.Daniel Kirchner2018-12-0712-11/+87
| |
* | Add tests.chriseth2018-12-0614-3/+417
| |
* | Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactorchriseth2018-12-068-20/+16
|\ \ | |/ |/| [2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
| * liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and ↵Christian Parpart2018-12-068-20/+16
| | | | | | | | making use of new SourceLocation's CharStream knowledge
* | Extend capabilities of the generic commandline test.chriseth2018-12-0619-13/+25
| |
* | Merge pull request #5514 from corollari/developchriseth2018-12-062-1/+2
|\ \ | | | | | | Remove unary + from the type system
| * | Update testAlbert2018-12-061-1/+1
| | |
| * | Fix #5470Albert2018-12-061-0/+1
| | | | | | | | | | | | Remove unary + from the type system
* | | Remove `w` parameter for toHex.chriseth2018-12-064-6/+6
|/ /
* | add a 'readable' format for large hex valuesKevin Kelley2018-12-068-10/+154
| |
* | Tests for SSAValueTracker ignoring function call on rhsMathias Baumann2018-12-062-0/+26
| |
* | Merge pull request #5593 from ethereum/issue-5384chriseth2018-12-061-0/+14
|\ \ | | | | | | Fix expression simplifier asserting on default values
| * | Test for unhandled default values in expression simplifierMathias Baumann2018-12-051-0/+14
| | |
* | | Merge pull request #5592 from ethereum/fix-issue-5446chriseth2018-12-051-1/+1
|\ \ \ | |_|/ |/| | Relax assertion about jumps in loose mode
| * | Relax assertion about jumps in loose modeMathias Baumann2018-12-051-1/+1
| |/
* | Merge pull request #5390 from ethereum/smt_one_loopchriseth2018-12-0517-8/+177
|\ \ | |/ |/| [SMTChecker] Unroll loops once
| * [SMTChecker] Loops are unrolled onceLeonardo Alt2018-12-0417-8/+177
| |
* | Builtin functions for yul analysis.chriseth2018-12-041-0/+19
| |
* | Tests for parser for builtins.chriseth2018-12-041-0/+17
| |
* | Use dialect option in yul parser tests.chriseth2018-12-041-11/+13
| |
* | Merge pull request #5573 from ethereum/builtinschriseth2018-12-044-10/+10
|\ \ | | | | | | [Yul] Introduce the concept of builtin functions.
| * | Introduce the concept of builtin functions.chriseth2018-12-044-10/+10
| |/
* / Properly recurse in ForLoopInitRewriterDaniel Kirchner2018-12-042-5/+53
|/
* Do not stop if there is more than one error.chriseth2018-12-041-1/+2
|
* Improve yul error messages around number of arguments and variables.chriseth2018-12-042-6/+3
|
* Fix internal compiler error for unimplemented base contract function.Anurag Dashputre2018-12-032-0/+20
|
* Merge pull request #5341 from ethereum/optimizeAssemblyCommandlinechriseth2018-12-031-4/+39
|\ | | | | Apply the optimize commandline parameter to assembly mode.
| * Improves assembly output commandline tests.Erik Kundt2018-12-011-2/+28
| |
| * Adds tests for --optimize in assembly mode.Erik Kundt2018-12-011-4/+13
| |
* | Merge pull request #5557 from ↵chriseth2018-12-035-0/+33
|\ \ | | | | | | | | | | | | ethereum/fixInterfaceImplementedByPublicStateVariable Public state variables are implementing external functions.
| * | Public state variables are implementing external functions.chriseth2018-12-035-0/+33
| |/
* | Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoringchriseth2018-12-0112-101/+111
|\ \ | |/ |/| [1/3] SourceLocation related refactoring.
| * liblangutil: SourceLocation: Retricts == and != operatorChristian Parpart2018-12-011-1/+2
| |
| * liblangutil: Scanner: remove superfluous sourceName field (it's in ↵Christian Parpart2018-12-014-17/+17
| | | | | | | | | | | | | | CharStream already) Also, ParserBase::sourceName() was dead code. Eliminating it should increase test coverage (how sneaky) :-)
| * liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream ↵Christian Parpart2018-12-014-26/+35
| | | | | | | | | | | | source, eliminating sourceName Also, adapted affecting code to those changes.
| * liblangutil: extends CharStream to know about the respective (file-)name ↵Christian Parpart2018-11-299-75/+75
| | | | | | | | (and adapt codebase to it)
* | Test.chriseth2018-11-302-0/+26
| |
* | Merge pull request #5550 from ethereum/moveSomeTestschriseth2018-11-3011-0/+0
|\ \ | | | | | | Move inline array tests.
| * | Move inline array tests.chriseth2018-11-3011-0/+0
| | |
* | | Merge pull request #5548 from ethereum/fixMemberAccesschriseth2018-11-302-0/+27
|\ \ \ | | | | | | | | Fix bug related to state variables of function type accessed via base contract.
| * | | Fix bug related to state variables of function type accessed via base contract.chriseth2018-11-302-0/+27
| |/ /
* / / Disallow inline arrays of mapping type.chriseth2018-11-301-0/+8
|/ /
* | Report deprecation error on functions sha3 and suicide also without call.Leonardo Alt2018-11-297-2/+58
| |
* | Fix ICE when function type struct parameter has field of non-existent typeLeonardo Alt2018-11-292-0/+19
| |
* | Merge pull request #5526 from ethereum/fixGetterNewCoderchriseth2018-11-294-0/+32
|\ \ | |/ |/| Fix: Disallow structs in getters for old encoder.
| * Tests.chriseth2018-11-284-0/+32
| |
* | Remove boost test checks from SMTCheckerJSONTestLeonardo Alt2018-11-281-31/+56
|/
* Tests.chriseth2018-11-271-0/+257
|
* Use yul parser in assembly stack.chriseth2018-11-271-3/+6
|
* Merge pull request #5382 from ethereum/libraryMappingPublicchriseth2018-11-278-14/+88
|\ | | | | Allow mapping arguments for public and external library functions.
| * Allow mapping arguments for public and external library functions.Daniel Kirchner2018-11-268-14/+88
| |
* | Changelog entry and tests.chriseth2018-11-262-0/+11
| |
* | Tests.Daniel Kirchner2018-11-269-0/+166
|/
* Merge pull request #5486 from ethereum/allowExternalPublicOverridechriseth2018-11-264-1/+32
|\ | | | | Allow external public override
| * Changelog entry and tests.chriseth2018-11-264-1/+32
| |
* | Merge pull request #5494 from ethereum/scanner-error-handlingchriseth2018-11-268-11/+16
|\ \ | | | | | | Improved Scanner error diagnostics.
| * | Adapting tests to Scanner's lexical error diagnostics change.Christian Parpart2018-11-248-30/+32
| | |
| * | adapt to latest code changesLazaridis2018-11-248-23/+26
| | |
* | | Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatterchriseth2018-11-266-7/+7
|\ \ \ | |_|/ |/| | Moving SourceReferenceFormatter into langutil namespace.
| * | Moving SourceReferenceFormatter into langutil namespace.Christian Parpart2018-11-246-7/+7
| |/
* / decouple TestCase class from test/libsolidityLazaridis2018-11-256-5/+5
|/
* Merge pull request #5491 from ethereum/libyul-as-librarychriseth2018-11-249-80/+64
|\ | | | | Libyul as static library (version 3 ;( )
| * Isolating libyul library API into its own namespace `yul`.Christian Parpart2018-11-238-55/+42
| |
| * CMake: Isolate libyul into its own static libraryChristian Parpart2018-11-231-1/+1
| |
| * Reorder some include files and group <libyul/>'s together (as much as possible)Christian Parpart2018-11-233-9/+6
| |
| * Rewrite header paths to adapt to recent `git mv` of libsolidity/inlineasm to ↵Christian Parpart2018-11-236-16/+16
| | | | | | | | libyul
* | Add SMTChecker tests for standard JSONLeonardo Alt2018-11-2311-2/+255
|/
* Merge pull request #5451 from ethereum/bound_function_testschriseth2018-11-234-0/+43
|\ | | | | Add assert and tests for bound functions
| * Add assert and tests for bound functionsLeonardo Alt2018-11-224-0/+43
| |
* | Organize smt tests in subdirectoriesLeonardo Alt2018-11-2246-0/+0
| |
* | Remove pragma ABIEncoderV2 from smt testLeonardo Alt2018-11-221-6/+8
| |
* | Drop numbering in front of the SMTChecker testsAlex Beregszaszi2018-11-2246-0/+0
| |
* | Move most of SMTChecker tests from C++ to isoltestAlex Beregszaszi2018-11-2247-593/+489
|/ | | | But keep divison in C++ because results differ between different solvers
* Merge pull request #5427 from ethereum/liblangutilchriseth2018-11-2237-56/+86
|\ | | | | Factor out langutil, a new static library that is shared between libyul/libsolidity
| * Introduce namespace `langutil` in liblangutil directory.Christian Parpart2018-11-2227-25/+52
| | | | | | | | | | | | | | Also: - Use {}-style list initialisation for SourceLocation construction - Introduce new system includes - Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
| * Isolating files shared between Yul- and Solidity language frontend.Christian Parpart2018-11-2225-35/+38
| |
* | Fix constructor in AuctionRegistrarAlex Beregszaszi2018-11-221-1/+1
|/
* LLL: implement WITH keywordAlex Beregszaszi2018-11-211-0/+13
|
* Merge pull request #5444 from Mordax/issue-5168-rmvirtualAlex Beregszaszi2018-11-212-6/+6
|\ | | | | Removing redundant virtual from override function declaration
| * Removing redundant virtual from override function declarationmordax2018-11-212-6/+6
| | | | | | | | | | | | Remove trailing whitespace Remove changelog change
* | Merge pull request #5355 from ethereum/yul-forloop-pre-rewritechriseth2018-11-215-1/+75
|\ \ | |/ |/| [Yul] Implements a pass to rewrite for-loop's pre block into the parent's Block
| * [Yul] Implements a pass to rewrite for-loop's pre block into the parent's Block.Christian Parpart2018-11-165-1/+75
| |
* | [SMTChecker] Support bound function callsLeonardo Alt2018-11-194-0/+78
| |
* | [SMTChecker] Implement uninterpreted functions and use it for blockhash()Leonardo Alt2018-11-151-2/+6
|/
* Do not perform cleanup on unsigned integers when loading from calldata.chriseth2018-11-151-1/+1
|
* Merge pull request #5410 from ethereum/lll-buildchriseth2018-11-144-3/+12
|\ | | | | Do not build LLL unless requested via the LLL cmake option
| * Move LLL tests into a single directoryAlex Beregszaszi2018-11-142-0/+0
| |
| * Do not build tests for LLL if disabledAlex Beregszaszi2018-11-142-3/+12
| |
* | Fix commandline tests.chriseth2018-11-141-1/+1
|/
* Use latest solcjs and replace compileStandard by compile.chriseth2018-11-131-1/+12
|
* Remove old libsolc API (compileJSON, compileJSONMulti, compileJSONCallback)Alex Beregszaszi2018-11-132-141/+4
|
* LLL: ensure assembly tests have the correct argumentsAlex Beregszaszi2018-11-131-168/+168
|
* LLL: add test which has a sub assembly without a forced STOPAlex Beregszaszi2018-11-131-0/+14
|
* LLL bytecode is padded by STOP in testsAlex Beregszaszi2018-11-131-239/+239
|
* LLL: do not wrap opcode tests into sequenceAlex Beregszaszi2018-11-131-239/+239
|
* Update tests.chriseth2018-11-131-66/+66
|
* Merge pull request #5406 from ethereum/uninitializedStorageUnimplementedchriseth2018-11-132-0/+8
|\ | | | | Ignore unimplemented functions for detecting uninitialized storage returns.
| * Ignore unimplemented functions for storage returns.Daniel Kirchner2018-11-132-0/+8
| |
* | Merge pull request #5333 from ethereum/joinPerformancechriseth2018-11-131-0/+654
|\ \ | | | | | | [Yul] Use map join algorithm for performance.
| * | Remove variables that go out of scope from data structure.chriseth2018-11-131-139/+170
| | |
| * | Use map join algorithm for performance.chriseth2018-11-131-0/+623
| |/
* / Deterministic YulStringRepository using string hashes.Daniel Kirchner2018-11-133-11/+10
|/
* Remove trailing whitespace.chriseth2018-11-122-2/+2
|
* Refactor of bool TypeChecker::visit(FunctionCall const& _functionCall).Kristofer Peterson2018-11-103-1/+11
| | | | | | Visit method now cleanly determines if node represents a function call, struct construction or type conversion. Type checking, validation and error message logic is moved to separate methods.
* Merge pull request #5128 from ethereum/breakUnbreakchriseth2018-11-094-5/+74
|\ | | | | [Yul] Test case that shows that break / unbreak are more or less inverse
| * Test case that shows that break/unbreak are more or less inverse.chriseth2018-11-094-5/+74
| |
* | Reset yul string repository.chriseth2018-11-091-0/+2
| |
* | Merge pull request #5265 from ethereum/cleanupsha3chriseth2018-11-094-4/+4
|\ \ | |/ |/| Simplify sha3.
| * Renamed SHA3.{h,cpp} files.chriseth2018-10-184-4/+4
| |
* | Remove side-effect-free statements.chriseth2018-11-092-3/+9
| |
* | Merge pull request #5325 from ethereum/fixDataFlowchriseth2018-11-082-0/+104
|\ \ | | | | | | [Yul] Fix data flow analyzer for function definitions.
| * | Fix data flow analyzer for function definitions.chriseth2018-11-082-0/+104
| | |
* | | Merge pull request #5365 from ethereum/improveNameDispenserchriseth2018-11-0813-63/+63
|\ \ \ | | | | | | | | [Yul] Use single counter for name dispenser for performance reasons.
| * | | Use single counter for name dispenser for performance reasons.chriseth2018-11-0813-63/+63
| | | |
* | | | Merge pull request #5366 from ethereum/addVarDeclchriseth2018-11-081-1/+5
|\ \ \ \ | | | | | | | | | | [Yul] Add VarDeclPropagator to full suite and interactive optimizer.
| * | | | Add VarDeclPropagator to full suite and interactive optimizer.chriseth2018-11-081-1/+5
| | |/ / | |/| |
* | | | Merge pull request #5351 from ethereum/functionTypeConversionchriseth2018-11-0813-0/+128
|\ \ \ \ | | | | | | | | | | Relax type equality requirement of function types during conversion in code generation.
| * | | | Function type conversion test cases.Daniel Kirchner2018-11-0813-0/+128
| | | | |
* | | | | Merge pull request #5348 from ethereum/boostRationalNegativeDenominatorFixchriseth2018-11-081-0/+5
|\ \ \ \ \ | |_|/ / / |/| | | | Fix negative denominator in ``boost::rational`` during exponentiation.
| * | | | Fix negative denominator in ``boost::rational`` during exponentiation.Daniel Kirchner2018-11-061-0/+5
| |/ / /
* | | | Merge pull request #5327 from ethereum/rematerializerSmallchriseth2018-11-081-1/+5
|\ \ \ \ | |_|/ / |/| | | Add rematerializer to interactive optimizer.
| * | | Add rematerializer to interactive optimizer.chriseth2018-10-281-1/+5
| | | |
* | | | Performance: Replace string by special single-copy YulString class.chriseth2018-11-081-4/+4
| | | |
* | | | Eliminate `byte`-typedef and use `uint8_t` in all their places instead.Christian Parpart2018-11-073-154/+154
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 :-)
* | | Remove uses of boost::rational with negative denominator, which breaks with ↵Daniel Kirchner2018-11-061-2/+0
| | | | | | | | | | | | boost 1.68.
* | | Fixes crash while encoding too large arrays.Erik Kundt2018-10-303-0/+26
| | |
* | | Yul: Implements empty-var-decl-propagationChristian Parpart2018-10-269-0/+105
|/ /
* | Merge pull request #5273 from ethereum/interactiveOptchriseth2018-10-252-0/+228
|\ \ | | | | | | [Yul] Interactive optimizer tool
| * | Add redundant assign and ssa.chriseth2018-10-241-1/+10
| | |
| * | Interactive optimizer tool.chriseth2018-10-242-0/+219
| | |
* | | Merge pull request #5283 from ethereum/smt_fixed_byteschriseth2018-10-253-8/+16
|\ \ \ | | | | | | | | [SMTChecker] Support FixedBytes
| * | | Grouping of symbolic variables in the same file and support to FixedBytesLeonardo Alt2018-10-253-8/+16
| |/ /
* | | Merge pull request #5242 from ethereum/someCheckschriseth2018-10-254-0/+44
|\ \ \ | | | | | | | | Some well-formedness checks for the Yul AST.
| * | | Added some tests.chriseth2018-10-244-0/+44
| | | |
* | | | Merge pull request #5271 from ethereum/fullSuitechriseth2018-10-252-0/+29
|\ \ \ \ | | | | | | | | | | [Yul] Full suite tests.
| * | | | Full suite tests.chriseth2018-10-252-0/+29
| | |/ / | |/| |
* | | | Merge pull request #5296 from ethereum/setPragmaToArbitrarychriseth2018-10-2592-2012/+52
|\ \ \ \ | |/ / / |/| | | Set pragma to arbitrary
| * | | Remove pragma changer.chriseth2018-10-241-2/+0
| | | |
| * | | Set pragma to arbitrary.chriseth2018-10-2452-52/+52
| | | |
| * | | Only run zeppelin as external tests.chriseth2018-10-2439-1958/+0
| | | |
* | | | Merge pull request #5272 from ethereum/smt_special_varschriseth2018-10-2410-17/+128
|\ \ \ \ | | | | | | | | | | [SMTChecker] Support msg.*, tx.*, block.*, gasleft and blockhash
| * | | | Add gasleft constraint and use full member access nameLeonardo Alt2018-10-232-0/+14
| | | | |
| * | | | [SMTChecker] Support msg.*, tx.*, block.*, gasleft and blockhashLeonardo Alt2018-10-199-17/+114
| | |/ / | |/| |
* | | | Redundant assign eliminator.chriseth2018-10-2420-0/+413
| |/ / |/| |
* | | Refactor `solidity::Token` into an `enum class` with `TokenTraits` helper ↵Christian Parpart2018-10-221-3/+3
|/ / | | | | | | namespace
* | Merge pull request #5256 from ethereum/lvalueCleanupchriseth2018-10-191-0/+18
|\ \ | | | | | | Lvalue cleanup
| * | Add a test for delete x.lengthchriseth2018-10-181-0/+18
| | |
* | | Merge pull request #5267 from ethereum/ssatransformchriseth2018-10-1912-0/+314
|\ \ \ | | | | | | | | SSA transform - first step.
| * | | SSA transform - first step.chriseth2018-10-1912-0/+314
| | |/ | |/|
* | | Merge pull request #5260 from ethereum/flattenMorechriseth2018-10-191-0/+22
|\ \ \ | | | | | | | | Flatten more.
| * | | Flatten more.chriseth2018-10-181-0/+22
| | |/ | |/|
* | | Merge pull request #5258 from ethereum/coverage2chriseth2018-10-192-0/+56
|\ \ \ | | | | | | | | Add some simplification tests for operations.
| * | | Add some simplification tests for operations.chriseth2018-10-182-0/+56
| |/ /
* | | Merge pull request #5213 from Mordax/issue-5103chriseth2018-10-191-0/+15
|\ \ \ | | | | | | | | Tests for flipping signs on signed type edge case
| * | | Added test for flipping signs on signed type edge casemordax2018-10-161-0/+15
| | | |
* | | | Merge pull request #5270 from ethereum/inlineFlexiblechriseth2018-10-191-1/+1
|\ \ \ \ | | | | | | | | | | Make full inliner more flexible.
| * | | | Make full inliner more flexible.chriseth2018-10-181-1/+1
| | |_|/ | |/| |
* | | | Fix a bug in CSE where a variable that was already out of scope was used.chriseth2018-10-181-1/+1
| | | |
* | | | Test case that shows a CSE bug related to scopes.chriseth2018-10-181-0/+25
|/ / /
* | | Merge pull request #5240 from ethereum/limitDispenserSizechriseth2018-10-183-6/+40
|\ \ \ | |_|/ |/| | [Yul] Limit name length created by dispenser
| * | Limit size of generated names and add convenience constructors.chriseth2018-10-173-6/+40
| | |
* | | Merge pull request #5232 from ethereum/inlineHeuristicchriseth2018-10-173-0/+97
|\ \ \ | |/ / |/| | [Yul] Add simple inlining heuristic
| * | Use metrics in the full inliner.chriseth2018-10-173-0/+97
| | |
* | | Handle externally supplied variables correctly in disambiguator.chriseth2018-10-171-1/+1
|/ /
* | Inline each function separately.chriseth2018-10-162-41/+16
| |
* | Test for crash via inlining.chriseth2018-10-161-0/+84
| |
* | New full inliner.chriseth2018-10-1610-56/+124
| |
* | Add a "full simplify" test that applies multiple elementary transforms.chriseth2018-10-1617-0/+198
| |
* | New simplifier via broken expressions.chriseth2018-10-161-1/+1
| |
* | Merge pull request #5225 from mestorlx/issue5007chriseth2018-10-161-0/+8
|\ \ | |/ |/| Prevent crash in case there are no contracts
| * fix issue##5007mestorlx2018-10-161-0/+8
| |
* | Merge pull request #5226 from ethereum/chriseth-patch-3chriseth2018-10-161-1/+2
|\ \ | | | | | | Correct include path