This is an archive of the discontinued LLVM Phabricator instance.

[clang] Add debug info in MicrosoftCXXABI::EmitVirtualMemPtrThunk()
ClosedPublic

Authored by aeubanks on Sep 28 2022, 12:58 PM.

Diff Detail

Event Timeline

aeubanks created this revision.Sep 28 2022, 12:58 PM
Herald added a project: Restricted Project. · View Herald TranscriptSep 28 2022, 12:58 PM
aeubanks requested review of this revision.Sep 28 2022, 12:58 PM
Herald added a project: Restricted Project. · View Herald TranscriptSep 28 2022, 12:58 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
aeubanks updated this revision to Diff 463661.Sep 28 2022, 1:02 PM

update test

aeubanks edited the summary of this revision. (Show Details)Sep 28 2022, 1:02 PM
dblaikie added inline comments.
clang/test/CodeGenCXX/microsoft-abi-member-pointers-debug-info.cpp
13

might be worth checking what location this is, to show it's a good one? (the code added makes some choice about what location to ascribe to this call, so the test should probably verify that)

aeubanks updated this revision to Diff 463669.Sep 28 2022, 1:29 PM
aeubanks edited the summary of this revision. (Show Details)

update test

aeubanks marked an inline comment as done.Sep 28 2022, 1:29 PM
dblaikie accepted this revision.Sep 28 2022, 3:38 PM

Sounds good to me.

(Ah, I see, that chrome bug actually hit the underlying problem, not even the verifier constraint - when the constraint is violated & not detected, then code gets inlined without being stitched up to the inline scope and you end up with instructions in a function where the function has one subprogram, but the scope chain of the instruction's location leads to a different subprogram - which is a problem/makes building the scope tree weird/not possible (because it's no longer a tree but a forest))

This revision is now accepted and ready to land.Sep 28 2022, 3:38 PM
This revision was landed with ongoing or failed builds.Sep 28 2022, 10:09 PM
This revision was automatically updated to reflect the committed changes.