mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 11:13:28 +01:00
Fix the encoding of t2ISB by using the right class and also parse it correctly
llvm-svn: 123776
This commit is contained in:
parent
df668227fb
commit
6e4c5af01e
@ -2808,7 +2808,7 @@ def t2DSB : AInoP<(outs), (ins memb_opt:$opt), ThumbFrm, NoItinerary,
|
||||
}
|
||||
|
||||
// ISB has only full system option -- for disassembly only
|
||||
def t2ISB : T2I<(outs), (ins), NoItinerary, "isb", "",
|
||||
def t2ISB : AInoP<(outs), (ins), ThumbFrm, NoItinerary, "isb", "",
|
||||
[/* For disassembly only; pattern left blank */]>,
|
||||
Requires<[IsThumb2, HasV7]> {
|
||||
let Inst{31-4} = 0xf3bf8f6;
|
||||
|
@ -1193,7 +1193,7 @@ GetMnemonicAcceptInfo(StringRef Mnemonic, bool &CanAcceptCarrySet,
|
||||
Mnemonic == "cps" || Mnemonic == "mcr2" || Mnemonic == "it" ||
|
||||
Mnemonic == "mcrr2" || Mnemonic == "cbz" || Mnemonic == "cdp2" ||
|
||||
Mnemonic == "trap" || Mnemonic == "mrc2" || Mnemonic == "mrrc2" ||
|
||||
Mnemonic == "dsb" || Mnemonic == "movs" ||
|
||||
Mnemonic == "dsb" || Mnemonic == "movs" || Mnemonic == "isb" ||
|
||||
(isThumb && Mnemonic == "bkpt")) {
|
||||
CanAcceptPredicationCode = false;
|
||||
} else {
|
||||
|
@ -130,3 +130,6 @@
|
||||
|
||||
@ CHECK: bkpt #10 @ encoding: [0x7a,0x00,0x20,0xe1]
|
||||
bkpt #10
|
||||
|
||||
@ CHECK: isb @ encoding: [0x6f,0xf0,0x7f,0xf5]
|
||||
isb
|
||||
|
@ -164,4 +164,6 @@
|
||||
ldrsh.w r0, [r0]
|
||||
@ CHECK: bfi r0, r0, #5, #7 @ encoding: [0x60,0xf3,0x4b,0x10]
|
||||
bfi r0, r0, #5, #7
|
||||
@ CHECK: isb @ encoding: [0xbf,0xf3,0x6f,0x8f]
|
||||
isb
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user