DynamoRIO / DynamoRIO/dynamorio
[drmemtrace] record branch target information for filtered traces
- Dominant language
- C
- Stars
- 3.2k
- Forks
- 629
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 30
Description
For non-filtered traces, branch target info can be inferred from the final trace by the tool. But for a trace with icache filtering this is not the case. To provide branch taken/not-taken and target information we'd have to insert an extra entry into the trace with the target, which for conditionals will require flag emulation logic, with corresponding additional overhead: so perhaps this should be controlled by a runtime flag.
Contributor guide
Research direction
Start by locating the drmemtrace implementation for icache filtering and the trace record format. Determine how filtered traces currently represent branches, then scope the proposed runtime-controlled target information and its conditional-branch flag handling. Done means the behavior, overhead control, and resulting branch target data are specified and validated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100