Allow a function to be specialised even if it has its address taken or
it's global. For such functions, consider all of the arguments as
overdefined. Don't delete the functions even if all the apparent calls
were redirected to specialised instances.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
I've checked the number of specializations created for CTMark with this patch. No changes there so I am not expecting a compile time hit. Approved.
Comment Actions
Looks like this assumption wasn't right. There is a compile-time regression (http://llvm-compile-time-tracker.com/compare.php?from=99d4c722e30816aca6698e20345bffab953d9d79&to=cc7bb7080fc8e6f4d217e7f9b971fbdbf091f9e7&stat=instructions:u) and code size changed on lencod (http://llvm-compile-time-tracker.com/compare.php?from=99d4c722e30816aca6698e20345bffab953d9d79&to=cc7bb7080fc8e6f4d217e7f9b971fbdbf091f9e7&stat=size-text).
Comment Actions
Right I see now. The compile time regression are without LTO, whereas I had checked only the LTO configuration. I can see three new specializations in lencod.