mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-04 01:42:09 +00:00
move PR9661 out to here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129527 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
a34d93630e
commit
b8295f7a0e
@ -2016,3 +2016,27 @@ We currently generate:
|
||||
We could save an instruction here by commuting the addss.
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
This (from PR9661):
|
||||
|
||||
float clamp_float(float a) {
|
||||
if (a > 1.0f)
|
||||
return 1.0f;
|
||||
else if (a < 0.0f)
|
||||
return 0.0f;
|
||||
else
|
||||
return a;
|
||||
}
|
||||
|
||||
Could compile to:
|
||||
|
||||
clamp_float: # @clamp_float
|
||||
movss .LCPI0_0(%rip), %xmm1
|
||||
minss %xmm1, %xmm0
|
||||
pxor %xmm1, %xmm1
|
||||
maxss %xmm1, %xmm0
|
||||
ret
|
||||
|
||||
with -ffast-math.
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
Loading…
Reference in New Issue
Block a user