Commit Graph
371 Commits
Author SHA1 Message Date
chriseth 7c18b785e3 Merge pull request #1584 from ethereum/tier
libevmasm: remove duplicate `Tier` from `Tier::xTier`s
2017-01-18 19:28:37 +01:00
chriseth d3a391c136 Provide fallback for linking. 2017-01-18 17:41:36 +01:00
Yoichi Hirai 821997a1d3 libevmasm: remove duplicate Tier from Tier::xTiers
Synchronize with cpp-ethereum
2017-01-18 17:24:39 +01:00
Yoichi Hirai 20c62a132d Make enum Tier into an enum class 2017-01-13 13:19:14 +01:00
chriseth 3cfa851f6f Minor changes from review. 2017-01-12 17:53:06 +01:00
chriseth d34b561f68 Windows build fix. 2017-01-12 17:52:27 +01:00
chriseth 58509ca3aa Fix match groups. 2017-01-12 17:52:27 +01:00
chriseth 7127f2fdfd Fix debug output. 2017-01-12 17:52:27 +01:00
chriseth da5e171f3b Optimize constant optimization. 2017-01-12 17:52:27 +01:00
chriseth f1a4976ce6 Optimise simplification rules (sort into bins). 2017-01-12 17:52:26 +01:00
chriseth 652d8dab19 Optimize pattern matcher. 2017-01-12 17:52:26 +01:00
chriseth afad40ac5a Optimise AssemblyItem::m_data. 2017-01-12 17:52:26 +01:00
chriseth 49ac2a1ee5 Rename programSize to bytecodeSize. 2017-01-03 14:13:49 +01:00
chriseth a285ca44f2 Assembly output for Assembly object. 2017-01-03 14:13:49 +01:00
Yoichi Hirai 2d60990238 libevmasm: OpPop() optimization keeps the source location
fixes #1521
2016-12-30 13:52:38 +01:00
chriseth 1e35526eb6 Fix tests. 2016-12-01 16:03:59 +01:00
chriseth 91ecc4533d Add swarm hash to the end of the bytecode. 2016-12-01 16:03:59 +01:00
Yoichi Hirai 77bad18648 libevmasm: remove an unused variable total 2016-12-01 11:31:58 +01:00
Yoichi Hirai df4b405f9c Add more optimization rules 2016-11-30 11:16:43 +00:00
Alex Beregszaszi 3fdef92911 Replace XOR with self with 0 2016-11-30 11:16:43 +00:00
Alex Beregszaszi b8bba66220 Replace XOR/ISZERO with EQ 2016-11-30 11:16:43 +00:00
Alex Beregszaszi 25160bfc26 Add optimiser rule for SUB with 0 2016-11-30 11:16:43 +00:00
chriseth f521624952 Integrate AddPop. 2016-11-25 16:10:57 +01:00
chriseth 612c1726d9 Templatize. 2016-11-25 16:10:02 +01:00
chriseth f2872bfa99 Peephole optimizer for unreacheable code. 2016-11-25 16:10:02 +01:00
Yoichi Hirai b6ffb6c8b7 libevmasm: generalize ADDPOP optimization into ADDMODPOP etc 2016-11-24 18:22:22 +01:00
Yoichi Hirai c0fe5fbe9b libevmasm: Add another peephole optimization 2016-11-24 18:22:22 +01:00
VoR0220 3f9f725737 Fix licensing headers
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
chriseth 7fb7d5ae39 Optimizer: Clear state for JUMPDESTs. 2016-11-22 14:58:24 +01:00
chriseth 2c14a96820 Some more assertions and style changes. 2016-11-16 15:09:01 +01:00
chriseth ec31d08775 Change encoding to address-funid and add "function" as ABI type. 2016-11-16 14:37:19 +01:00
chriseth cb000a5532 Fix setting the tag. 2016-11-16 14:37:19 +01:00
chriseth 390ba085b6 fixup! Simple peephole optimizer that is activated even if not requested. 2016-11-16 14:37:19 +01:00
chriseth 0335ed4cb4 Simple peephole optimizer that is activated even if not requested. 2016-11-16 14:37:19 +01:00
chriseth e51f852504 Converted sub assembly to smart pointer. 2016-11-16 14:37:18 +01:00
chriseth e543bd34c0 Stored combined creation and runtime tags.
Includes a change to Assembly to allow tags from sub-assemblies to be
used.

Sorry, this get a bit bigger than I thought.
2016-11-16 14:37:18 +01:00
chriseth 47794c1da4 Implement uninitialized storage functions. 2016-11-16 14:37:18 +01:00
chriseth bf5b0dc2d2 Keep old code. 2016-11-14 23:28:26 +01:00
chriseth c2c39239d6 Report infinite gas for calls. 2016-11-14 16:02:57 +01:00
chriseth c82acfd3eb Merge pull request #1333 from ethereum/compare_location_files
Compare source files in source locations
2016-11-09 10:49:30 +01:00
chriseth 7a30e8cf6e Merge pull request #1252 from ethereum/jsoncpp-from-source
Build jsoncpp from source using jsoncpp.cmake script
2016-11-08 13:47:52 +01:00
Yoichi Hirai 2e92966684 libevmasm: fix comparison of SourceLocations 2016-11-08 11:11:08 +01:00
chriseth 9e0594f4c1 Merge pull request #1270 from ethereum/optimise-eq0
Optimise the PUSH 0, EQ case as ISZERO
2016-10-24 15:50:31 +02:00
Alex Beregszaszi 6686ea6c03 Optimiser the PUSH 0, EQ case as ISZERO 2016-10-23 00:23:08 +01:00
chriseth ba42c6e447 Optimizer: generate code starting with empty state 2016-10-21 18:03:57 +02:00
Paweł Bylica 4bde0a2d36 Build jsoncpp from source using jsoncpp.cmake script 2016-10-20 22:18:13 +01:00
Alex Beregszaszi aefb6e5fcf Rename dev::sha3 to dev::keccak256 2016-10-06 14:53:40 +01:00
chriseth cc0bc9b908 Explicitly specify length of push data for assembly output. 2016-08-18 16:37:42 +02:00
chriseth 4c54834908 Rename libevmasm. 2016-08-10 13:52:24 +02:00
chriseth c3ed550eb6 Merge pull request #834 from chriseth/devcorecleanup
Some cleanup regarding libdevcore. Also rename to avoid conflicts.
2016-08-08 15:11:36 +02:00