Releases
v1.5.5
Compare
Sorry, something went wrong.
No results found
Fix --relax-jumps not updating label positions always correct during iterative optimization.
Fix jump table entries are now correctly updated after each relaxation iteration.
Fixes issue where jumps at the PUSH1/PUSH2 boundary (byte 255/256) were not optimized.
Use correct PC for __ASSERT_PC after jump relaxation.
Correctly handle decimal literals in for loop bounds (have been interpreted as hex before).
Example: for(i in 0..255) and for(i in 0..0xff) are now equivalent.
Add __EMBED_TABLE(TABLE_NAME) builtin function to embed code tables inline.
Embeds table bytes at the current position instead of at the end of bytecode.
Each table can only be embedded once to avoid ambiguity.
__tablestart(TABLE) returns the inline embedding position for embedded tables.
Add support for keccak256 opcode as an alias for sha3 (fixes #145 ).
Both keccak256 and sha3 compile to the same EVM opcode (0x20).
Fix built-in functions not working inside if-statement bodies (fixes #144 ).
Example: if (true) { __RIGHTPAD(0x1234) }
You can’t perform that action at this time.