[PATCH] D62028: [DebugInfo][AArch64] Recognise target specific instruction as mov instr
Alexey Lapshin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu May 16 13:27:34 PDT 2019
avl created this revision.
avl added reviewers: efriedma, SjoerdMeijer, aprantl, dblaikie.
Herald added subscribers: hiraditya, kristof.beyls, javed.absar.
Herald added a project: LLVM.
This fix is for the problem from https://bugs.llvm.org/show_bug.cgi?id=38714.
Specifically, Simple Register Coalescing creates following conversion :
undef %0.sub_32:gpr64 = ORRWrs $wzr, %3:gpr32common, 0, debug-location !24;
It copies 32-bit value from gpr32 into gpr64. But Live DEBUG_VALUE analysis
is not able to create debug location record for that instruction. So the problem
is in that debug location for argc variable is incorrect. The fix is
to write custom isCopyInstrImpl() which would recognize the ORRWrs instr.
https://reviews.llvm.org/D62028
Files:
llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
llvm/lib/Target/AArch64/AArch64InstrInfo.h
llvm/test/CodeGen/AArch64/aarch64-mov-debug-locs.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D62028.199887.patch
Type: text/x-patch
Size: 8492 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190516/be284dc7/attachment.bin>
More information about the llvm-commits
mailing list