aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/codegen
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoringchriseth2018-12-011-1/+1
|\ | | | | [1/3] SourceLocation related refactoring.
| * liblangutil: Scanner: remove superfluous sourceName field (it's in ↵Christian Parpart2018-12-011-1/+1
| | | | | | | | | | | | | | CharStream already) Also, ParserBase::sourceName() was dead code. Eliminating it should increase test coverage (how sneaky) :-)
| * liblangutil: extends CharStream to know about the respective (file-)name ↵Christian Parpart2018-11-291-1/+1
| | | | | | | | (and adapt codebase to it)
* | Fix bug related to state variables of function type accessed via base contract.chriseth2018-11-301-3/+3
| |
* | Replace IntegerType(256) with static function IntegerType::uint256()hydai2018-11-294-19/+19
|/
* Allow mapping arguments for public and external library functions.Daniel Kirchner2018-11-261-0/+2
|
* Merge pull request #5404 from ethereum/jumpFixeschriseth2018-11-262-2/+8
|\ | | | | Annotate jump from calldata decode to function as "jump in".
| * Use "in" tag for jumps from unpacker to function.chriseth2018-11-262-2/+8
| |
* | Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatterchriseth2018-11-261-1/+1
|\ \ | | | | | | Moving SourceReferenceFormatter into langutil namespace.
| * | Moving SourceReferenceFormatter into langutil namespace.Christian Parpart2018-11-241-1/+1
| |/
* | Merge pull request #5485 from ethereum/refactorCallableFunctionchriseth2018-11-261-1/+1
|\ \ | |/ |/| Refactor callable function
| * Use callable function for virtual resolution.chriseth2018-11-221-1/+1
| |
* | Isolating libyul library API into its own namespace `yul`.Christian Parpart2018-11-232-11/+11
| |
* | Reorder some include files and group <libyul/>'s together (as much as possible)Christian Parpart2018-11-232-6/+5
| |
* | Rewrite header paths to adapt to recent `git mv` of libsolidity/inlineasm to ↵Christian Parpart2018-11-232-6/+6
| | | | | | | | libyul
* | Add assert and tests for bound functionsLeonardo Alt2018-11-221-0/+3
|/
* Introduce namespace `langutil` in liblangutil directory.Christian Parpart2018-11-227-22/+29
| | | | | | | 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-228-10/+10
|
* Removing redundant virtual from override function declarationmordax2018-11-213-38/+38
| | | | | | Remove trailing whitespace Remove changelog change
* Do not perform cleanup on unsigned integers when loading from calldata.chriseth2018-11-151-1/+8
|
* Merge pull request #5265 from ethereum/cleanupsha3chriseth2018-11-091-1/+1
|\ | | | | Simplify sha3.
| * Renamed SHA3.{h,cpp} files.chriseth2018-10-181-1/+1
| |
* | Merge pull request #5351 from ethereum/functionTypeConversionchriseth2018-11-081-2/+16
|\ \ | | | | | | Relax type equality requirement of function types during conversion in code generation.
| * | Function type conversion test cases.Daniel Kirchner2018-11-081-4/+16
| | |
| * | Relax identity requirement of function type conversions during code generation.Daniel Kirchner2018-11-061-0/+2
| | |
* | | Performance: Replace string by special single-copy YulString class.chriseth2018-11-081-2/+3
|/ /
* | Merge pull request #5316 from lazaridiscom/4891-memory-store-assertschriseth2018-10-291-21/+37
|\ \ | | | | | | refine memory-store assertions, closes #4891
| * | refine memory-store assertions, closes #4891Lazaridis2018-10-271-21/+37
| | |
* | | Refactor `solidity::Token` into an `enum class` with `TokenTraits` helper ↵Christian Parpart2018-10-222-26/+26
| | | | | | | | | | | | namespace
* | | Merge pull request #5256 from ethereum/lvalueCleanupchriseth2018-10-191-42/+7
|\ \ \ | | | | | | | | Lvalue cleanup
| * | | Removed unreachable cases in LValue.cpp.chriseth2018-10-181-42/+7
| | |/ | |/|
* / | Assert about some removed language concepts in the code generator.chriseth2018-10-181-10/+9
|/ /
* | Prevent externally used functions from being removed.chriseth2018-10-175-10/+29
| |
* | Renaming namespace dev::julia to dev::yul.Christian Parpart2018-10-152-10/+10
|/
* Use empty() instead of size() == 0Alex Beregszaszi2018-10-091-1/+1
|
* Fix typos.chriseth2018-10-041-1/+1
|
* Merge pull request #4962 from anurag-git/anurag_issue_3667-1chriseth2018-10-013-13/+0
|\ | | | | Removed default case from "ExpressionCompiler::visit(FunctionCall...)".
| * Removing extra default cases to force compile time error, instead of runtime.Anurag Dashputre2018-09-302-11/+0
| |
| * Removed default case from "ExpressionCompiler::visit(FunctionCall...)".Anurag Dashputre2018-09-131-2/+0
| |
* | fix typoliangdzou2018-09-201-3/+3
| |
* | fixing rebase conflictsJordan Last2018-09-141-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | add ElementaryTypes::BytesMemory and ElementaryTypes::StringMemory fix rebase conflicts fixing rebase conflicts use make_shared instead of new fix tabs and StateMutability parameter create address and addressType functions, fix spaces in comment fix typo and switch nonpayable to payable fix spaces fix comment again
* | Add payable and non-payable state mutability to AddressType.Daniel Kirchner2018-09-132-5/+20
|/
* Always perform cleanup for EXP.chriseth2018-09-101-1/+3
|
* Split IntegerType into IntegerType and AddressType.Daniel Kirchner2018-09-053-17/+52
|
* Merge pull request #4895 from ethereum/abidecodesinglechriseth2018-09-051-1/+5
|\ | | | | Fix abi.decode returning single value.
| * Fix abi.decode returning single value.chriseth2018-09-051-1/+5
| |
* | Remove trailing whitespace.Daniel Kirchner2018-09-041-1/+1
|/
* Add return data to bare calls.Daniel Kirchner2018-09-041-22/+45
|
* Remove trailing whitespace for all files in the repository.Daniel Kirchner2018-09-041-6/+6
|
* Removed unused "FunctionType::Kind::CallCode" from Types.h and all its usageAnurag Dashputre2018-08-231-4/+2
|
* Merge pull request #4825 from ethereum/expressionCompBareCallchriseth2018-08-161-5/+5
|\ | | | | More safeguards for (library) function types.
| * More safeguards for (library) function types.chriseth2018-08-151-5/+5
| |
* | Add ``staticcall`` to ``address``.Daniel Kirchner2018-08-151-3/+8
|/
* Add abi.decode(bytes data, (...))chriseth2018-08-151-0/+21
|
* Rename FunctionKind SHA3 to KECCAK256 (as the instruction was renamed in ↵Alex Beregszaszi2018-08-091-1/+1
| | | | libevmasm)
* Remove code generation for Throw statementAlex Beregszaszi2018-08-091-4/+2
| | | | It is disallowed in the type system.
* Merge pull request #4753 from mattaereal/boost-to-string-patchAlex Beregszaszi2018-08-081-1/+1
|\ | | | | Replace boost:lexical_cast<std::string> for std::to_string.
| * Removing std:: from std::to_string and include for boost/lexical_castMatías Aereal Aeón2018-08-081-1/+1
| |
* | Remove remaining instances of ``fillRight`` left over from tuple wildcards ↵Daniel Kirchner2018-08-081-10/+2
| | | | | | | | assignments.
* | Remove clone feature.chriseth2018-08-074-73/+0
| |
* | FixedBytes(0) is invalid, do not check for it in ABIEncoderV2Alex Beregszaszi2018-08-061-1/+2
| |
* | Renamed FunctionType::hasEqualArgumentTypes to ↵Jesse Busman2018-08-061-1/+1
|/ | | | FunctionType::hasEqualParameterTypes
* Merge pull request #4327 from ethereum/document-internalschriseth2018-08-021-0/+4
|\ | | | | Properly explain all the analsys steps in CompilerStack
| * Properly explain all the analsys steps in CompilerStackAlex Beregszaszi2018-07-311-0/+4
| |
* | Isolate determining the encoding type into its own function.chriseth2018-08-012-26/+9
|/
* Fix abiDecode commentLeonardo Alt2018-07-241-3/+3
|
* Changes in ExpressionCompilerLeonardo Alt2018-07-191-50/+39
|
* Disallow multi variable declarations with mismatching number of values.Daniel Kirchner2018-07-131-8/+7
|
* Merge pull request #4479 from ethereum/fixFixedPointCrashAlex Beregszaszi2018-07-121-3/+7
|\ | | | | Fix handling of fixed point types in arithmetics.
| * Fix handling of fixed point types in arithmetics.chriseth2018-07-111-3/+7
| |
* | Merge pull request #4428 from ethereum/enforce_staticcall_viewchriseth2018-07-121-5/+1
|\ \ | | | | | | [BREAKING] Enforce STATICCALL for view and pure
| * | Use STATICCALL for view and pureLeonardo Alt2018-07-111-5/+1
| |/
* | Merge pull request #4083 from ethereum/variable_stack_slotchriseth2018-07-126-42/+129
|\ \ | | | | | | [BREAKING] Allocate local variables according to their scope
| * | Added assertion and tests suggestionsLeonardo Alt2018-07-113-3/+17
| | |
| * | Add more tests and assertionsLeonardo Alt2018-07-113-0/+4
| | |
| * | Added tests and review suggestionsLeonardo Alt2018-07-114-22/+22
| | |
| * | [050] Reserving and popping local vars in their scopeLeonardo Alt2018-07-114-41/+110
| | |
* | | Merge pull request #4472 from ethereum/complexCalldataArraysNotYetImplementedchriseth2018-07-121-1/+2
|\ \ \ | |_|/ |/| | Throw unimplemented exception for complex calldata arrays.
| * | Throw unimplemented exception for complex calldata arrays.chriseth2018-07-111-1/+2
| |/
* / Code, Changelog, ReleaseChecklist: Fix typos.Cryptomental2018-07-113-5/+5
|/ | | | Refs: #4442
* Fix allocation of byte arrays.chriseth2018-07-051-1/+1
|
* Merge pull request #4224 from ethereum/revert_wrong_calldatachriseth2018-07-023-48/+34
|\ | | | | [BREAKING] Revert if calldata has wrong size
| * Revert if calldata is too short or points out of boundsLeonardo Alt2018-06-263-48/+34
| |
* | Save double encode call for sha3.chriseth2018-06-251-8/+16
| |
* | Bare functions take single bytes argument.chriseth2018-06-251-56/+15
| |
* | Single bytes argument.chriseth2018-06-251-11/+28
|/ | | | | In 0.5.0 mode, only accept a single bytes argument for ``.call``, ``keccak256`` and others and do not pad when encoding.
* Change commentsAlex Beregszaszi2018-06-143-5/+5
|
* Merge pull request #4272 from ethereum/assert-break-continuechriseth2018-06-131-4/+4
|\ | | | | Fail if break/continue statements are used outside for/while loops in ContractCompiler
| * Fail if break/continue statements are used outside for/while loops in ↵Alex Beregszaszi2018-06-121-4/+4
| | | | | | | | ContractCompiler
* | Properly pad data from calldata.chriseth2018-06-131-6/+11
| |
* | Extend explanatory remark and argue using bitwise operations instead of ↵Daniel Kirchner2018-06-121-6/+14
| | | | | | | | rounding.
* | Use proper SAR for signed right shifts and emulate on pre-constantinople.Daniel Kirchner2018-06-121-4/+21
|/
* Fixes assembly bug and adds tests to cover it.Erik Kundt2018-05-301-5/+4
|
* Adds syntax tests, documentation and changelog entry.Erik Kundt2018-05-302-2/+2
| | | | Refines comment for array utility function.
* Improves assembly and adds more tests.Erik Kundt2018-05-302-32/+14
|
* Implements pop() for byte arrays.Erik Kundt2018-05-291-10/+65
|
* Implements pop() for value type arrays.bitshift2018-05-293-1/+64
|
* Fix continue inside do-while.Daniel Kirchner2018-05-171-12/+16
|
* Fix revert with reason coming from a string variableAlex Beregszaszi2018-05-092-1/+4
|
* fixed grammar in error in CompilerUtils.cpp line 399, 'less variables.' ↵njwest2018-05-071-3/+3
| | | | should be 'fewer variables.'
* Change bytes to unsigned in FixedBytesTypedaniel2018-05-041-2/+2
|
* Removed signed shift right from the utilities.chriseth2018-05-016-24/+24
|
* Do not use SAR instead of SDIV in shifts because it rounds differentlyAlex Beregszaszi2018-05-013-7/+10
|
* Use native shift instructions in ABIFunctions on ConstantinopleAlex Beregszaszi2018-05-013-26/+70
|
* Use native shift instructions on ConstantinopleAlex Beregszaszi2018-05-012-4/+19
|
* Add virtual destructor in LValue class.Alexander Arlt2018-04-251-0/+1
|
* Remove redundant cleanup for abi.encode.Alex Beregszaszi2018-04-161-2/+1
|
* Properly force-clean for shortening bytesXX conversions.chriseth2018-04-161-10/+9
|
* Merge pull request #3364 from ethereum/revertWithReasonchriseth2018-04-136-12/+76
|\ | | | | Revert with reason
| * Use error signature for revert data.chriseth2018-04-123-20/+24
| |
| * Only forward returndata if EVM version supports it.chriseth2018-04-122-1/+3
| |
| * Bubble up error messages.chriseth2018-04-125-11/+26
| |
| * Allow error string for ``require``.chriseth2018-04-121-0/+26
| |
| * Code generator for revert with reason string.chriseth2018-04-121-1/+18
| |
* | Add abi.encode, abi.encodePacked, abi.encodeWithSelector and ↵Alex Beregszaszi2018-04-121-0/+102
|/ | | | abi.encodeWithSignature.
* Error when using no parentheses in modifier-style constructor calls.Daniel Kirchner2018-04-101-3/+6
|
* Move constructor argument override check to TypeChecker and reuse ↵Daniel Kirchner2018-04-092-28/+13
| | | | annotations in ContractCompiler.
* Merge pull request #3824 from ethereum/baseArgumentsEmptyParenthesisDaniel Kirchner2018-04-051-2/+2
|\ | | | | Error when using empty parentheses for base class constructors that r…
| * Error when using empty parenthesis for base class constructors that require ↵Daniel Kirchner2018-04-051-2/+2
| | | | | | | | arguments.
* | More specific push implementation.chriseth2018-04-043-13/+71
| |
* | Create empty dynamic memory arrays more efficiently.chriseth2018-04-042-8/+29
|/
* Merge pull request #3693 from ethereum/optimizeMLOADAlex Beregszaszi2018-04-032-25/+32
|\ | | | | Optimize across MLOAD if MSIZE is not used.
| * Optimize across MLOAD if MSIZE is not used.chriseth2018-04-032-25/+32
| |
* | Fix: Treat empty base constructor argument list as not provided.chriseth2018-04-031-3/+5
|/
* Prevent encoding of weird types and support packed encoding of external ↵chriseth2018-03-291-1/+0
| | | | function types.
* Add runtimeOnly option to pushCombinedFunctionEntryLabelAlex Beregszaszi2018-03-273-8/+8
|
* Use shortcut for internal function calls to avoid runtime reference.chriseth2018-03-271-1/+23
|
* Decode dynamic data.chriseth2018-03-213-17/+47
|
* Move dynamic type removal out of the type system.chriseth2018-03-211-5/+12
|
* Simple size check for old ABI decoder.chriseth2018-03-213-32/+97
|
* Move the old ABI decoder code.chriseth2018-03-204-105/+106
|
* Merge pull request #3725 from ethereum/blockhashNoCallchriseth2018-03-151-0/+3
|\ | | | | Allow ``block.blockhash`` without it being called.
| * Allow ``block.blockhash`` without being called.chriseth2018-03-141-0/+3
| |
* | Bugfix in virtual lookup for modifiers in libraries.chriseth2018-03-133-5/+16
|/
* Properly skip cleanup if only enlarging storage array.chriseth2018-03-091-2/+2
|
* Warn about using loose inline assembly features as experimental 0.5.0 feature.chriseth2018-03-071-0/+1
|
* Use STATICCALL for pure function calls if EVM version supports it and 0.5.0 ↵chriseth2018-03-061-0/+9
| | | | is activated.
* Merge pull request #3652 from ethereum/gasleft_v2chriseth2018-03-061-5/+0
|\ | | | | Use StaticAnalyzer to deprecate msg.gas instead of conditionally remo…
| * Use StaticAnalyzer to deprecate msg.gas instead of conditionally removing it ↵Daniel Kirchner2018-03-061-5/+0
| | | | | | | | in MagicType.
* | Merge pull request #3599 from ethereum/sendAllGasOnByzantiumchriseth2018-03-061-10/+13
|\ \ | | | | | | Send all gas on byzantium
| * | Do not retain any gas in external calls (except if EVM version is set to ↵chriseth2018-03-061-10/+13
| | | | | | | | | | | | homestead).
* | | Merge pull request #3643 from ethereum/gasleftchriseth2018-03-061-0/+8
|\ \ \ | |/ / |/| / | |/ Move msg.gas to global function gasleft(). Closes #2971.
| * Style improvements.Daniel Kirchner2018-03-061-2/+5
| |
| * Move msg.gas to global function gasleft(). Closes #2971.Daniel Kirchner2018-03-051-1/+6
| |
* | Use EVM version in gas meter and optimizer.chriseth2018-03-054-5/+5
| |
* | Provide EVM version to assembly analysis.chriseth2018-03-021-0/+1
| |
* | Provide target EVM version in CompilerContext.chriseth2018-03-023-7/+17
|/
* Introduce emit statement.chriseth2018-02-222-0/+10
|
* Expect end of string at end of top-level block for assembly parser.chriseth2018-02-211-1/+1
|
* Make addmod and mulmod revert if the last argument is zero.chriseth2018-02-151-1/+5
|
* Allow `this.f.selector` to be pure.chriseth2018-02-131-0/+24
|
* Prevent libraries from being called.chriseth2018-01-194-3/+81
|
* Split inline assembly into loose and strict flavours.chriseth2018-01-062-4/+9
|
* Reset source location after using inline assembly.chriseth2018-01-041-0/+3
|
* Favour if over switch in ABI coder.chriseth2017-12-151-14/+14
|
* Cleanup and overflow checks for data pointers.chriseth2017-11-304-23/+47
|
* ABI decoder.chriseth2017-11-306-4/+503
|
* Use if statement in abi functions.chriseth2017-11-221-3/+3
|
* Add explanation to unimplemented assertionsAlex Beregszaszi2017-11-162-3/+3
|
* Do not accept truncated function selectors.chriseth2017-10-181-7/+4
|
* Allocate one byte per memory byte array element instead of 32.chriseth2017-10-171-2/+9
|
* Merge pull request #2982 from ethereum/encoderFixesAlex Beregszaszi2017-10-052-25/+18
|\ | | | | ABI encoder fixes and test.
| * Rename "compacted" to "fromStack".chriseth2017-10-042-22/+18
| |
| * ABI encoder fixes and test.chriseth2017-09-271-5/+2
| |
* | Merge pull request #3029 from ethereum/tanwisgasAlex Beregszaszi2017-10-051-0/+3
|\ \ | | | | | | Send all gas for 0.5.0.
| * | Send all gas for 0.5.0.chriseth2017-10-051-0/+3
| | |
* | | Merge pull request #2968 from ethereum/calldataencodedsizechriseth2017-10-051-0/+3
|\ \ \ | |/ / |/| | Add some asserts about calldata encoded size.
| * | Add some asserts about calldata encoded size.chriseth2017-10-041-0/+3
| | |
* | | Merge pull request #2962 from ethereum/optionalDebugInfoAsmchriseth2017-10-041-5/+16
|\ \ \ | | | | | | | | Debugging info in CompilerContext.
| * | | Debugging info in CompilerContext.chriseth2017-10-041-5/+16
| | | |
* | | | Better readable encoder assembly.chriseth2017-09-271-6/+28
| |_|/ |/| |
* | | Split encodeToMemory to packedEncode and abiEncodeAlex Beregszaszi2017-09-274-18/+41
| | |
* | | Make most of the parameters mandatory in encodeToMemoryAlex Beregszaszi2017-09-272-6/+6
| | |
* | | Ensure that address types are always declared as 160bitAlex Beregszaszi2017-09-273-6/+6
| |/ |/|
* | Simplify switch statements by refactoring internal break statementsAlex Beregszaszi2017-09-252-24/+24
| |
* | Avoid switch fallthrough in ExpressionCompilerAlex Beregszaszi2017-09-251-26/+32
| |
* | Avoid switch fallthrough in CompilerUtilsAlex Beregszaszi2017-09-251-6/+3
|/
* More verbose errors for generated assembly.chriseth2017-09-221-2/+18
|
* Mark functions staticAlex Beregszaszi2017-09-202-2/+2
|
* Ensure parameter names match between headers and implementationAlex Beregszaszi2017-09-201-2/+2
|
* Implement struct encoder.chriseth2017-09-163-6/+131
|
* Update tests and error messages.chriseth2017-09-161-1/+1
|
* Move ABI encoder into its own function.chriseth2017-09-165-66/+82
|
* Named assembly labels.chriseth2017-09-163-15/+8
|
* Rename .sig to .selector on function typesAlex Beregszaszi2017-09-131-1/+1
|
* Add sig member on function typeAlex Beregszaszi2017-09-131-1/+8
|
* Introduce assemblyStringAlex Beregszaszi2017-09-112-4/+4
|
* Do not return the stream in asssemblyStreamAlex Beregszaszi2017-09-112-4/+4
|
* Split out the JSON functionality from assembly.stream()Alex Beregszaszi2017-09-112-6/+15
|
* Merge pull request #2847 from ethereum/codegen-docsAlex Beregszaszi2017-08-293-1/+25
|\ | | | | Document more of the codegen features
| * Document more of the codegen featuresAlex Beregszaszi2017-08-293-1/+25
| |
* | Merge pull request #2833 from ethereum/statemutability-builtinschriseth2017-08-291-1/+1
|\ \ | | | | | | Mark all built in functions with appropriate statemutability
| * | Swap declaration/statemutability in FunctionType constructorAlex Beregszaszi2017-08-291-1/+1
| |/
* / Move all file specific globals to anonymous namespaceAlex Beregszaszi2017-08-291-0/+5
|/
* Mark to places fall-throughAlex Beregszaszi2017-08-252-0/+2
|
* Remove fallthrough from ArrayUtilsAlex Beregszaszi2017-08-251-3/+3
|
* Mark a lot of functions static (where possible)Alex Beregszaszi2017-08-222-2/+2
|
* Mark appropriate constructors explicitAlex Beregszaszi2017-08-223-3/+3
|
* Mark a lot of functions const (where possible)Alex Beregszaszi2017-08-226-9/+9
|
* Merge pull request #2704 from ethereum/newEncoderchriseth2017-08-147-10/+1296
|\ | | | | New ABI encoder
| * Experimental feature switch for ABI encoder.chriseth2017-08-143-2/+10
| |
| * Remove unused magic global feature.chriseth2017-08-142-10/+2
| |
| * Interface for new ABI encoder.chriseth2017-08-142-0/+40
| |
| * New ABI encoder.chriseth2017-08-142-0/+1246
| |
* | Remove constant/payable in all function typesAlex Beregszaszi2017-08-141-2/+1
|/
* .delegatecall() should always return a boolean of execution statusAlex Beregszaszi2017-08-021-1/+1
|
* Provide new account gas for low-level callcode/delegatecallAlex Beregszaszi2017-08-011-1/+1
|
* Rename Bare to BarecallAlex Beregszaszi2017-08-011-5/+5
|
* Fix for invalid clearing of memory in ecrecover.chriseth2017-07-281-1/+1
|
* Remove the need of jumping out of the fallbackAlex Beregszaszi2017-07-281-8/+4
|
* Merge pull request #2652 from ethereum/fixMultiModifierchriseth2017-07-272-6/+11
|\ | | | | Re-allow multiple modifiers per function.
| * Re-allow multiple modifiers per function.chriseth2017-07-272-6/+11
| |
* | Merge pull request #2645 from ethereum/assertsAlex Beregszaszi2017-07-272-14/+12
|\ \ | |/ |/| Use solAssert where possible
| * Use solAssert instead of boost throw where possibleAlex Beregszaszi2017-07-272-14/+12
| |
* | Report location on stack too deep if possibleAlex Beregszaszi2017-07-272-1/+7
|/
* Change fixed point types to have digit countVoR02202017-07-201-1/+1
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* Fix internal "variable already present" error.chriseth2017-07-051-0/+3
|
* Add assert to shift helperAlex Beregszaszi2017-07-031-0/+2
|
* Use shift helper in LValueAlex Beregszaszi2017-07-031-4/+2
|
* More uses of shift helperAlex Beregszaszi2017-07-031-6/+10
|
* Change shiftNumberOnStack to bitsAlex Beregszaszi2017-07-033-13/+13
|
* Use shift helperAlex Beregszaszi2017-07-032-8/+8
|
* Add shift helper to CompilerUtilsAlex Beregszaszi2017-07-032-0/+16
|
* Abort early if there is nothing to encode or decode.chriseth2017-06-302-3/+9
|
* Document appendFunctionSelectorAlex Beregszaszi2017-06-291-0/+4
|
* Stack adjustment and code generation for fallback function.chriseth2017-06-291-4/+6
| | | | This assumes that the fallback function does not have return parameters.
* Fix negative stack size checks.chriseth2017-06-282-0/+11
|
* Merge pull request #2459 from ethereum/noComparisonForSomeTypesAlex Beregszaszi2017-06-271-0/+1
|\ | | | | No comparison for some types
| * Disallow comparisons between some types.chriseth2017-06-261-0/+1
| |
* | Merge pull request #2453 from ethereum/memcopyAsForLoopAlex Beregszaszi2017-06-272-23/+20
|\ \ | |/ |/| Use for loop for assembly memcopy.
| * Comment about zero length.chriseth2017-06-271-0/+2
| |
| * Reformat.chriseth2017-06-261-6/+9
| |
| * Use for loop for assembly memcopy.chriseth2017-06-261-23/+15
| |
* | Merge pull request #2460 from ethereum/disallowMultiModifierAlex Beregszaszi2017-06-262-0/+5
|\ \ | |/ |/| Disallow invoking the same modifier multiple times.
| * Disallow invoking the same modifier multiple times.chriseth2017-06-242-0/+5
| |
* | Review suggestions.chriseth2017-06-241-1/+1
| |
* | Change invalid opcode to revert for input validation.chriseth2017-06-246-20/+52
|/
* Merge pull request #2444 from ethereum/parser-scannerAlex Beregszaszi2017-06-231-0/+1
|\ | | | | Avoid including Scanner.h in ParserBase.h
| * Avoid including Scanner.h in ParserBase.hAlex Beregszaszi2017-06-231-0/+1
| |
* | Fix ABI encoding of empty string literal.chriseth2017-06-221-1/+1
|/
* Merge interface/Exceptions and interface/UtilsAlex Beregszaszi2017-06-223-2/+3
|
* Move subroutine helpers from CompilerContext to AssemblyAlex Beregszaszi2017-06-151-3/+3
|
* Remove obsolete errorTag()Alex Beregszaszi2017-06-151-2/+0
|
* Use inline assembly directly and not via AsmStackAlex Beregszaszi2017-06-091-3/+17
|
* Remove error reporter from code generation phase.chriseth2017-06-081-5/+1
|
* Initial EVM1.5 assembly implementation.chriseth2017-06-082-7/+13
|
* Merge pull request #2317 from ethereum/keccak256chriseth2017-05-314-8/+8
|\ | | | | Use keccak256 in tests and replace the SHA3 instruction in assembly
| * Rename the SHA3 assembly instruction to KECCAK256Alex Beregszaszi2017-05-304-8/+8
| |
* | Refactor error reportingRhett Aultman2017-05-301-2/+3
|/ | | | | | | | | This commit introduces ErrorReporter, a utility class which consolidates all of the error logging functionality into a common set of functions. It also replaces all direct interactions with an ErrorList with calls to an ErrorReporter. This commit resolves issue #2209
* Adapt EVM codegen to new namespace.chriseth2017-05-262-9/+9
|