[llvm-bugs] [Bug 25672] New: [powerpc64] Unnecessary stack frame when using sqrtf()
via llvm-bugs
llvm-bugs at lists.llvm.org
Sun Nov 29 15:48:03 PST 2015
https://llvm.org/bugs/show_bug.cgi?id=25672
Bug ID: 25672
Summary: [powerpc64] Unnecessary stack frame when using sqrtf()
Product: libraries
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: normal
Priority: P
Component: Backend: PowerPC
Assignee: unassignedbugs at nondot.org
Reporter: anton at samba.org
CC: llvm-bugs at lists.llvm.org
Classification: Unclassified
The following testcase:
extern float sqrtf (float);
float t3(float a)
{
return sqrtf(a);
}
does not allocate a stack frame on gcc:
# gcc -S -O3 -mcpu=power8 -ffast-math test.c
# cat test.s
t3:
fsqrts 1,1
blr
But does on clang:
# clang -S -O3 -mcpu=power8 -ffast-math -mrecip=none test.c
# cat test.s
t3: # @t3
.Lfunc_begin2:
# BB#0: # %entry
stw 31, -4(1)
stwu 1, -16(1)
mr 31, 1
xssqrtsp 1, 1
addi 1, 1, 16
lwz 31, -4(1)
blr
I added -mrecip=none to keep the output simple, but it reproduces without it.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20151129/aefc4f30/attachment.html>
More information about the llvm-bugs
mailing list