Dmitry Borisenkov
Dmitry Borisenkov
# Code Review Checklist ## Purpose ## Ticket Number ## Requirements - [ ] Have the requirements been met? - [ ] Have stakeholder(s) approved the change? ## Implementation -...
SEL to stack support indtroduced in #600 could be improved the same way `EraVMExpandSelect` does with `rN = cond ? rN : value` and `rN = cond ? value :...
LLVM can replace hand-written loops with bit manipulation intrinsics if loop idiom recognition pass decides so. There [recent improvements](https://github.com/llvm/llvm-project/commit/83b01aaf5107) in this pass that might affect performance and correctness after LLVM...
If to cherry-pick sinking to multiple uses optimization from LLVM 18 (#636), it slightly improves overall performance while noticeably regresses arithmetic shift right in EVM interpreter smart contract. As the...
Similar to #580, EVM is likely to benefit from main IV removal. However as the transformation increases register pressure, it's not apparent. We need to measure the impact on benchmarks...
At the moment EraVM doesn't support `SELaas for a in {r, i ,c, s}` pseudos. The goal of this task is to make sure that `store(select)` pattern assuming single use...
#592 has shown that we can get significant performance gains from changing default parameters in LLVM passes. This issue is to check other options systematically and document the findings. It's...