[PATCH] D130049: [WinEH][ARM64] Split unwind info for functions larger than 1MB
Z. Zheng via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 26 14:42:39 PDT 2022
zzheng added inline comments.
================
Comment at: llvm/lib/MC/MCWin64EH.cpp:1014
+
+ while (E < Epilogs.size() && Epilogs[E].End < SegEnd) {
+ // Epilogs within current segment.
----------------
mstorsjo wrote:
> Can we assume that all the epilogs are monotonically ordered? (I think it can be reasonable to do that, but maybe it'd be good to have an assert somewhere that tests it?)
>
I put an assert in the loop that finds and records epilogs' start and end offset (line-990 to line-994), the idea is:
assert(epilog[n].end <= epilog[n+1].start),
================
Comment at: llvm/test/MC/AArch64/seh-large-func.s:9
+// CHECK-NEXT: Number: 1
+// CHECK-NEXT: Name: .text (2E 74 65 78 74 00 00 00)
+// CHECK-NEXT: VirtualSize: 0x0
----------------
mstorsjo wrote:
> Is it meaningful to include all the section headers in the testcase here? They're mostly distracting here I think, and just extra work to update when working on the testcase in my experience.
makes sense.
will just keep .pdata and .xdata sections
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D130049/new/
https://reviews.llvm.org/D130049
More information about the llvm-commits
mailing list