Verbose outlining name

Hi,
I noticed that clang outlines OpenMP regions without giving verbose function names.
As shown below, it is almost impossible to tell where “__omp_outlined__5_wrapper” is from when compiling a big program.However, I need to investigate these regions and reduce register spill which is performance critical.

ptxas info : Function properties for __omp_offloading_33_3c57fa9__ZN11qmcplusplus12SplineC2ROMPIdfE17evaluateDetRatiosINS_6VectorIfSaIfELj0EEEfEEvRKNS_18VirtualParticleSetERT_RKS9_RSt6vectorIT0_SaISE_EE_l571
32 bytes stack frame, 0 bytes spill stores, 0 bytes spill loads

ptxas info : Function properties for __omp_outlined__5_wrapper
224 bytes stack frame, 136 bytes spill stores, 136 bytes spill loads
ptxas info : Function properties for ZN7spline228computeLocationAndFractionalIdEEvPKN11qmcplusplus14bspline_traitsIT_Lj3EE10SplineTypeES3_S3_S3_RiS8_S8_PS3_S9_S9
272 bytes stack frame, 236 bytes spill stores, 236 bytes spill loads
ptxas info : Function properties for __omp_outlined__1_wrapper
368 bytes stack frame, 340 bytes spill stores, 340 bytes spill loads

A composite name __omp_outlined_SOURCE_FUNCTION_NAME is way more useful.

Could someone fix this or point me where to fix this in the clang source.

Best,

Ye

Can you give the attached patch a try? (untested)

0001-Name-outlined-functions.patch (13.1 KB)