diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.td | 3 | 
1 files changed, 3 insertions, 0 deletions
| diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td index b895eb260d4..7dcdbd82ea7 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.td +++ b/llvm/lib/Target/X86/X86InstrInfo.td @@ -2362,6 +2362,9 @@ def : Pat<(extloadi8i1 addr:$src), (MOV8rm addr:$src)>;  def : Pat<(i16 (anyext R8 :$src)), (MOVZX16rr8  R8 :$src)>;  def : Pat<(i32 (anyext R8 :$src)), (MOVZX32rr8  R8 :$src)>;  def : Pat<(i32 (anyext R16:$src)), (MOVZX32rr16 R16:$src)>; +def : Pat<(i16 (anyext (loadi8  addr:$src))), (MOVZX16rm8  addr:$src)>; +def : Pat<(i32 (anyext (loadi8  addr:$src))), (MOVZX32rm8  addr:$src)>; +def : Pat<(i32 (anyext (loadi16 addr:$src))), (MOVZX32rm16 addr:$src)>;  //===----------------------------------------------------------------------===//  // Some peepholes | 

