This is an archive of the discontinued LLVM Phabricator instance.

[IR] move nomerge attribute from function declaration/definition to callsites
ClosedPublic

Authored by zequanwu on Jan 12 2021, 11:24 AM.

Details

Summary

Move nomerge attribute from function declaration/definition to callsites to
allow virtual function calls attach the attribute.

Diff Detail

Event Timeline

zequanwu requested review of this revision.Jan 12 2021, 11:24 AM
zequanwu created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptJan 12 2021, 11:24 AM
Herald added a subscriber: cfe-commits. · View Herald Transcript
rnk accepted this revision.Jan 12 2021, 11:41 AM

lgtm, thanks!

clang/lib/CodeGen/CGCall.cpp
1988

This is the key change, I think this is worth a comment. Now we only place LLVM nomerge attributes on call sites, never functions, and this allows them to work on indirect virtual function calls.

This revision is now accepted and ready to land.Jan 12 2021, 11:41 AM
This revision was automatically updated to reflect the committed changes.
zequanwu marked an inline comment as done.