Displaying 4 results from an estimated 4 matches for "__xxx_floor".
2016 Jun 07
4
llvm intrinsics/libc/libm question
...>> Ideally what I would like is to create a libc with functions like acos
>> called something like __xxx_acos that can still be recognized to be
>> optimized.
>>
>> RTLIB is pretty limited but it works fine, I can just use
>> setLibcallName(RTLIB::floor, "__xxx_floor")... but again, the functions that
>> are RTLIB are limited. Using intrinsics make it more difficult because then
>> you have to match the intrinsic (rather than it automatically generating a
>> lib call). ISD is just as bad (FCOPYSIGN, FABS for example) because then
>>...
2016 Jun 14
2
llvm intrinsics/libc/libm question
...> I'm not sure I follow about the RTLIB, I'm able to use an intrinsic
>> for
>> >> > floor (def int_floor::Intrinsic in IntrinsicsXXX.td) and still use
>> RTLIB
>> >> > to
>> >> > generate the appropriate name for the function (ie __xxx_floor). It
>> >> > sounds
>> >> > like you're implying either/or, not both?
>> >>
>> >> No, I'm just saying that RTLIB only solves the codegen problem; you'll
>> >> need something else (like your intrinsic?) to have better IR
&...
2016 Jun 07
2
llvm intrinsics/libc/libm question
...tions, for example, for acos this
doesn't apply.
Ideally what I would like is to create a libc with functions like acos
called something like __xxx_acos that can still be recognized to be
optimized.
RTLIB is pretty limited but it works fine, I can just use
setLibcallName(RTLIB::floor, "__xxx_floor")... but again, the functions
that are RTLIB are limited. Using intrinsics make it more difficult because
then you have to match the intrinsic (rather than it automatically
generating a lib call). ISD is just as bad (FCOPYSIGN, FABS for example)
because then they need to be manually lowered....
2016 Jun 07
3
llvm intrinsics/libc/libm question
In the first code I see a 'tail call @acos', in the second code I see a
tail call @llvm.acos.f32'. (sorry, there should be only one input for acos,
I've been trying many libm/libc functions).
Not sure why it's called TargetLibraryInfo if it's not in target specific
code? It seems that ALL targets use this code, making it generic. Am I
missing something here?
Basically