This is an archive of the discontinued LLVM Phabricator instance.

[IR] Add significant_addr property.
AbandonedPublic

Authored by zequanwu on Mar 11 2021, 3:45 PM.

Details

Summary

GlobalValue::UnnamedAddr::None is the default property for global value, and
optimizer could update it to local_unnamed_addr or unnamed_addr in
GlobalOpt. Sometimes, we don't want this to happen. The new significant_addr
property doesn't allow optimizer to change it.

I'll add a clang attribute to map it to significant_addr.

Diff Detail

Event Timeline

zequanwu created this revision.Mar 11 2021, 3:45 PM
zequanwu requested review of this revision.Mar 11 2021, 3:45 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 11 2021, 3:45 PM

How is significant_addr different from unspecified unnamed_addr/local_unnamed_addr?
I think there should be more langref changes.

zequanwu updated this revision to Diff 330384.Mar 12 2021, 3:14 PM

Update LangRef.

Patch description states what this patch does, but not why it does what it does.

zequanwu abandoned this revision.Mar 30 2021, 11:04 AM