X86 Peephole: fold loads to the source register operand if possible.
authorManman Ren <mren@apple.com>
Sat, 28 Jul 2012 16:48:01 +0000 (16:48 +0000)
committerManman Ren <mren@apple.com>
Sat, 28 Jul 2012 16:48:01 +0000 (16:48 +0000)
commit0eb3edea9cb6819334173a7d288da85943201fe5
tree77172a23d7618e5dbe447fc4b7536ba1a416deaf
parentcdfbcdeeede52de472ae8187c0fb4ed4a014c2a3
X86 Peephole: fold loads to the source register operand if possible.

Machine CSE and other optimizations can remove instructions so folding
is possible at peephole while not possible at ISel.

rdar://10554090 and rdar://11873276

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160919 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Target/TargetInstrInfo.h
lib/CodeGen/PeepholeOptimizer.cpp
lib/Target/X86/X86InstrInfo.cpp
lib/Target/X86/X86InstrInfo.h
test/CodeGen/X86/2012-05-19-avx2-store.ll
test/CodeGen/X86/break-sse-dep.ll
test/CodeGen/X86/fold-load.ll
test/CodeGen/X86/fold-pcmpeqd-1.ll
test/CodeGen/X86/sse-minmax.ll
test/CodeGen/X86/vec_compare.ll