[PATCH] D39673: Toolchain: Normalize dwarf, sjlj and seh eh

Martell Malone via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Nov 19 20:18:53 PST 2017


martell added inline comments.


================
Comment at: lib/Frontend/InitPreprocessor.cpp:684
+    else if (TI.getTriple().isThumb() || TI.getTriple().isARM())
+      Builder.defineMacro("__ARM_DWARF_EH__");
+  }
----------------
mstorsjo wrote:
> Won't this start setting this define also on platforms where ARM EHABI is the default? (I.e. all ELF platforms except netbsd)?
It will set it on any arm / thumb platform where exceptions are enabled and the current model is dwarf.
This includes netbsd. The issue we have is that apple set this unconditionally for their watch platform.

I'm wondering if we should put this behind a `!apple` guard or just add an `if windows or netbsd` guard.

Or is it okay to just generally have this macro on all platforms where dwarf is exception model and the target is arm?



Repository:
  rL LLVM

https://reviews.llvm.org/D39673





More information about the cfe-commits mailing list