DynamoRIO / DynamoRIO/dynamorio

Finish AArch64 clean call inlining optimization

Open
#2,796 1 comment 0 reactions 0 assignees View on GitHub
good first issue help wanted OpSys-AArch64 OpSys-Linux
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.