X86: do not fold load instructions such as [V]MOVS[S|D] to other instructions
authorManman Ren <mren@apple.com>
Tue, 27 Nov 2012 18:09:26 +0000 (18:09 +0000)
committerManman Ren <mren@apple.com>
Tue, 27 Nov 2012 18:09:26 +0000 (18:09 +0000)
commitf365d3984e2934b182e866d545348988d3b681d5
treeb9d0c127b8d4db7ee980b970eeaf61ef4b6ea822
parent4bfea7685d6ca28178f18ea27b19f50524ac677e
X86: do not fold load instructions such as [V]MOVS[S|D] to other instructions
when the destination register is wider than the memory load.

These load instructions load from m32 or m64 and set the upper bits to zero,
while the folded instructions may accept m128.

rdar://12721174

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168710 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86InstrInfo.cpp
test/CodeGen/X86/fold-load-vec.ll [new file with mode: 0644]