[K/N] Make kotlin-remove-sp a proper LLVM pass#6301
[K/N] Make kotlin-remove-sp a proper LLVM pass#6301Alexander Shabalin (projedi) wants to merge 3 commits into
Conversation
`RemoveRedundantSafepointsPass` was called manually from a compiler phase. This commits turns it into a proper LLVM pass and calls it via `LLVMKotlinRunPasses`. ^KT-84060
`RemoveRedundantSafepointsPass` operates on functions, so it can be safely made into a function pass. ^KT-84060
`RemoveRedundantSafepointsPass` internals were implemented using LLVM C API for a long time. Convert them to a more convenient C++ API. Additionally, make the pass track if it made any changes to avoid needlessly invalidating analysises. ^KT-84060
Code Owners
|
|
/dry-run |
|
THIS IS A DRY RUN Quality gate is triggered at https://buildserver.labs.intellij.net/build/977499308 — use this link to get full insight. Quality gate was triggered with the following revisions:
Quality gate finished successfully. |
|
Checked that between the old implementation, the new one and the fallback
The phase time improved by ~10%, the fallback version is faster by ~10% on top of that and matches LLVM pass time. So, the difference between llvm pass and the callback comes from the separate |
No description provided.