This is an archive of the discontinued LLVM Phabricator instance.

[clang] Don't emit type tests for dllexport/import classes
ClosedPublic

Authored by aeubanks on Jul 13 2022, 3:54 PM.

Details

Summary

According to https://clang.llvm.org/docs/LTOVisibility.html, classes on
Windows with dllimport/export receive public LTO visibility and
therefore should not participate in WPD.

Diff Detail

Event Timeline

aeubanks created this revision.Jul 13 2022, 3:54 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 13 2022, 3:54 PM
aeubanks requested review of this revision.Jul 13 2022, 3:54 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 13 2022, 3:54 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
pcc added a comment.Feb 27 2023, 3:55 PM

Can't the code in CodeGenModule::HasHiddenLTOVisibility be moved here instead of duplicating it?

aeubanks updated this revision to Diff 500987.Feb 27 2023, 5:34 PM

move HasHiddenLTOVisibility DLL code to AlwaysHasLTOVisibilityPublic

pcc accepted this revision.Apr 25 2023, 1:54 PM

LGTM

This revision is now accepted and ready to land.Apr 25 2023, 1:54 PM
This revision was landed with ongoing or failed builds.Apr 25 2023, 2:06 PM
This revision was automatically updated to reflect the committed changes.