[cfe-dev] Adding an intrinsic that the user can include in source code

Nemanja Ivanovic via cfe-dev cfe-dev at lists.llvm.org
Mon Nov 13 08:43:57 PST 2017


Keep in mind that if your intrinsic has an obvious direct mapping to the
builtin you're exposing, you can just write your intrinsic in a way that it
inherits from GCCBuiltin. That will avoid having to add custom lowering in
CGBuiltin.cpp. There should be plenty of examples of that in the
include/llvm/IR/IntrinsicsX86.td file that you already modified.


On Tue, Oct 31, 2017 at 11:56 PM, Martin J. O'Riordan via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> I suspect that you almost certainly need to also implement a handler for
> this in the function ‘CodeGenFunction::EmitX86BuiltinExpr’ in:
>
>
>
> tools/clang/lib/CodeGen/CGBuiltin.cpp
>
>
>
> All the best,
>
>
>
> MartinO
>
>
>
> *From:* cfe-dev [mailto:cfe-dev-bounces at lists.llvm.org
> <cfe-dev-bounces at lists.llvm.org>] *On Behalf Of *Seth Goldstein via
> cfe-dev
> *Sent:* 31 October 2017 22:20
> *To:* cfe-dev at lists.llvm.org
> *Subject:* [cfe-dev] Adding an intrinsic that the user can include in
> source code
>
>
>
> I would like to add an intrinsic that the user can put in their code.
>
> The intrinsic is for sending, ala MPI, a value to another processor.
>
> I have read the short document,
>
> https://llvm.org/docs/ExtendingLLVM.html, about adding intrinsics but
>
> must be missing something because it doesn't mention changing anything
>
> in clang.  I added my intrinsic to
>
> llvm/include/llvm/IR/IntrinsicsX86.td, then I added it to
>
> clang/include/clang/Basic/BuiltinsX86.def.  When I compile my code I get:
>
>
>
> send.c:14:3: error: cannot compile this builtin function yet
>
>   __builtin_uli_send0(1, 0, &incr);
>
>   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
>
>
> The AST has information about my intrinsic and the parameters, but not
>
> sure how to proceed.
>
>
>
> What am I missing?
>
>
>
>
>
> --------------
>
> Seth Copen Goldstein
>
> Carnegie Mellon University
>
> Computer Science Dept
>
> 7111 GHC
>
> 412-268-3828 <(412)%20268-3828>
>
> _______________________________________________
> 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/20171113/84080488/attachment-0001.html>


More information about the cfe-dev mailing list