Rephrase loop so it doesn't leave unused bools around in Release mode.
[oota-llvm.git] / tools / llvm-readobj / ARMWinEHPrinter.cpp
index f6675bdcfedf1d6d19b057e2eb442549fd5ed070..b486e4ad0e51a1dfdcf0e60c40db5a1178d6c912 100644 (file)
@@ -508,15 +508,13 @@ void Decoder::decodeOpcodes(ArrayRef<ulittle8_t> Opcodes, unsigned Offset,
 
   bool Terminated = false;
   for (unsigned OI = Offset, OE = Opcodes.size(); !Terminated && OI < OE; ) {
-    bool Decoded = false;
-    for (unsigned DI = 0, DE = array_lengthof(Ring); DI < DE; ++DI) {
+    for (unsigned DI = 0;; ++DI) {
       if ((Opcodes[OI] & Ring[DI].Mask) == Ring[DI].Value) {
         Terminated = (this->*Ring[DI].Routine)(Opcodes.data(), OI, 0, Prologue);
-        Decoded = true;
         break;
       }
+      assert(DI < array_lengthof(Ring) && "unhandled opcode");
     }
-    assert(Decoded && "unhandled opcode");
   }
 }