[llvm-commits] [llvm] r150060 - in /llvm/trunk: include/llvm/IntrinsicsX86.td lib/Target/X86/X86ISelLowering.cpp lib/Target/X86/X86InstrSSE.td

Duncan Sands baldrick at free.fr
Wed Feb 8 07:41:32 PST 2012


Hi David,

>> I do intend to remove the intrinsics eventually. I just haven't looked
>> at what I need to do in order to do that in the AutoUpgrade code so I
>> didn't do it yet. The previous intrinsic removal was my first time
>> using the IR builder functions so I'm pretty new to that side of llvm.
>>
>> Would you prefer me to put the builtin lines back or would you rather
>> fix dragonegg to not use them?
>
> Please put back the builtin lines and do not delete the intrinsics.
>
> Intrinsics are used by users and we want to respect that.
>
> The builtins are useful for running the C backend to get something
> compilable by gcc.  This is very helpful for debugging.

once auto-upgrade support for these intrinsics goes in, won't everything be
fine?  Old bitcode using the intrinsics will be turned into generic LLVM IR
(shuffles).  The C backend should turn this into valid C, though indeed not
into the GCC builtins anymore.  Frontends can pretty easily just generate
the generic IR rather than the intrinsics (at least I hope it's easy, since I'm
going to have to do this in my front-end).

Ciao, Duncan.



More information about the llvm-commits mailing list