1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00

X86 if conversion + tail merging issues from PR6032.

llvm-svn: 93372
This commit is contained in:
Chris Lattner 2010-01-13 23:28:40 +00:00
parent 488a7187b4
commit 0aa093dbdf

View File

@ -1868,3 +1868,23 @@ carried over to machine instructions. Asm printer (or JIT) can use this
information to add the "lock" prefix.
//===---------------------------------------------------------------------===//
The X86 backend should be able to if-convert SSE comparisons like "ucomisd" to
"cmpsd". For example, this code:
double d1(double x) { return x == x ? x : x + x; }
Compiles into:
_d1:
ucomisd %xmm0, %xmm0
jnp LBB1_2
addsd %xmm0, %xmm0
ret
LBB1_2:
ret
Also, the 'ret's should be shared. This is PR6032.
//===---------------------------------------------------------------------===//