[llvm-bugs] [Bug 25560] New: Emitting additional debug info would allow shrink-wrapping to be used on function with sanitize-like attribute
via llvm-bugs
llvm-bugs at lists.llvm.org
Tue Nov 17 14:10:03 PST 2015
https://llvm.org/bugs/show_bug.cgi?id=25560
Bug ID: 25560
Summary: Emitting additional debug info would allow
shrink-wrapping to be used on function with
sanitize-like attribute
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Common Code Generator Code
Assignee: unassignedbugs at nondot.org
Reporter: qcolombet at apple.com
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
Created attachment 15307
--> https://llvm.org/bugs/attachment.cgi?id=15307&action=edit
Without shrink-wrapping
In r253116, we disabled shrink-wrapping on function having a sanitize-like
attribute.
The rational for that change was that the sanitizers need to be able to rebuild
the stack frame anywhere in function and the produced code before (resp. after)
the prologue (resp. epilogue) does not describe how to that.
Indeed, frame settings are defined with cfa directives when the frame pointer
gets actually pushed. However, before that we still have the information
available directly in the frame pointer register, but this is not expressed in
the debug info.
Assuming this is possible to emit such information, it would be nice to teach
the compiler how to do it and then reenable shrink-wrapping when sanitizers
come into play.
I’ve attached the assembly code of a function with and without shrink-wrapping
enable for compiler-rt/test/asan/TestCases/null_deref.cc.
--
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/20151117/b9b8c081/attachment.html>
More information about the llvm-bugs
mailing list