[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 15:06:56 PDT 2022
zzheng added inline comments.
================
Comment at: llvm/lib/MC/MCWin64EH.cpp:1027
+ // At this point, we have:
+ // 1. Put all epilogs in segments already. No action needed here; or
+ // 2. Found an epilog that will cross segments boundry. We need to
----------------
case 1 is when we exit the above while loop with (E == Epilogs.size()), i.e. there's no epilog left to be put into a segment.
================
Comment at: llvm/lib/MC/MCWin64EH.cpp:1028
+ // 1. Put all epilogs in segments already. No action needed here; or
+ // 2. Found an epilog that will cross segments boundry. We need to
+ // move back current segment's end boundry, so the epilog is entirely
----------------
case 2 is when we exit the loop above with (E < Epilogs.size) but (Epilogs[E].End >= SegEnd).
================
Comment at: llvm/lib/MC/MCWin64EH.cpp:1031
+ // in the next segment; or
+ // 3. Left at least one epilog that is entirely after this segment.
+ // It'll be handled by the next iteration, or the last segment.
----------------
this is (E < Epilogs.size()) and (Epilogs[E].end >= SegEnd) when we exit the loop above.
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