Small simplification by moving early continue earlier.
authorRafael Espindola <rafael.espindola@gmail.com>
Thu, 5 Nov 2015 23:47:20 +0000 (23:47 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Thu, 5 Nov 2015 23:47:20 +0000 (23:47 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@252237 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/MCDwarf.cpp

index 8be1f4cbda26a7e03859f7bd5e1f688f9160b7fa..814b58728050be3e964881249ce7169ebbe2248a 100644 (file)
@@ -1540,18 +1540,16 @@ void MCDwarfFrameEmitter::Emit(MCObjectStreamer &Streamer, MCAsmBackend *MAB,
   for (unsigned i = 0, n = FrameArray.size(); i < n; ++i) {
     const MCDwarfFrameInfo &Frame = FrameArray[i];
 
-    // Emit the label from the previous iteration
-    if (FDEEnd) {
-      Streamer.EmitLabel(FDEEnd);
-      FDEEnd = nullptr;
-    }
-
     if (CanOmitDwarf && Frame.CompactUnwindEncoding !=
           MOFI->getCompactUnwindDwarfEHFrameOnly())
       // Don't generate an EH frame if we don't need one. I.e., it's taken care
       // of by the compact unwind encoding.
       continue;
 
+    // Close the previous FDE.
+    if (FDEEnd)
+      Streamer.EmitLabel(FDEEnd);
+
     CIEKey Key(Frame.Personality, Frame.PersonalityEncoding,
                Frame.LsdaEncoding, Frame.IsSignalFrame, Frame.IsSimple);
     const MCSymbol *&CIEStart = IsEH ? CIEStarts[Key] : DummyDebugKey;