Optimized instruction sequence for sitofp operation on X86-32
authorElena Demikhovsky <elena.demikhovsky@intel.com>
Sun, 10 Jan 2016 09:41:22 +0000 (09:41 +0000)
committerElena Demikhovsky <elena.demikhovsky@intel.com>
Sun, 10 Jan 2016 09:41:22 +0000 (09:41 +0000)
commitd6de44078ba8eb484271e3ab6dd2fd9f59c93920
treefbd9aebbdd35ada6a9907332cf6d8c44d1f9b5fb
parentca4af1ae34078c2b4b734e44a7d6bb6add27efed
Optimized instruction sequence for sitofp operation on X86-32
Optimized sitofp i64 %x to double. The current sequence

movl %ecx, 8(%esp)
movl %edx, 12(%esp)
fildll 8(%esp)

is replaced with:

movd %ecx, %xmm0
movd %edx, %xmm1
punpckldq %xmm1, %xmm0
movq %xmm0, 8(%esp)

Differential Revision: http://reviews.llvm.org/D15946

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257285 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/dagcombine-cse.ll
test/CodeGen/X86/scalar-int-to-fp.ll