forked from OSchip/llvm-project
[X86] Allow any 8-bit immediate to be used with bt/btc/btr/bts memory aliases.
We have aliases that disambiguate memory forms of bt/btc/btr/bts without suffixes to the 32-bit form. These aliases should have been updated when the instructions were updated in r356413. llvm-svn: 368127
This commit is contained in:
parent
624980037d
commit
f192cc587c
|
@ -3219,13 +3219,13 @@ def : InstAlias<"aam", (AAM8i8 10)>, Requires<[Not64BitMode]>;
|
||||||
// Disambiguate the mem/imm form of bt-without-a-suffix as btl.
|
// Disambiguate the mem/imm form of bt-without-a-suffix as btl.
|
||||||
// Likewise for btc/btr/bts.
|
// Likewise for btc/btr/bts.
|
||||||
def : InstAlias<"bt\t{$imm, $mem|$mem, $imm}",
|
def : InstAlias<"bt\t{$imm, $mem|$mem, $imm}",
|
||||||
(BT32mi8 i32mem:$mem, i32i8imm:$imm), 0, "att">;
|
(BT32mi8 i32mem:$mem, i32u8imm:$imm), 0, "att">;
|
||||||
def : InstAlias<"btc\t{$imm, $mem|$mem, $imm}",
|
def : InstAlias<"btc\t{$imm, $mem|$mem, $imm}",
|
||||||
(BTC32mi8 i32mem:$mem, i32i8imm:$imm), 0, "att">;
|
(BTC32mi8 i32mem:$mem, i32u8imm:$imm), 0, "att">;
|
||||||
def : InstAlias<"btr\t{$imm, $mem|$mem, $imm}",
|
def : InstAlias<"btr\t{$imm, $mem|$mem, $imm}",
|
||||||
(BTR32mi8 i32mem:$mem, i32i8imm:$imm), 0, "att">;
|
(BTR32mi8 i32mem:$mem, i32u8imm:$imm), 0, "att">;
|
||||||
def : InstAlias<"bts\t{$imm, $mem|$mem, $imm}",
|
def : InstAlias<"bts\t{$imm, $mem|$mem, $imm}",
|
||||||
(BTS32mi8 i32mem:$mem, i32i8imm:$imm), 0, "att">;
|
(BTS32mi8 i32mem:$mem, i32u8imm:$imm), 0, "att">;
|
||||||
|
|
||||||
// clr aliases.
|
// clr aliases.
|
||||||
def : InstAlias<"clr{b}\t$reg", (XOR8rr GR8 :$reg, GR8 :$reg), 0>;
|
def : InstAlias<"clr{b}\t$reg", (XOR8rr GR8 :$reg, GR8 :$reg), 0>;
|
||||||
|
|
|
@ -10576,15 +10576,19 @@ blendvps %xmm0, (%eax), %xmm1
|
||||||
// CHECK: btcw $4, (%eax)
|
// CHECK: btcw $4, (%eax)
|
||||||
// CHECK: btcl $4, (%eax)
|
// CHECK: btcl $4, (%eax)
|
||||||
bt $4, (%eax)
|
bt $4, (%eax)
|
||||||
|
bt $255, (%eax)
|
||||||
btw $4, (%eax)
|
btw $4, (%eax)
|
||||||
btl $4, (%eax)
|
btl $4, (%eax)
|
||||||
bts $4, (%eax)
|
bts $4, (%eax)
|
||||||
|
bts $255, (%eax)
|
||||||
btsw $4, (%eax)
|
btsw $4, (%eax)
|
||||||
btsl $4, (%eax)
|
btsl $4, (%eax)
|
||||||
btr $4, (%eax)
|
btr $4, (%eax)
|
||||||
|
btr $255, (%eax)
|
||||||
btrw $4, (%eax)
|
btrw $4, (%eax)
|
||||||
btrl $4, (%eax)
|
btrl $4, (%eax)
|
||||||
btc $4, (%eax)
|
btc $4, (%eax)
|
||||||
|
btc $255, (%eax)
|
||||||
btcw $4, (%eax)
|
btcw $4, (%eax)
|
||||||
btcl $4, (%eax)
|
btcl $4, (%eax)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue