HomePhabricator

[OpenMP] Internalize functions in OpenMPOpt to improve IPO passes

Authored by jhuber6 on May 19 2021, 7:57 PM.

Description

[OpenMP] Internalize functions in OpenMPOpt to improve IPO passes

Summary:
Currently the attributor needs to give up if a function has external linkage.
This means that the optimization introduced in D97818 will only apply to static
functions. This change uses the Attributor to internalize OpenMP device
routines by making a copy of each function with private linkage and replacing
the uses in the module with it. This allows for the optimization to be applied
to any regular function.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D102824

Details

Committed
jhuber6Jun 22 2021, 9:38 AM
Reviewer
jdoerfert
Differential Revision
D102824: [OpenMP] Internalize functions in OpenMPOpt to improve IPO passes
Parents
rGc747b7d1d9a2: [llvm] Fix lto tests that requires ld64
Branches
Unknown
Tags
Unknown