[llvm-dev] Why is llvm.maxnum.f32 coming through unreduced?
Tim Northover via llvm-dev
llvm-dev at lists.llvm.org
Mon Nov 16 09:54:23 PST 2015
On 16 November 2015 at 09:45, Rodney M. Bates <rodney_bates at lcwb.coop> wrote:
> With a link name like "llvm.maxnum.f32", I would expect it to be provided
> by the llvm distribution.
Ah, it ought to have been converted into an "fmaxf" call. It's
possible that's a bug in LLVM 3.6 and the intrinsic wasn't supported
on x86 then, since it works for me on trunk:
$ cat simple.ll
define float @foo(float %l, float %r) {
%res = call float @llvm.maxnum.f32(float %l, float %r)
ret float %res
}
declare float @llvm.maxnum.f32(float, float)
$ bin/llc -mtriple=x86_64-apple-darwin simple.ll -o -
[...]
foo: # @foo
.cfi_startproc
# BB#0:
jmp fmaxf # TAILCALL
.cfi_endproc
Alternatively (if that works for you too), it might be some kind of
misconfiguration in your front-end, though that seems a bit unlikely.
Tim.
More information about the llvm-dev
mailing list