[PATCH] D99823: [lld-macho] Add 32-bit compact unwind support

Greg McGary via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 12 14:39:56 PDT 2021


gkm accepted this revision.
gkm added a comment.
This revision is now accepted and ready to land.

LGTM



================
Comment at: lld/MachO/UnwindInfoSection.cpp:121
+
+template <class CompactUnwindEntry>
+class UnwindInfoSectionImpl : public UnwindInfoSection {
----------------



================
Comment at: lld/MachO/UnwindInfoSection.cpp:139-140
+  llvm::DenseMap<uint32_t, uint32_t> functionToLsdaIndex;
+  std::vector<CompactUnwindEntry> cuVector;
+  std::vector<CompactUnwindEntry *> cuPtrVector;
+  std::vector<SecondLevelPage> secondLevelPages;
----------------
I will skip the many similar edit suggestions for sake of time. You get the idea.


================
Comment at: lld/MachO/UnwindInfoSection.cpp:428-429
 
-void UnwindInfoSection::writeTo(uint8_t *buf) const {
+template <class CompactUnwindEntry>
+void UnwindInfoSectionImpl<CompactUnwindEntry>::writeTo(uint8_t *buf) const {
   // section header
----------------



================
Comment at: lld/MachO/UnwindInfoSection.cpp:533-535
+    return make<UnwindInfoSectionImpl<CompactUnwindEntry64>>();
+  else
+    return make<UnwindInfoSectionImpl<CompactUnwindEntry32>>();
----------------



Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99823



More information about the llvm-commits mailing list