[llvm-commits] [llvm] r139240 - in /llvm/trunk: lib/Target/ARM/Disassembler/ARMDisassembler.cpp test/MC/Disassembler/ARM/thumb2.txt

Owen Anderson resistor at mac.com
Wed Sep 7 10:55:19 PDT 2011


Author: resistor
Date: Wed Sep  7 12:55:19 2011
New Revision: 139240

URL: http://llvm.org/viewvc/llvm-project?rev=139240&view=rev
Log:
Port more assembler tests over to disassembler tests, and fix a minor logic error that exposed.

Modified:
    llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
    llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt

Modified: llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp?rev=139240&r1=139239&r2=139240&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp (original)
+++ llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp Wed Sep  7 12:55:19 2011
@@ -2786,7 +2786,7 @@
         break;
       case 0xf3bf8f6:
         Inst.setOpcode(ARM::t2ISB);
-        return MCDisassembler::Success;
+        break;
     }
 
     unsigned imm = fieldFromInstruction32(Insn, 0, 4);

Modified: llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt?rev=139240&r1=139239&r2=139240&view=diff
==============================================================================
--- llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt (original)
+++ llvm/trunk/test/MC/Disassembler/ARM/thumb2.txt Wed Sep  7 12:55:19 2011
@@ -244,6 +244,164 @@
 0x1f 0xb9
 0x37 0xb9
 
+#------------------------------------------------------------------------------
+# CDP/CDP2
+#------------------------------------------------------------------------------
+# CHECK: cdp  p7, #1, c1, c1, c1, #4
+# CHECK: cdp2  p7, #1, c1, c1, c1, #4
+
+0x11 0xee 0x81 0x17
+0x11 0xfe 0x81 0x17
+
+
+#------------------------------------------------------------------------------
+# CLREX
+#------------------------------------------------------------------------------
+#CHECK: clrex
+#CHECK: it ne
+#CHECK: clrexne
+
+0xbf 0xf3 0x2f 0x8f
+0x18 0xbf
+0xbf 0xf3 0x2f 0x8f
+
+
+#------------------------------------------------------------------------------
+# CLZ
+#------------------------------------------------------------------------------
+#CHECK: clz r1, r2
+#CHECK: it eq
+#CHECK: clzeq r1, r2
+
+0xb2 0xfa 0x82 0xf1
+0x08 0xbf
+0xb2 0xfa 0x82 0xf1
+
+
+#------------------------------------------------------------------------------
+# CMN
+#------------------------------------------------------------------------------
+#CHECK: cmn.w r1, #15
+#CHECK: cmn.w r8, r6
+#CHECK: cmn.w r1, r6, lsl #10
+#CHECK: cmn.w r1, r6, lsr #10
+#CHECK: cmn.w sp, r6, lsr #10
+#CHECK: cmn.w r1, r6, asr #10
+#CHECK: cmn.w r1, r6, ror #10
+
+0x11 0xf1 0x0f 0x0f
+0x18 0xeb 0x06 0x0f
+0x11 0xeb 0x86 0x2f
+0x11 0xeb 0x96 0x2f
+0x1d 0xeb 0x96 0x2f
+0x11 0xeb 0xa6 0x2f
+0x11 0xeb 0xb6 0x2f
+
+
+#------------------------------------------------------------------------------
+# CMP
+#------------------------------------------------------------------------------
+#CHECK: cmp.w r5, #65280
+#CHECK: cmp.w r4, r12
+#CHECK: cmp.w r9, r6, lsl #12
+#CHECK: cmp.w r3, r7, lsr #31
+#CHECK: cmp.w sp, r6, lsr #1
+#CHECK: cmp.w r2, r5, asr #24
+#CHECK: cmp.w r1, r4, ror #15
+
+0xb5 0xf5 0x7f 0x4f
+0xb4 0xeb 0x0c 0x0f
+0xb9 0xeb 0x06 0x3f
+0xb3 0xeb 0xd7 0x7f
+0xbd 0xeb 0x56 0x0f
+0xb2 0xeb 0x25 0x6f
+0xb1 0xeb 0xf4 0x3f
+
+
+#------------------------------------------------------------------------------
+# DBG
+#------------------------------------------------------------------------------
+#CHECK: dbg #5
+#CHECK: dbg #0
+#CHECK: dbg #15
+
+0xaf 0xf3 0xf5 0x80
+0xaf 0xf3 0xf0 0x80
+0xaf 0xf3 0xff 0x80
+
+
+#------------------------------------------------------------------------------
+# DMB
+#------------------------------------------------------------------------------
+#CHECK: dmb sy
+#CHECK: dmb st
+#CHECK: dmb ish
+#CHECK: dmb ishst
+#CHECK: dmb nsh
+#CHECK: dmb nshst
+#CHECK: dmb osh
+#CHECK: dmb oshst
+#CHECK: dmb
+
+0xbf 0xf3 0x5f 0x8f
+0xbf 0xf3 0x5e 0x8f
+0xbf 0xf3 0x5b 0x8f
+0xbf 0xf3 0x5a 0x8f
+0xbf 0xf3 0x57 0x8f
+0xbf 0xf3 0x56 0x8f
+0xbf 0xf3 0x53 0x8f
+0xbf 0xf3 0x52 0x8f
+0xbf 0xf3 0x5f 0x8f
+
+
+#------------------------------------------------------------------------------
+# DSB
+#------------------------------------------------------------------------------
+#CHECK: dsb sy
+#CHECK: dsb st
+#CHECK: dsb ish
+#CHECK: dsb ishst
+#CHECK: dsb nsh
+#CHECK: dsb nshst
+#CHECK: dsb osh
+#CHECK: dsb oshst
+
+0xbf 0xf3 0x4f 0x8f
+0xbf 0xf3 0x4e 0x8f
+0xbf 0xf3 0x4b 0x8f
+0xbf 0xf3 0x4a 0x8f
+0xbf 0xf3 0x47 0x8f
+0xbf 0xf3 0x46 0x8f
+0xbf 0xf3 0x43 0x8f
+0xbf 0xf3 0x42 0x8f
+
+
+#------------------------------------------------------------------------------
+# EOR
+#------------------------------------------------------------------------------
+#CHECK: eor r4, r5, #61440
+#CHECK: eor.w r4, r5, r6
+#CHECK: eor.w r4, r5, r6, lsl #5
+#CHECK: eor.w r4, r5, r6, lsr #5
+#CHECK: eor.w r4, r5, r6, lsr #5
+#CHECK: eor.w r4, r5, r6, asr #5
+#CHECK: eor.w r4, r5, r6, ror #5
+
+0x85 0xf4 0x70 0x44
+0x85 0xea 0x06 0x04
+0x85 0xea 0x46 0x14
+0x85 0xea 0x56 0x14
+0x85 0xea 0x56 0x14
+0x85 0xea 0x66 0x14
+0x85 0xea 0x76 0x14
+
+
+#------------------------------------------------------------------------------
+# ISB
+#------------------------------------------------------------------------------
+#CHECK: isb sy
+
+0xbf 0xf3 0x6f 0x8f
 
 #------------------------------------------------------------------------------
 # IT





More information about the llvm-commits mailing list