DynamoRIO / DynamoRIO/dynamorio
Finish AArch64 clean call inlining optimization
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 31
Description
#2498 adds initial clean call inlining for AArch64, but there are a couple of FIXMEs that still need to be addressed in `core/arch/aarch64/clean_call_opt.c`
I am splitting this off #1621 to make it easier to keep track of the remaining FIXMEs:
- [x] Analyze arithmetic flags usage in `analyze_callee_saved_regs`
- [x] Save & restore arithmetic flags in `insert_inline_reg_save/restore`
- [ ] implement `analyze_clean_call_aflags`
- [ ] implement `check_callee_instr_level2`.
- [ ] implement re-writing of access to SP and X29 when inlining in `check_callee_ilist_inline`.
Most of those FIXMEs are quite self-contained and could be a good starting point for people interested in contributing to the AArch64 backend. I am happy to provide help & guidance, if anyone is interested in picking up FIXMEs from the list.
Contributor guide
Assessment
This issue has not been assessed yet.