aboutsummaryrefslogtreecommitdiffstats
path: root/liblll/CodeFragment.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Added guards for unknown pragmasAugusto F. Hack2018-08-061-2/+8
| | | | | | | | | | | | | | | Removed push/pop if there was no change to the warnings *in the same file* for a given compiler. This assumes the imported boost headers use a warning stack themselves. The pragmas don't seem to be required anymore, but were not removed to mantain compatibility with older versions of the boost library. Compiled with - clang version 6.0.1 (tags/RELEASE_601/final) - gcc (GCC) 8.1.1 20180531 against: - libboost 1.67.0-5
* Replace dev::eth namespace with dev::lll in LLLAlex Beregszaszi2018-07-281-3/+4
|
* lll: disallow useless PUSHn in assemblyAlex Beregszaszi2017-10-131-17/+27
|
* LLL: do not crash if import callback is nullAlex Beregszaszi2017-10-031-0/+2
|
* LLL: change (include) to use a callbackAlex Beregszaszi2017-10-031-12/+13
|
* lll: do not expose push/dup/swap/jumpdest as functionsAlex Beregszaszi2017-10-021-1/+17
|
* Merge pull request #2622 from benjaminion/lll-switchAlex Beregszaszi2017-10-021-0/+38
|\ | | | | LLL: Implement a "switch" expression
| * LLL: Implement a switch expression.benjaminion2017-10-021-0/+38
| |
* | lll: better error reporting in some casesAlex Beregszaszi2017-10-021-7/+7
|/
* Merge pull request #2573 from benjaminion/lll-error-report-symbolAlex Beregszaszi2017-07-201-11/+11
|\ | | | | LLL: Improve error reporting in certain cases.
| * LLL: Improve error reporting in certain cases.benjaminion2017-07-161-11/+11
| |
* | LLL: remove useless codeAlex Beregszaszi2017-07-191-5/+1
|/
* LLL: rewrite alloc to avoid issues with edge cases.benjaminion2017-07-121-6/+22
|
* LLL: fix redefinitions on some compilersAlex Beregszaszi2017-06-241-1/+5
|
* LLL: fix the set keyword (create symbol if not present)Alex Beregszaszi2017-06-231-3/+13
|
* LLL: report correct name if a symbol was not foundAlex Beregszaszi2017-06-231-1/+1
|
* LLL: do not allow empty variable namesAlex Beregszaszi2017-06-231-0/+2
|
* Merge pull request #2440 from ethereum/lll-includechriseth2017-06-221-1/+7
|\ | | | | LLL: better error reporting in (include)
| * LLL: report errors if (include) failedAlex Beregszaszi2017-06-221-1/+7
| |
* | Replace obsolete assembly code in LLLAlex Beregszaszi2017-06-221-8/+11
|/
* Move subroutine helpers from CompilerContext to AssemblyAlex Beregszaszi2017-06-151-2/+1
|
* Remove single use Assembly::popToAlex Beregszaszi2017-06-151-1/+3
|
* Change opcode generated by (panic) to INVALIDbenjaminion2017-06-141-4/+0
| | | | | | EIP-141 ethereum/EIPs#141 has preserved 0xfe as an invalid opcode for aborting EVM execution. The EVM assembler supports this via the INVALID opcode. The LLL "panic" expression used to generate a jump to an invalid location in order to abort EVM execution. This change brings "panic" into line with EIP-141 by generating the INVALID opcode instead.
* Replace cpp-ethereum with solidity in the license headersAlex Beregszaszi2017-02-021-4/+4
|
* LLL: throw exceptions on invalid symbolsAlex Beregszaszi2016-12-011-12/+6
|
* Merge pull request #1329 from ethereum/lll-lit-changesAlex Beregszaszi2016-11-261-19/+20
|\ | | | | LLL: improvements (and fixes) to the lit keyword
| * LLL: simplify the LIT parsing codeAlex Beregszaszi2016-11-261-5/+17
| |
| * LLL: only support variable length bigendian numbers in LITAlex Beregszaszi2016-11-011-13/+2
| |
| * LLL: support multiple strings in LITAlex Beregszaszi2016-11-011-2/+2
| |
* | Converted sub assembly to smart pointer.chriseth2016-11-161-1/+2
| |
* | Stored combined creation and runtime tags.chriseth2016-11-161-2/+2
| | | | | | | | | | | | | | Includes a change to Assembly to allow tags from sub-assemblies to be used. Sorry, this get a bit bigger than I thought.
* | LLL: add bytecodesize keyword to push resulting bytecode sizeAlex Beregszaszi2016-11-021-0/+4
| |
* | LLL: properly support dashes (-) as part of variable namesAlex Beregszaszi2016-11-011-2/+2
| |
* | LLL: remove unneeded includesAlex Beregszaszi2016-11-011-3/+0
| |
* | LLL: report back unsupported keywordsAlex Beregszaszi2016-11-011-1/+1
|/
* Merge pull request #1302 from ethereum/lll-panicchriseth2016-10-281-0/+4
|\ | | | | LLL: introduce panic keyword
| * LLL: introduce panic keywordAlex Beregszaszi2016-10-271-0/+4
| |
* | Added support for `until`, the inverse of `while`.Daniel Ellison2016-10-261-2/+3
|/
* LLL: reorder arithmetic/binary instruction list for readabilityAlex Beregszaszi2016-10-261-3/+26
|
* LLL: use NOT for ~Alex Beregszaszi2016-10-261-10/+1
|
* LLL: replace (1 0 sub) with literal valueAlex Beregszaszi2016-10-261-3/+1
|
* LLL: fix the commented out debugging codeAlex Beregszaszi2016-10-151-8/+9
|
* Remove log.h from solidity.chriseth2016-04-121-1/+0
|
* return instructionInfo styleDimitry2016-04-041-1/+1
|
* rename namespace for instruction.h/cpp in libevmasmDimitry2016-04-021-1/+1
|
* move libevmcore to solidityDimitry2016-04-021-1/+1
|
* move liblllDimitry2016-03-211-0/+586