llvm / llvm/llvm-project

[lldb][Windows] Add support for the ARM64 PE format in PECallFrameInfo decoding

Open
#224,600 1 comment 0 reactions 0 assignees View on GitHub
lldb platform:windows
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

`PECallFrameInfo` can only decode the `x86_64` `UNWIND_INFO/UWOP_*` format. `ARM64 PE` uses a different .xdata encoding, so there is no call frame info there and unwinding falls back to prologue analysis plus the x29 frame pointer chain.

This is blocking recognizer tests on Windows ARM64.

Contributor guide

Open the contributing guide

Research direction

Locate the PECallFrameInfo decoder and read the existing x86_64 UNWIND_INFO/UWOP_* path first. Then study the ARM64 PE .xdata encoding and run the recognizer tests on Windows ARM64. Done means ARM64 PE call frame information decodes successfully instead of relying on prologue analysis and the x29 frame pointer chain.

Written by the indexing model from the issue text.

Assessment

Domain
devtools, operating-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.