[PATCH] D86528: [4/5] [MC] [Win64EH] Fill in FuncletOrFuncEnd if missing

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 25 13:51:24 PDT 2020


efriedma added inline comments.


================
Comment at: llvm/lib/MC/MCWin64EH.cpp:511
+    // the text section, so we weren't able to automatically add a
+    // FuncletOrFuncEnd label.
     RawFuncLength = 0;
----------------
I don't understand why you're dropping the FIXME; clearly, if we're emitting unwind info that doesn't cover anything, something has gone very wrong.


================
Comment at: llvm/lib/MC/MCWin64EH.cpp:671
+        Streamer.getCurrentSectionOnly() == CFI->TextSection)
+      CFI->FuncletOrFuncEnd = Streamer.emitCFILabel();
     MCSection *XData = Streamer.getAssociatedXDataSection(CFI->TextSection);
----------------
It seems like you're setting FuncletOrFuncEnd in too many places; there should be exactly one directive that corresponds to the end of the function, I think.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D86528/new/

https://reviews.llvm.org/D86528



More information about the llvm-commits mailing list