diff options
author | Craig Topper <craig.topper@gmail.com> | 2016-05-02 05:44:21 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2016-05-02 05:44:21 +0000 |
commit | 7b5925a5b6bdd3027a9f9519b9918cfe5bc2d6b8 (patch) | |
tree | 7bd79d52abfa402dd044d4d0247854a21c8aaada | |
parent | 94a9ee65c63155c81527fb05cc61f1d5432dfec5 (diff) | |
download | bcm5719-llvm-7b5925a5b6bdd3027a9f9519b9918cfe5bc2d6b8.tar.gz bcm5719-llvm-7b5925a5b6bdd3027a9f9519b9918cfe5bc2d6b8.zip |
[X86] Fix a bug in LOCK arithmetic operation pattern matching where the wrong immediate predicate check was being used for 64-bit instructions with 8-bit immediates.
This didn't cause a bug because the order of the patterns ensured that the 64-bit instructions with 32-bit immediates were selected first.
llvm-svn: 268212
-rw-r--r-- | llvm/lib/Target/X86/X86InstrCompiler.td | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/X86InstrCompiler.td b/llvm/lib/Target/X86/X86InstrCompiler.td index 8feea124451..5efa7c74fab 100644 --- a/llvm/lib/Target/X86/X86InstrCompiler.td +++ b/llvm/lib/Target/X86/X86InstrCompiler.td @@ -671,7 +671,7 @@ def NAME#64mi8 : RIi8<{ImmOpc8{7}, ImmOpc8{6}, ImmOpc8{5}, ImmOpc8{4}, ImmMod, (outs), (ins i64mem :$dst, i64i8imm :$src2), !strconcat(mnemonic, "{q}\t", "{$src2, $dst|$dst, $src2}"), - [(set EFLAGS, (Op addr:$dst, i64immSExt32:$src2))], + [(set EFLAGS, (Op addr:$dst, i64immSExt8:$src2))], IIC_ALU_MEM>, LOCK; } |