This is an archive of the discontinued LLVM Phabricator instance.

[Libomptarget] Change visibility to hidden for device RTL
ClosedPublic

Authored by jhuber6 on Jan 20 2022, 10:11 AM.

Details

Summary

This patch changes the visibility for all construct in the new device
RTL to be hidden by default. This is done after the changes introduced
in D117806 changed the visibility from being hidden by default for all
device compilations. This asserts that the visibility for the device
runtime library will be hidden except for the internal environment
variable. This is done to aid optimization and linking of the device
library.

Diff Detail

Event Timeline

jhuber6 created this revision.Jan 20 2022, 10:11 AM
jhuber6 requested review of this revision.Jan 20 2022, 10:11 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 20 2022, 10:11 AM
JonChesterfield accepted this revision.Jan 20 2022, 12:08 PM

LG. @ronlieb rocm may need similar annotation for the old runtime, there's a macro for making variables externally accessible that would apply visibility protected to the environment and the array used by the memory allocator.

openmp/libomptarget/DeviceRTL/src/Configuration.cpp
29

Protected? Don't want to preempt this one either

This revision is now accepted and ready to land.Jan 20 2022, 12:08 PM
jhuber6 added inline comments.Jan 20 2022, 1:18 PM
openmp/libomptarget/DeviceRTL/src/Configuration.cpp
29

Right, I'll change it.

jhuber6 updated this revision to Diff 401780.Jan 20 2022, 2:08 PM

Updating visibility and for old runtime.

This revision was automatically updated to reflect the committed changes.