[PATCH] D53540: [COFF, ARM64] Implement support for SEH extensions __try/__except/__finally
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 17 18:11:14 PST 2018
rnk added inline comments.
================
Comment at: CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:6166
+ MF.setHasSEHFunclets(true);
+
----------------
It still seems true that this isn't about seh funclets, it's about localescape / localrecover, which is supposed to be orthogonal (for use in non-ABI visible lambdas), so I'd recommend renaming this boolean.
================
Comment at: Target/AArch64/AArch64AsmPrinter.cpp:680
+ const MCExpr *Expr = Sym->getVariableValue();
+ assert(isa<MCConstantExpr>(Expr) &&
+ "Frame alloc symbol should be a constant");
----------------
I think this assertion will fail if you use localrecover before localescape. I would make a test case for that. Is there really not some pseudo instruction we can use so that the materialization can be relaxed by the assembler?
Otherwise, there's no point to using this MCSymbol hack. We might as well have a simpler side table if we retain the requirement that localescape be code generated first.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D53540/new/
https://reviews.llvm.org/D53540
More information about the llvm-commits
mailing list