summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/signals/TestSignalsAPI.py
diff options
context:
space:
mode:
authorThomas Preud'homme <thomasp@graphcore.ai>2019-11-14 14:42:01 +0000
committerThomas Preud'homme <thomasp@graphcore.ai>2019-11-19 11:23:11 +0000
commita89ca4ae179def7fac1a35e53d7b28d4c9d531be (patch)
tree91d45798b1ac784caaca66465c4522fef3e6bcb9 /lldb/packages/Python/lldbsuite/test/python_api/signals/TestSignalsAPI.py
parent7deb8ce4c161e9715181bd3618f059e8a4a742bb (diff)
downloadbcm5719-llvm-a89ca4ae179def7fac1a35e53d7b28d4c9d531be.tar.gz
bcm5719-llvm-a89ca4ae179def7fac1a35e53d7b28d4c9d531be.zip
Fix PR44001: assert failure in getFunctionLocalOffsetAfterInsn
Summary: Assert in getFunctionLocalOffsetAfterInsn() fails when processing a call MachineInstr inside a bundle and compiling with debug info. This is because labels are added by DwarfDebug::beginInstruction() which is called for each top-level MI by EmitFunctionBody()'s for-loop iteration but constructCallSiteEntryDIEs() which calls getFunctionLocalOffsetAfterInsn() iterates over all MIs. This commit modifies constructCallSiteEntryDIEs() to get the associated bundle MI for call MIs inside a bundle and use that to when calling getFunctionLocalOffsetAfterInsn() and getLabelAfterInsn(). It also skips loop iterations for bundle MIs since the loop statements are concerned with debug info for each physical instructions and bundles represent a group of instructions. It also fix the comment about PCAddr since the code is getting the return address and not the call address. Reviewers: dstenb, vsk, aprantl, djtodoro, dblaikie, NikolaPrica Subscribers: hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D70293
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/signals/TestSignalsAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud