File tree Expand file tree Collapse file tree 1 file changed +18
-1
lines changed
lldb/test/API/functionalities/unwind/cortex-m-exception Expand file tree Collapse file tree 1 file changed +18
-1
lines changed Original file line number Diff line number Diff line change 1212class TestCortexMExceptionUnwind (TestBase ):
1313 NO_DEBUG_INFO_TESTCASE = True
1414
15- @skipUnlessDarwin # on the lldb-remote-linux-ubuntu CI, only get 1 stack frame not 6
15+ # on the lldb-remote-linux-ubuntu CI, the binary.json's triple of
16+ # armv7m-apple is not being set in the Target triple, and we're
17+ # picking the wrong ABI plugin, ABISysV_arm.
18+ # ABISysV_arm::CreateDefaultUnwindPlan() doesn't have a way to detect
19+ # arm/thumb for a stack frame, or even the Target's triple for a
20+ # Cortex-M part that is always thumb. It hardcodes r11 as the frame
21+ # pointer register, which is correct for arm code but not thumb.
22+ # It is never correct # on a Cortex-M target.
23+ # The Darwin ABIMacOSX_arm diverges from AAPCS and always uses r7 for
24+ # the frame pointer -- the thumb convention -- whether executing arm or
25+ # thumb. So its CreateDefaultUnwindPlan picks the correct register for
26+ # the frame pointer, and we can walk the stack.
27+ # ABISysV_arm::CreateDefaultUnwindPlan will only get one frame and
28+ # not be able to continue.
29+ #
30+ # This may only be occuring on a 32-bit Ubuntu bot; need to test
31+ # 64-bit Ubuntu and confirm.
32+ @skipUnlessDarwin
1633 def test_no_fpu (self ):
1734 """Test that we can backtrace correctly through an ARM Cortex-M Exception return stack"""
1835
You can’t perform that action at this time.
0 commit comments