[PATCH] D53540: [COFF, ARM64] Implement support for SEH extensions __try/__except/__finally

Tom Tan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 8 17:46:45 PST 2018


TomTan added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:6155
+             "Frame alloc symbol should be a constant");
+      const MCConstantExpr *C = dyn_cast<MCConstantExpr>(Expr);
+
----------------
dmajor wrote:
> mgrang wrote:
> > mgrang wrote:
> > > dmajor wrote:
> > > > majnemer wrote:
> > > > > Since you already did an isa, this can be `cast<MCConstantExpr>(Expr)`.
> > > > I tried applying this patch (plus D53541, D51524, and D54248) and building Firefox, and I got a crash on null `Expr` here.
> > > > 
> > > > Let me know if you're interested in the repro, or if it's too early for me to be playing with this code, in which case sorry for the noise.
> > > > 
> > > @dmajor Thanks for testing this out :) If you have a reduced test case to repro the failure that would be great. Although currently I am busy with an internal release I expect to get back to this in Dec.
> > @dmajor Also what patches (if any) to the Firefox code base are needed to build Firefox for arm64-windows. Are those patches publicly available?
> I don't really recommend it right now, it's a bit of a hassle because you have to apply some hacks to the build system. We're working on making it easier (hopefully within a week or two). In the meantime I can try to get you a repro with creduce.
@dmajor, I hit the same null reference issue after cherry-pick changes you listed. Seems `FrameAllocSym` is not a set to `SymContentsVariable` here which is expected to happen in `AArch64RegisterInfo::eliminateFrameIndex`.


Repository:
  rL LLVM

https://reviews.llvm.org/D53540





More information about the llvm-commits mailing list