[llvm-commits] [llvm] r139329 - /llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp

Owen Anderson resistor at mac.com
Thu Sep 8 15:48:37 PDT 2011


Author: resistor
Date: Thu Sep  8 17:48:37 2011
New Revision: 139329

URL: http://llvm.org/viewvc/llvm-project?rev=139329&view=rev
Log:
All conditional branches are disallowed in IT blocks, not just CBZ/CBNZ.

Modified:
    llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp

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=139329&r1=139328&r2=139329&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp (original)
+++ llvm/trunk/lib/Target/ARM/Disassembler/ARMDisassembler.cpp Thu Sep  8 17:48:37 2011
@@ -429,12 +429,13 @@
   switch (MI.getOpcode()) {
     case ARM::tBcc:
     case ARM::t2Bcc:
-      return Success;
     case ARM::tCBZ:
     case ARM::tCBNZ:
-      // Some instructions are not allowed in IT blocks.
+      // Some instructions (mostly conditional branches) are not
+      // allowed in IT blocks.
       if (!ITBlock.empty())
         return SoftFail;
+      return Success;
       break;
     default:
       break;





More information about the llvm-commits mailing list