diff options
| author | Job Noorman <jnoorman@igalia.com> | 2023-10-20 06:36:12 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-20 06:36:12 +0000 |
| commit | 95f924f30ae16be0d125646b9e4f1e33d4e5d08b (patch) | |
| tree | 023bbfcb24b9d2fed222e572f7f3046b78a2b697 /lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp | |
| parent | 195f6236c7e67ba814cb1614917ff111ee1fdd29 (diff) | |
[RISCV][MC] Implement evaluateBranch for auipc+jalr pairs (#65480)
This patch implements `MCInstrAnalysis` state in order to be able
analyze auipc+jalr pairs inside `evaluateBranch`.
This is implemented as follows:
- State: array of currently known GPR values;
- Whenever an auipc is detected in `updateState`, update the state value
of RD with the immediate;
- Whenever a jalr is detected in `evaluateBranch`, check if the state
holds a value for RS1 and use that to compute its target.
Note that this is similar to how binutils implements it and the output
of llvm-objdump should now mostly match the one of GNU objdump.
This patch also updates the relevant llvm-objdump patches and adds a new
one testing the output for interleaved auipc+jalr pairs.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp')
0 files changed, 0 insertions, 0 deletions
