[llvm-bugs] [Bug 26589] New: Live range for register DBG_VALUEs extends across register mask clobbers
via llvm-bugs
llvm-bugs at lists.llvm.org
Thu Feb 11 17:59:08 PST 2016
https://llvm.org/bugs/show_bug.cgi?id=26589
Bug ID: 26589
Summary: Live range for register DBG_VALUEs extends across
register mask clobbers
Product: libraries
Version: trunk
Hardware: PC
OS: Windows NT
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: rnk at google.com
CC: aprantl at apple.com, llvm-bugs at lists.llvm.org
Classification: Unclassified
Consider:
void __attribute__((noinline)) clobber() { asm volatile("xor %edi, %edi"); }
int main(int argc, char **argv) { clobber(); }
Clang emits dwarf that shows that argc is in EDI and it is live across the
entire body of main. This is not true, it is clobbered by the call to clobber.
Our current code only stops live ranges on direct register definitions, not
call register masks.
Iterating over register mask clobbers should be enough to fix this.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160212/fa603ebb/attachment.html>
More information about the llvm-bugs
mailing list