[PATCH] D30307: Fix insertion of `sanitizer_cov_trace_pc_guard` insertion in optimized code with debug info
Adrian Prantl via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 23 13:23:49 PST 2017
> On Feb 23, 2017, at 1:07 PM, Mehdi Amini <mehdi.amini at apple.com> wrote:
>
>
>> On Feb 23, 2017, at 12:54 PM, Peter Collingbourne <peter at pcc.me.uk> wrote:
>>
>> On Thu, Feb 23, 2017 at 12:04 PM, Mehdi AMINI via Phabricator via llvm-commits <llvm-commits at lists.llvm.org> wrote:
>> mehdi_amini created this revision.
>> Herald added a subscriber: aprantl.
>>
>> It is illegal to have a call without debug info attached in a function
>> with debug info: it'll crash the backend.
>>
>> Isn't that a bug in the backend? What happens if I inline a function compiled without debug info into a function compiled with debug info?
>
> See my update, this is in the verifier.
> However I agree with you that this seems suspicious: what if LTO or ThinLTO make available a definition without debug info into a file with debug info.
>
> CC Adrian to clarify?
- inlining a function without debug info into function with debug info and a location on the call site works: IIRC the inlined nodebug function will inherit the location of the call site. (+david who has a prepared statement explaining this in detail ;-)
- inlining a function withdebug info into a function without debug info also works
- it is only inlining a function with debug info into another function with debug info but no location on the call site that is dangerous.
-- adrian
More information about the llvm-commits
mailing list