This is an archive of the discontinued LLVM Phabricator instance.

CodeGen: Don't follow aliases when extracting type info.
ClosedPublic

Authored by pcc on Jul 25 2019, 7:02 PM.

Details

Summary

This fixes a crash in the case where the type info object is an alias
pointing to a non-zero offset within a global or is otherwise unanalyzable
by the stripPointerCasts() function. Looking through the alias is not the
right thing to do anyway for similar reasons as D65118.

Event Timeline

pcc created this revision.Jul 25 2019, 7:02 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 25 2019, 7:02 PM
Herald added a subscriber: hiraditya. · View Herald Transcript
tejohnson accepted this revision.Aug 2 2019, 7:24 AM

LGTM with suggestion below.

llvm/test/CodeGen/X86/typeid-alias.ll
1

Add comment about what this is testing. Especially since nothing in the output is being checked (should it?).

This revision is now accepted and ready to land.Aug 2 2019, 7:24 AM
pcc marked 2 inline comments as done.Aug 2 2019, 10:40 AM
pcc added inline comments.
llvm/test/CodeGen/X86/typeid-alias.ll
1

Done and added a basic sanity check that the output is valid.

This revision was automatically updated to reflect the committed changes.
pcc marked an inline comment as done.