aboutsummaryrefslogtreecommitdiffstats
path: root/libevmasm
Commit message (Expand)AuthorAgeFilesLines
* Introduce JumpdestRemover optimisation stepAlex Beregszaszi2017-08-254-10/+146
* Merge pull request #2757 from ethereum/cmakeAlex Beregszaszi2017-08-231-13/+4
|\
| * CMake: Cleanup "local" include pathPaweł Bylica2017-08-231-1/+0
| * CMake: Simplify libevmasm configPaweł Bylica2017-08-181-11/+5
| * CMake: Build static libs by defaultPaweł Bylica2017-08-181-2/+0
* | Merge pull request #2656 from ethereum/performance1chriseth2017-08-231-5/+2
|\ \
| * | Avoid some Json copy operations.chriseth2017-08-211-5/+2
| |/
* | Some smaller issues found by Covertiy ScanAlex Beregszaszi2017-08-222-1/+2
* | Switch stream properties back after temporary modificationAlex Beregszaszi2017-08-221-6/+6
* | Mark a lot of functions static (where possible)Alex Beregszaszi2017-08-222-4/+4
* | Mark appropriate constructors explicitAlex Beregszaszi2017-08-223-3/+3
* | Mark a lot of functions const (where possible)Alex Beregszaszi2017-08-222-16/+16
|/
* Introduce fine-grained optimiser settings in libevmasmAlex Beregszaszi2017-07-272-17/+60
* Refactor exceptions and provide comment function.chriseth2017-07-132-10/+11
* MLOAD has side-effects, treat it like that in the optimiserAlex Beregszaszi2017-07-011-1/+1
* Fix negative stack size checks.chriseth2017-06-281-0/+1
* Use assertThrow where possibleAlex Beregszaszi2017-06-221-8/+5
* Replace obsolete assembly code in LLLAlex Beregszaszi2017-06-222-12/+0
* Remove debugbreak.chriseth2017-06-211-3/+3
* Merge pull request #2397 from ethereum/doublepushchriseth2017-06-153-7/+29
|\
| * Peephole optimizer for double push.chriseth2017-06-153-7/+29
* | Merge pull request #2398 from ethereum/assembly-cleanupchriseth2017-06-152-12/+8
|\ \
| * | Move subroutine helpers from CompilerContext to AssemblyAlex Beregszaszi2017-06-151-0/+7
| * | Remove single use Assembly::popToAlex Beregszaszi2017-06-151-2/+0
| * | Remove obsolete Assembly::outAlex Beregszaszi2017-06-152-8/+0
| * | Remove obsolete errorTag()Alex Beregszaszi2017-06-152-2/+1
* | | Merge branch 'develop' into asm-auxchriseth2017-06-154-5/+13
|\| |
| * | add new opcode instructions to the parserDimitry2017-06-154-5/+13
| |/
* | Print auxiliary data in the assemblyAlex Beregszaszi2017-06-151-0/+6
* | Print assembly even if there's no data sectionAlex Beregszaszi2017-06-151-1/+3
|/
* Introduce CREATE2 in the assemblerAlex Beregszaszi2017-06-144-1/+7
* Mention RETURNDATACOPY in GasMeter and SemanticInformationYoichi Hirai2017-06-132-0/+4
* libevmasm: add RETURNDATACOPY and RETURNDATASIZEYoichi Hirai2017-06-132-0/+6
* Initial EVM1.5 assembly implementation.chriseth2017-06-081-0/+9
* Rename the SHA3 assembly instruction to KECCAK256Alex Beregszaszi2017-05-308-26/+26
* Add simplification rule for SDIV(0,X) and SDIV(X,0)Alex Beregszaszi2017-05-201-0/+2
* Cleanup simplification rulesAlex Beregszaszi2017-05-201-8/+15
* Add parentheses for readability.chriseth2017-05-021-1/+1
* Fix number representation bug.chriseth2017-05-021-2/+7
* Do not use the member in checkRepresentationAlex Beregszaszi2017-04-272-4/+4
* Use OptimizerException to report errorchriseth2017-04-271-2/+6
* Add recomputation check for number representation.chriseth2017-04-272-1/+56
* libevmasm: fix sloadGas in another fileYoichi Hirai2017-04-251-1/+1
* libevmasm: add a breakYoichi Hirai2017-04-251-0/+1
* libevmasm: reflect EIP 160 gas schedule changeYoichi Hirai2017-04-251-1/+1
* libevmasm: EIP150.c gas changeYoichi Hirai2017-04-251-0/+1
* libevmasm: EIP150.a changes on SLOAD, CALL, CALLCODE, DELEGATECALL and SUICIDEYoichi Hirai2017-04-254-3/+6
* libevmadm: EIP150.a changes on EXTCODE, EXTCODESIZE and BALANCEYoichi Hirai2017-04-254-3/+9
* Initialize local variables.chriseth2017-04-121-2/+2
* Implement missing assembly output functions and do not use PushString for ass...chriseth2017-04-122-6/+14
* Add upper bound for computing constants.chriseth2017-03-032-1/+5
* Print source location before items.chriseth2017-02-241-1/+1
* Add REVERT to libevmasmAlex Beregszaszi2017-02-115-1/+7
* Rename SUICIDE opcode to SELFDESTRUCT in libevmasmAlex Beregszaszi2017-02-076-8/+8
* More verbose log of when using invalid instructionsAlex Beregszaszi2017-02-021-4/+4
* Fix optimizer with regards to INVALID instruction.chriseth2017-01-262-0/+2
* Change code for INVALID opcode to 0xfe.chriseth2017-01-262-4/+4
* Change translation of implicit throws (issue #1589).Valentin Wüstholz2017-01-262-0/+4
* Create functional assembly output, if possible.chriseth2017-01-244-17/+94
* Fix error tag usage in lll.chriseth2017-01-231-1/+1
* Merge pull request #1584 from ethereum/tierchriseth2017-01-193-149/+149
|\
| * libevmasm: remove duplicate `Tier` from `Tier::xTier`sYoichi Hirai2017-01-193-149/+149
* | Provide fallback for linking.chriseth2017-01-192-6/+29
|/
* Make enum Tier into an enum classYoichi Hirai2017-01-133-141/+141
* Minor changes from review.chriseth2017-01-132-2/+1
* Windows build fix.chriseth2017-01-131-0/+2
* Fix match groups.chriseth2017-01-131-0/+1
* Fix debug output.chriseth2017-01-131-2/+8
* Optimize constant optimization.chriseth2017-01-132-37/+58
* Optimise simplification rules (sort into bins).chriseth2017-01-134-394/+514
* Optimize pattern matcher.chriseth2017-01-132-16/+22
* Optimise AssemblyItem::m_data.chriseth2017-01-134-21/+58
* Rename programSize to bytecodeSize.chriseth2017-01-031-1/+1
* Assembly output for Assembly object.chriseth2017-01-033-51/+105
* libevmasm: OpPop() optimization keeps the source locationYoichi Hirai2016-12-301-1/+1
* Fix tests.chriseth2016-12-011-2/+3
* Add swarm hash to the end of the bytecode.chriseth2016-12-012-4/+13
* libevmasm: remove an unused variable `total`Yoichi Hirai2016-12-011-3/+2
* Add more optimization rulesYoichi Hirai2016-11-301-0/+6
* Replace XOR with self with 0Alex Beregszaszi2016-11-301-0/+1
* Replace XOR/ISZERO with EQAlex Beregszaszi2016-11-301-0/+4
* Add optimiser rule for SUB with 0Alex Beregszaszi2016-11-301-1/+2
* Integrate AddPop.chriseth2016-11-252-16/+13
* Templatize.chriseth2016-11-251-37/+75
* Peephole optimizer for unreacheable code.chriseth2016-11-251-37/+73
* libevmasm: generalize ADDPOP optimization into ADDMODPOP etcYoichi Hirai2016-11-251-5/+6
* libevmasm: Add another peephole optimizationYoichi Hirai2016-11-252-3/+28
* Fix licensing headersVoR02202016-11-2331-124/+124
* Optimizer: Clear state for JUMPDESTs.chriseth2016-11-221-36/+25
* Some more assertions and style changes.chriseth2016-11-161-1/+1
* Change encoding to address-funid and add "function" as ABI type.chriseth2016-11-161-0/+1
* Fix setting the tag.chriseth2016-11-161-1/+1
* fixup! Simple peephole optimizer that is activated even if not requested.chriseth2016-11-161-0/+2
* Simple peephole optimizer that is activated even if not requested.chriseth2016-11-164-12/+223
* Converted sub assembly to smart pointer.chriseth2016-11-163-37/+62
* Stored combined creation and runtime tags.chriseth2016-11-167-52/+145
* Implement uninitialized storage functions.chriseth2016-11-161-0/+1
* Keep old code.chriseth2016-11-152-21/+30
* Report infinite gas for calls.chriseth2016-11-141-15/+19
* Merge pull request #1333 from ethereum/compare_location_fileschriseth2016-11-091-5/+10
|\
| * libevmasm: fix comparison of SourceLocationsYoichi Hirai2016-11-081-5/+10
* | Merge pull request #1252 from ethereum/jsoncpp-from-sourcechriseth2016-11-081-1/+2
|\ \ | |/ |/|
| * Build jsoncpp from source using jsoncpp.cmake scriptPaweł Bylica2016-10-211-1/+2
* | Merge pull request #1270 from ethereum/optimise-eq0chriseth2016-10-241-0/+1
|\ \
| * | Optimiser the PUSH 0, EQ case as ISZEROAlex Beregszaszi2016-10-231-0/+1
| |/
* / Optimizer: generate code starting with empty statechriseth2016-10-221-2/+4
|/
* Rename dev::sha3 to dev::keccak256Alex Beregszaszi2016-10-063-4/+4
* Explicitly specify length of push data for assembly output.chriseth2016-08-181-1/+1
* Rename libevmasm.chriseth2016-08-101-1/+1
* Merge pull request #834 from chriseth/devcorecleanupchriseth2016-08-082-5/+1
|\
| * Correct library usage.chriseth2016-08-081-1/+1
| * Some cleanup regarding libdevcore. Also rename to avoid conflicts.chriseth2016-08-062-5/+1
* | Do not install headers.chriseth2016-08-051-2/+0
|/
* Further fixes to the optimizer.chriseth2016-08-022-4/+5
* Reset knowledge in optimizer for path joins.chriseth2016-08-013-3/+12
* Make the Solidity repository standalone.Bob Summerwill2016-08-011-0/+62
* Fix warning showing up in openSUSE build.Bob Summerwill2016-06-081-1/+1
* Correctly use not/bnot/iszero.chriseth2016-05-091-2/+2
* Windows fix.chriseth2016-04-211-2/+13
* Source location for inline assembly.chriseth2016-04-201-18/+5
* Merge pull request #496 from chriseth/removelogBob Summerwill2016-04-122-10/+0
|\
| * Remove log.h from solidity.chriseth2016-04-122-10/+0
* | Make solidity independent from ethcore.chriseth2016-04-077-121/+83
|/
* reduce unnecessary solidity:: namespaceDimitry2016-04-044-8/+8
* return instructionInfo styleDimitry2016-04-049-14/+14
* enable solidity testDimitry2016-04-042-6/+6
* rename namespace for instruction.h/cpp in libevmasmDimitry2016-04-0213-32/+33
* move libevmcore to solidityDimitry2016-04-026-4/+626
* includesDimitry2016-03-223-4/+5
* add liblll lllc libevmasmDimitry2016-03-222-4/+4
* move libevmasmDimitry2016-03-2129-0/+5102