summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2016-05-02 05:44:21 +0000
committerCraig Topper <craig.topper@gmail.com>2016-05-02 05:44:21 +0000
commit7b5925a5b6bdd3027a9f9519b9918cfe5bc2d6b8 (patch)
tree7bd79d52abfa402dd044d4d0247854a21c8aaada
parent94a9ee65c63155c81527fb05cc61f1d5432dfec5 (diff)
downloadbcm5719-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.td2
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;
}
OpenPOWER on IntegriCloud