aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM
diff options
context:
space:
mode:
authorJohnny Chen <johnny.chen@apple.com>2011-04-08 20:03:46 +0000
committerJohnny Chen <johnny.chen@apple.com>2011-04-08 20:03:46 +0000
commitee10b13a4408781fd5f255527e3c51cd24dc96ef (patch)
treeeeba8caf0bbbfd030d8752824c7d45012844b9a7 /lib/Target/ARM
parentc636074afcf95ecd9bb4069a49087a019d5e96b4 (diff)
downloadexternal_llvm-ee10b13a4408781fd5f255527e3c51cd24dc96ef.zip
external_llvm-ee10b13a4408781fd5f255527e3c51cd24dc96ef.tar.gz
external_llvm-ee10b13a4408781fd5f255527e3c51cd24dc96ef.tar.bz2
Check opcoe (dmb, dsb) instead of bitfields matching.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129148 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM')
-rw-r--r--lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp13
1 files changed, 1 insertions, 12 deletions
diff --git a/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp b/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
index d4cd087..616b76a 100644
--- a/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
+++ b/lib/Target/ARM/Disassembler/ARMDisassemblerCore.cpp
@@ -3212,17 +3212,6 @@ static bool DisassembleNDupFrm(MCInst &MI, unsigned Opcode, uint32_t insn,
return true;
}
-// A8.6.41 DMB
-// A8.6.42 DSB
-// A8.6.49 ISB
-static inline bool MemBarrierInstr(uint32_t insn) {
- unsigned op7_4 = slice(insn, 7, 4);
- if (slice(insn, 31, 8) == 0xf57ff0 && (op7_4 >= 4 && op7_4 <= 6))
- return true;
-
- return false;
-}
-
static inline bool PreLoadOpcode(unsigned Opcode) {
switch(Opcode) {
case ARM::PLDi12: case ARM::PLDrs:
@@ -3286,7 +3275,7 @@ static bool DisassemblePreLoadFrm(MCInst &MI, unsigned Opcode, uint32_t insn,
static bool DisassembleMiscFrm(MCInst &MI, unsigned Opcode, uint32_t insn,
unsigned short NumOps, unsigned &NumOpsAdded, BO B) {
- if (MemBarrierInstr(insn)) {
+ if (Opcode == ARM::DMB || Opcode == ARM::DSB) {
// Inst{3-0} encodes the memory barrier option for the variants.
unsigned opt = slice(insn, 3, 0);
switch (opt) {