Extremely long running time when emitting `irOptimized` for AAVE
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 2d 19h
- Merged PRs (30d)
- 29
Description
## Description
The `irOptimized` emission takes around 40 minutes. Is slightly less if I do not request `irOptimized` but instead compile directly to EVM with `viaIR`.
The RAM usage is also over the top and close to 25 GB during the last minutes before returning the output.
## Environment
- Compiler version: 0.8.25
- Target EVM version (as per compiler settings): default
- Framework/IDE (e.g. Truffle or Remix): CLI
- Operating system: MacOS 14 Sonoma
## Steps to Reproduce
Can be reproduced with the standard JSON containing the AAVE v3 project.
Unfortunately, I could not minimize it as it seems to have flaking non-linear effects.
Command line:
`./solc-0.8.25 --standard-json json_input_compat_ir.json`
Standard JSON input:
[json_input_compat_ir.json](https://github.com/ethereum/solidity/files/15420714/json_input_compat_ir.json)
Contributor guide
Research direction
Start by running the attached json_input_compat_ir.json with ./solc-0.8.25 --standard-json and compare irOptimized emission with direct viaIR compilation. Investigate the compiler path responsible for the reported runtime and memory growth; done means identifying and addressing the cause with reproducible performance and memory measurements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, solidity
- Domain
- compilers, performance
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100