| Commit message (Expand) | Author | Age | Files | Lines |
* | CREATE2 opcode has been moved from 0xfb to 0xf5 | Alex Beregszaszi | 2018-09-19 | 1 | -1/+1 |
* | Merge pull request #4967 from ethereum/const-opt-cost | Alex Beregszaszi | 2018-09-18 | 3 | -10/+17 |
|\ |
|
| * | Move dataGas calculation helper to GasMeter | Alex Beregszaszi | 2018-09-18 | 3 | -10/+17 |
* | | Split simplification rules into two functions. | Daniel Kirchner | 2018-09-18 | 4 | -13/+62 |
|/ |
|
* | Calculate the dataGas correctly in the constant optimiser | Alex Beregszaszi | 2018-08-14 | 2 | -3/+2 |
* | Replace safety stop by invalid | Leonardo Alt | 2018-08-14 | 1 | -2/+2 |
* | Explicitly use std::next to avoid boost version. | chriseth | 2018-08-09 | 1 | -1/+1 |
* | Use dev::toString() in Assembly instead of misusing string{} for u256 | Alex Beregszaszi | 2018-08-09 | 1 | -2/+2 |
* | Fix typo | Leo Arias | 2018-08-08 | 1 | -1/+1 |
* | Added guards for unknown pragmas | Augusto F. Hack | 2018-08-06 | 1 | -4/+10 |
* | evmasm/Instruction: fixes undefined behavior of advancing iterator beyond the... | Christian Parpart | 2018-08-03 | 1 | -3/+11 |
* | Merge pull request #4473 from ethereum/fixGasTuple | chriseth | 2018-07-11 | 1 | -3/+4 |
|\ |
|
| * | Fix comparison operator for GasConsumption. | chriseth | 2018-07-11 | 1 | -3/+4 |
* | | Code, Changelog, ReleaseChecklist: Fix typos. | Cryptomental | 2018-07-11 | 4 | -4/+4 |
|/ |
|
* | As SWITCH..CASE is better than ELSE..IF | Khan M Rashedun-Naby | 2018-07-02 | 1 | -8/+13 |
* | Add TruthyAnd Peephole optimization | Nicolás Venturo | 2018-06-15 | 1 | -1/+18 |
* | Follow highest gas usage only for gas estimation. | chriseth | 2018-05-09 | 2 | -5/+24 |
* | Merge pull request #4028 from ethereum/asm-tags-32bit | chriseth | 2018-05-02 | 1 | -2/+2 |
|\ |
|
| * | Restrict assembly tags to 32-bit | Alex Beregszaszi | 2018-05-01 | 1 | -2/+2 |
* | | Add virtual destructors on base classes. | Alexander Arlt | 2018-05-02 | 2 | -0/+3 |
|/ |
|
* | Ensure that subId and tag handling is correct on all compilers in AssemblyItem | Alex Beregszaszi | 2018-04-30 | 1 | -4/+12 |
* | Fix comment typos | Omar Boukli-Hacene | 2018-04-27 | 1 | -7/+7 |
* | CMake: remove direct jsoncpp dependency in libevmasm | Alexander Arlt | 2018-04-21 | 1 | -1/+1 |
* | Remove unnecessary masking of the result of known short instructions | Alex Beregszaszi | 2018-04-20 | 1 | -0/+20 |
* | Add constant optimiser for SHR/SHL instructions | Alex Beregszaszi | 2018-04-10 | 1 | -0/+10 |
* | Replace comparison operators with opposites if preceded by SWAP1 | Alex Beregszaszi | 2018-04-04 | 1 | -1/+27 |
* | Remove useless SWAP1 in front of commutative operations | Alex Beregszaszi | 2018-04-04 | 1 | -1/+20 |
* | Optimize across MLOAD if MSIZE is not used. | chriseth | 2018-04-03 | 5 | -7/+17 |
* | Use EVM version in gas meter and optimizer. | chriseth | 2018-03-05 | 8 | -31/+83 |
* | Remove ROL/ROR as they are not part of EIP145 anymore | Alex Beregszaszi | 2018-02-27 | 2 | -6/+0 |
* | Add bitwise shift operators to libevmasm (EIP145) | Alex Beregszaszi | 2018-02-27 | 2 | -1/+16 |
* | Replace MOD with AND if constant is power of 2 | Alex Beregszaszi | 2018-02-13 | 1 | -0/+11 |
* | Turn simplification rule tuple into struct. | chriseth | 2018-02-07 | 5 | -19/+63 |
* | Remove recursive call to simplify with reversed arguments. | chriseth | 2018-02-07 | 2 | -10/+2 |
* | Explicitly add reversed operands for commutative operations. | chriseth | 2018-02-07 | 1 | -34/+56 |
* | Expression simplifier. | chriseth | 2018-02-07 | 1 | -0/+5 |
* | Add flag to indicate whether it can be applied to expressions with side-effects. | chriseth | 2018-02-07 | 4 | -87/+104 |
* | Move out the rule list. | chriseth | 2018-02-07 | 2 | -163/+217 |
* | Prevent libraries from being called. | chriseth | 2018-01-19 | 5 | -1/+22 |
* | Movability. | chriseth | 2018-01-13 | 2 | -0/+29 |
* | Replaced solAssert in Jumpdest optimization | Isaac van Bakel | 2017-11-26 | 1 | -3/+1 |
* | Merge pull request #3077 from ethereum/optimze_pops | chriseth | 2017-10-17 | 2 | -2/+12 |
|\ |
|
| * | Throw on too many peephole optimizer iterations. | chriseth | 2017-10-17 | 1 | -1/+4 |
| * | Assume peephole optimizer was successful if number of pops increased. | chriseth | 2017-10-14 | 2 | -3/+10 |
* | | Allow ``gas`` in view functions. | chriseth | 2017-10-16 | 1 | -1/+1 |
|/ |
|
* | Remove duplicate EVMSchedule | Alex Beregszaszi | 2017-10-03 | 1 | -62/+0 |
* | Use isDup/SwapInstruction helper | Alex Beregszaszi | 2017-10-03 | 2 | -5/+3 |
* | Add helpers for isPush/isDup/isSwap | Alex Beregszaszi | 2017-10-02 | 1 | -0/+18 |
* | CMake: Cleanup include paths | Paweł Bylica | 2017-09-27 | 1 | -1/+1 |
* | Ensure parameter names match between headers and implementation | Alex Beregszaszi | 2017-09-20 | 2 | -3/+3 |
* | Merge pull request #2922 from ethereum/asm-bytes-required | chriseth | 2017-09-18 | 1 | -3/+3 |
|\ |
|
| * | Properly calculate bytesRequired for subs | Alex Beregszaszi | 2017-09-18 | 1 | -3/+3 |
* | | Add useful messages to exceptions in the assembler | Alex Beregszaszi | 2017-09-18 | 1 | -3/+3 |
|/ |
|
* | Named assembly labels. | chriseth | 2017-09-16 | 2 | -0/+14 |
* | Merge pull request #2848 from ethereum/checkViewPure | chriseth | 2017-09-14 | 2 | -0/+55 |
|\ |
|
| * | Rename to invalidInPureFunctions | chriseth | 2017-09-13 | 2 | -2/+2 |
| * | Rename and add anonymous namespace. | chriseth | 2017-09-06 | 2 | -2/+2 |
| * | Analyze assembly. | chriseth | 2017-09-06 | 1 | -0/+1 |
| * | Add view/pure information about instructions. | chriseth | 2017-09-06 | 2 | -0/+54 |
* | | Introduce assemblyString | Alex Beregszaszi | 2017-09-11 | 2 | -0/+10 |
* | | Do not return the stream in asssemblyStream | Alex Beregszaszi | 2017-09-11 | 2 | -4/+2 |
* | | Split out the JSON functionality from assembly.stream() | Alex Beregszaszi | 2017-09-11 | 2 | -23/+13 |
* | | Mark functions static in libevmasm | Alex Beregszaszi | 2017-09-11 | 2 | -3/+4 |
|/ |
|
* | Merge pull request #2843 from ethereum/anonymous-cleanup | chriseth | 2017-08-29 | 1 | -0/+5 |
|\ |
|
| * | Move all file specific globals to anonymous namespace | Alex Beregszaszi | 2017-08-29 | 1 | -0/+5 |
* | | Reconcile EVM 1.5 instruction numbers with working draft EIP615 | gcolvin | 2017-08-29 | 1 | -9/+11 |
|/ |
|
* | Cleanup of vector_ref.h | chriseth | 2017-08-26 | 1 | -1/+1 |
* | Cleanup of FixedHash.h | chriseth | 2017-08-25 | 1 | -1/+4 |
* | Cleanup of Common.h | chriseth | 2017-08-25 | 2 | -3/+8 |
* | Introduce JumpdestRemover optimisation step | Alex Beregszaszi | 2017-08-25 | 4 | -10/+146 |
* | Merge pull request #2757 from ethereum/cmake | Alex Beregszaszi | 2017-08-23 | 1 | -13/+4 |
|\ |
|
| * | CMake: Cleanup "local" include path | Paweł Bylica | 2017-08-23 | 1 | -1/+0 |
| * | CMake: Simplify libevmasm config | Paweł Bylica | 2017-08-18 | 1 | -11/+5 |
| * | CMake: Build static libs by default | Paweł Bylica | 2017-08-18 | 1 | -2/+0 |
* | | Merge pull request #2656 from ethereum/performance1 | chriseth | 2017-08-23 | 1 | -5/+2 |
|\ \ |
|
| * | | Avoid some Json copy operations. | chriseth | 2017-08-21 | 1 | -5/+2 |
| |/ |
|
* | | Some smaller issues found by Covertiy Scan | Alex Beregszaszi | 2017-08-22 | 2 | -1/+2 |
* | | Switch stream properties back after temporary modification | Alex Beregszaszi | 2017-08-22 | 1 | -6/+6 |
* | | Mark a lot of functions static (where possible) | Alex Beregszaszi | 2017-08-22 | 2 | -4/+4 |
* | | Mark appropriate constructors explicit | Alex Beregszaszi | 2017-08-22 | 3 | -3/+3 |
* | | Mark a lot of functions const (where possible) | Alex Beregszaszi | 2017-08-22 | 2 | -16/+16 |
|/ |
|
* | Introduce fine-grained optimiser settings in libevmasm | Alex Beregszaszi | 2017-07-27 | 2 | -17/+60 |
* | Refactor exceptions and provide comment function. | chriseth | 2017-07-13 | 2 | -10/+11 |
* | MLOAD has side-effects, treat it like that in the optimiser | Alex Beregszaszi | 2017-07-01 | 1 | -1/+1 |
* | Fix negative stack size checks. | chriseth | 2017-06-28 | 1 | -0/+1 |
* | Use assertThrow where possible | Alex Beregszaszi | 2017-06-22 | 1 | -8/+5 |
* | Replace obsolete assembly code in LLL | Alex Beregszaszi | 2017-06-22 | 2 | -12/+0 |
* | Remove debugbreak. | chriseth | 2017-06-21 | 1 | -3/+3 |
* | Merge pull request #2397 from ethereum/doublepush | chriseth | 2017-06-15 | 3 | -7/+29 |
|\ |
|
| * | Peephole optimizer for double push. | chriseth | 2017-06-15 | 3 | -7/+29 |
* | | Merge pull request #2398 from ethereum/assembly-cleanup | chriseth | 2017-06-15 | 2 | -12/+8 |
|\ \ |
|
| * | | Move subroutine helpers from CompilerContext to Assembly | Alex Beregszaszi | 2017-06-15 | 1 | -0/+7 |
| * | | Remove single use Assembly::popTo | Alex Beregszaszi | 2017-06-15 | 1 | -2/+0 |
| * | | Remove obsolete Assembly::out | Alex Beregszaszi | 2017-06-15 | 2 | -8/+0 |
| * | | Remove obsolete errorTag() | Alex Beregszaszi | 2017-06-15 | 2 | -2/+1 |
* | | | Merge branch 'develop' into asm-aux | chriseth | 2017-06-15 | 4 | -5/+13 |
|\| | |
|
| * | | add new opcode instructions to the parser | Dimitry | 2017-06-15 | 4 | -5/+13 |
| |/ |
|
* | | Print auxiliary data in the assembly | Alex Beregszaszi | 2017-06-15 | 1 | -0/+6 |
* | | Print assembly even if there's no data section | Alex Beregszaszi | 2017-06-15 | 1 | -1/+3 |
|/ |
|
* | Introduce CREATE2 in the assembler | Alex Beregszaszi | 2017-06-14 | 4 | -1/+7 |
* | Mention RETURNDATACOPY in GasMeter and SemanticInformation | Yoichi Hirai | 2017-06-13 | 2 | -0/+4 |
* | libevmasm: add RETURNDATACOPY and RETURNDATASIZE | Yoichi Hirai | 2017-06-13 | 2 | -0/+6 |
* | Initial EVM1.5 assembly implementation. | chriseth | 2017-06-08 | 1 | -0/+9 |
* | Rename the SHA3 assembly instruction to KECCAK256 | Alex Beregszaszi | 2017-05-30 | 8 | -26/+26 |
* | Add simplification rule for SDIV(0,X) and SDIV(X,0) | Alex Beregszaszi | 2017-05-20 | 1 | -0/+2 |
* | Cleanup simplification rules | Alex Beregszaszi | 2017-05-20 | 1 | -8/+15 |
* | Add parentheses for readability. | chriseth | 2017-05-02 | 1 | -1/+1 |
* | Fix number representation bug. | chriseth | 2017-05-02 | 1 | -2/+7 |
* | Do not use the member in checkRepresentation | Alex Beregszaszi | 2017-04-27 | 2 | -4/+4 |
* | Use OptimizerException to report error | chriseth | 2017-04-27 | 1 | -2/+6 |
* | Add recomputation check for number representation. | chriseth | 2017-04-27 | 2 | -1/+56 |
* | libevmasm: fix sloadGas in another file | Yoichi Hirai | 2017-04-25 | 1 | -1/+1 |
* | libevmasm: add a break | Yoichi Hirai | 2017-04-25 | 1 | -0/+1 |
* | libevmasm: reflect EIP 160 gas schedule change | Yoichi Hirai | 2017-04-25 | 1 | -1/+1 |
* | libevmasm: EIP150.c gas change | Yoichi Hirai | 2017-04-25 | 1 | -0/+1 |
* | libevmasm: EIP150.a changes on SLOAD, CALL, CALLCODE, DELEGATECALL and SUICIDE | Yoichi Hirai | 2017-04-25 | 4 | -3/+6 |
* | libevmadm: EIP150.a changes on EXTCODE, EXTCODESIZE and BALANCE | Yoichi Hirai | 2017-04-25 | 4 | -3/+9 |
* | Initialize local variables. | chriseth | 2017-04-12 | 1 | -2/+2 |
* | Implement missing assembly output functions and do not use PushString for ass... | chriseth | 2017-04-12 | 2 | -6/+14 |
* | Add upper bound for computing constants. | chriseth | 2017-03-03 | 2 | -1/+5 |
* | Print source location before items. | chriseth | 2017-02-24 | 1 | -1/+1 |
* | Add REVERT to libevmasm | Alex Beregszaszi | 2017-02-11 | 5 | -1/+7 |
* | Rename SUICIDE opcode to SELFDESTRUCT in libevmasm | Alex Beregszaszi | 2017-02-07 | 6 | -8/+8 |
* | More verbose log of when using invalid instructions | Alex Beregszaszi | 2017-02-02 | 1 | -4/+4 |
* | Fix optimizer with regards to INVALID instruction. | chriseth | 2017-01-26 | 2 | -0/+2 |
* | Change code for INVALID opcode to 0xfe. | chriseth | 2017-01-26 | 2 | -4/+4 |
* | Change translation of implicit throws (issue #1589). | Valentin Wüstholz | 2017-01-26 | 2 | -0/+4 |
* | Create functional assembly output, if possible. | chriseth | 2017-01-24 | 4 | -17/+94 |
* | Fix error tag usage in lll. | chriseth | 2017-01-23 | 1 | -1/+1 |
* | Merge pull request #1584 from ethereum/tier | chriseth | 2017-01-19 | 3 | -149/+149 |
|\ |
|
| * | libevmasm: remove duplicate `Tier` from `Tier::xTier`s | Yoichi Hirai | 2017-01-19 | 3 | -149/+149 |
* | | Provide fallback for linking. | chriseth | 2017-01-19 | 2 | -6/+29 |
|/ |
|
* | Make enum Tier into an enum class | Yoichi Hirai | 2017-01-13 | 3 | -141/+141 |
* | Minor changes from review. | chriseth | 2017-01-13 | 2 | -2/+1 |
* | Windows build fix. | chriseth | 2017-01-13 | 1 | -0/+2 |
* | Fix match groups. | chriseth | 2017-01-13 | 1 | -0/+1 |
* | Fix debug output. | chriseth | 2017-01-13 | 1 | -2/+8 |
* | Optimize constant optimization. | chriseth | 2017-01-13 | 2 | -37/+58 |
* | Optimise simplification rules (sort into bins). | chriseth | 2017-01-13 | 4 | -394/+514 |
* | Optimize pattern matcher. | chriseth | 2017-01-13 | 2 | -16/+22 |
* | Optimise AssemblyItem::m_data. | chriseth | 2017-01-13 | 4 | -21/+58 |
* | Rename programSize to bytecodeSize. | chriseth | 2017-01-03 | 1 | -1/+1 |
* | Assembly output for Assembly object. | chriseth | 2017-01-03 | 3 | -51/+105 |
* | libevmasm: OpPop() optimization keeps the source location | Yoichi Hirai | 2016-12-30 | 1 | -1/+1 |
* | Fix tests. | chriseth | 2016-12-01 | 1 | -2/+3 |
* | Add swarm hash to the end of the bytecode. | chriseth | 2016-12-01 | 2 | -4/+13 |
* | libevmasm: remove an unused variable `total` | Yoichi Hirai | 2016-12-01 | 1 | -3/+2 |
* | Add more optimization rules | Yoichi Hirai | 2016-11-30 | 1 | -0/+6 |
* | Replace XOR with self with 0 | Alex Beregszaszi | 2016-11-30 | 1 | -0/+1 |
* | Replace XOR/ISZERO with EQ | Alex Beregszaszi | 2016-11-30 | 1 | -0/+4 |
* | Add optimiser rule for SUB with 0 | Alex Beregszaszi | 2016-11-30 | 1 | -1/+2 |
* | Integrate AddPop. | chriseth | 2016-11-25 | 2 | -16/+13 |
* | Templatize. | chriseth | 2016-11-25 | 1 | -37/+75 |
* | Peephole optimizer for unreacheable code. | chriseth | 2016-11-25 | 1 | -37/+73 |
* | libevmasm: generalize ADDPOP optimization into ADDMODPOP etc | Yoichi Hirai | 2016-11-25 | 1 | -5/+6 |
* | libevmasm: Add another peephole optimization | Yoichi Hirai | 2016-11-25 | 2 | -3/+28 |
* | Fix licensing headers | VoR0220 | 2016-11-23 | 31 | -124/+124 |
* | Optimizer: Clear state for JUMPDESTs. | chriseth | 2016-11-22 | 1 | -36/+25 |
* | Some more assertions and style changes. | chriseth | 2016-11-16 | 1 | -1/+1 |
* | Change encoding to address-funid and add "function" as ABI type. | chriseth | 2016-11-16 | 1 | -0/+1 |
* | Fix setting the tag. | chriseth | 2016-11-16 | 1 | -1/+1 |
* | fixup! Simple peephole optimizer that is activated even if not requested. | chriseth | 2016-11-16 | 1 | -0/+2 |
* | Simple peephole optimizer that is activated even if not requested. | chriseth | 2016-11-16 | 4 | -12/+223 |
* | Converted sub assembly to smart pointer. | chriseth | 2016-11-16 | 3 | -37/+62 |
* | Stored combined creation and runtime tags. | chriseth | 2016-11-16 | 7 | -52/+145 |
* | Implement uninitialized storage functions. | chriseth | 2016-11-16 | 1 | -0/+1 |
* | Keep old code. | chriseth | 2016-11-15 | 2 | -21/+30 |
* | Report infinite gas for calls. | chriseth | 2016-11-14 | 1 | -15/+19 |
* | Merge pull request #1333 from ethereum/compare_location_files | chriseth | 2016-11-09 | 1 | -5/+10 |
|\ |
|
| * | libevmasm: fix comparison of SourceLocations | Yoichi Hirai | 2016-11-08 | 1 | -5/+10 |
* | | Merge pull request #1252 from ethereum/jsoncpp-from-source | chriseth | 2016-11-08 | 1 | -1/+2 |
|\ \
| |/
|/| |
|
| * | Build jsoncpp from source using jsoncpp.cmake script | Paweł Bylica | 2016-10-21 | 1 | -1/+2 |
* | | Merge pull request #1270 from ethereum/optimise-eq0 | chriseth | 2016-10-24 | 1 | -0/+1 |
|\ \ |
|
| * | | Optimiser the PUSH 0, EQ case as ISZERO | Alex Beregszaszi | 2016-10-23 | 1 | -0/+1 |
| |/ |
|
* / | Optimizer: generate code starting with empty state | chriseth | 2016-10-22 | 1 | -2/+4 |
|/ |
|
* | Rename dev::sha3 to dev::keccak256 | Alex Beregszaszi | 2016-10-06 | 3 | -4/+4 |
* | Explicitly specify length of push data for assembly output. | chriseth | 2016-08-18 | 1 | -1/+1 |
* | Rename libevmasm. | chriseth | 2016-08-10 | 1 | -1/+1 |
* | Merge pull request #834 from chriseth/devcorecleanup | chriseth | 2016-08-08 | 2 | -5/+1 |
|\ |
|
| * | Correct library usage. | chriseth | 2016-08-08 | 1 | -1/+1 |
| * | Some cleanup regarding libdevcore. Also rename to avoid conflicts. | chriseth | 2016-08-06 | 2 | -5/+1 |
* | | Do not install headers. | chriseth | 2016-08-05 | 1 | -2/+0 |
|/ |
|
* | Further fixes to the optimizer. | chriseth | 2016-08-02 | 2 | -4/+5 |
* | Reset knowledge in optimizer for path joins. | chriseth | 2016-08-01 | 3 | -3/+12 |
* | Make the Solidity repository standalone. | Bob Summerwill | 2016-08-01 | 1 | -0/+62 |
* | Fix warning showing up in openSUSE build. | Bob Summerwill | 2016-06-08 | 1 | -1/+1 |
* | Correctly use not/bnot/iszero. | chriseth | 2016-05-09 | 1 | -2/+2 |
* | Windows fix. | chriseth | 2016-04-21 | 1 | -2/+13 |
* | Source location for inline assembly. | chriseth | 2016-04-20 | 1 | -18/+5 |
* | Merge pull request #496 from chriseth/removelog | Bob Summerwill | 2016-04-12 | 2 | -10/+0 |
|\ |
|
| * | Remove log.h from solidity. | chriseth | 2016-04-12 | 2 | -10/+0 |
* | | Make solidity independent from ethcore. | chriseth | 2016-04-07 | 7 | -121/+83 |
|/ |
|
* | reduce unnecessary solidity:: namespace | Dimitry | 2016-04-04 | 4 | -8/+8 |
* | return instructionInfo style | Dimitry | 2016-04-04 | 9 | -14/+14 |
* | enable solidity test | Dimitry | 2016-04-04 | 2 | -6/+6 |
* | rename namespace for instruction.h/cpp in libevmasm | Dimitry | 2016-04-02 | 13 | -32/+33 |
* | move libevmcore to solidity | Dimitry | 2016-04-02 | 6 | -4/+626 |
* | includes | Dimitry | 2016-03-22 | 3 | -4/+5 |
* | add liblll lllc libevmasm | Dimitry | 2016-03-22 | 2 | -4/+4 |
* | move libevmasm | Dimitry | 2016-03-21 | 29 | -0/+5102 |