[cfe-dev] Setting a FunctionDecl as 'uncallable':

Reid Kleckner via cfe-dev cfe-dev at lists.llvm.org
Thu Jul 6 11:25:06 PDT 2017


My first guess would be that you want to modify overload resolution. I
think the CUDA host/device attributes are involved there. You can also look
at the implementation of __attribute__((enable_if)) as well.

However, do we really need a FunctionDecl for every subtarget
specialization? How does a user trigger specialization? Can they do
something like take a specialization and instantiate a class template with
it?

On Thu, Jul 6, 2017 at 9:31 AM, Keane, Erich via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Hi all-
> I'm working on an attribute implementation (RFC coming once I get a better
> idea about the implementation details, cpu_dispatch/cpu_specific from ICC)
> that permits multiple definitions of a function.  All definitions of the
> function ARE emitted, however with different name-mangling.  1 version of
> the function keeps the normal name-mangling/linking, so all
> call-expressions should call THAT one.
>
> My question is: Is there a way to mark a FunctionDecl as 'don't find me in
> lookup' such that it never ends up being a "Callee"?  Or should I be
> figuring out how to change the lookup-results here?
>
> Thanks,
> Erich
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20170706/7394558c/attachment.html>


More information about the cfe-dev mailing list