[PATCH] D60967: Move setTargetAttributes after setGVProperties in SetFunctionAttributes

Scott Linder via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Apr 26 17:16:49 PDT 2019

scott.linder added a comment.

@rjmccall I'm not sure if this is the right place to continue discussing this, but I don't have a patch I am happy with and I would rather not post something half-baked.

Currently for AMDGPU we have the behavior that the user can set the visibility of these symbols with explicit attributes. If we consider the `kernel` attribute itself as an explicit visibility declaration how do we support this flexibility when we will have effectively mandated a single visibility that the user cannot interact with? Even if we are OK with mandating something like default visibility, we do not currently support preemptible symbols so `protected` is the optimal visibility. This may not be true of other targets, and it may not even be true of AMDGPU in the future, so hardcoding the visibility of `kernel` symbols to anything doesn't seem correct. Is something like "not-hidden" reasonable?

  rC Clang



More information about the cfe-commits mailing list