Changelog
Language Features:
- Yul: Introduce builtin
clz(x)
for counting the number of leading zero bits in a 256-bit word.
Compiler Features:
- ethdebug: Experimental support for instructions and source locations under EOF.
Bugfixes:
- Assembler: Fix not using a fixed-width type for IDs being assigned to subassemblies nested more than one level away, resulting in inconsistent
--asm-json
output between target architectures. - Yul Optimizer: Fix edge case in which invalid Yul code is produced by ExpressionSimplifier due to expressions being substituted that contain out-of-scope variables.
Build System:
- Update minimum version requirements of Boost to 1.83.0 for non-windows builds and of GCC and Clang to 13.3 and 18.1.3, respectively. Fixes infinite recursion on
boost::rational
comparison affecting compiler binaries built with GCC<14.0 and Boost<1.75.