The new EH instructions make it possible for LLVM to generate .xdata
tables that the MSVC personality routines will be happy about. Because
this is experimental, hide it behind a -cc1 flag (-fnew-ms-eh).
Details
Diff Detail
Event Timeline
include/clang/Basic/LangOptions.def | ||
---|---|---|
111 | Seems like it should be a CodeGenOption. | |
lib/CodeGen/CGCleanup.cpp | ||
907 | Should we do anything to synchronize these getCXXABI checks with the EHPersonality? At the very least, I think it's more intuitive to the reader to make the decisions about the IR we use to be based on the personality. Probably the right thing to do here is to declare EHPersonality in CGCleanup.h, and then acknowledge that CGCleanup.h is actually CGException.h. Sounds like a separable patch. | |
lib/CodeGen/CGException.cpp | ||
897 | Should we rename the locals here according to the prevailing LLVM style? | |
911 | Drop the extra parens? | |
944 | Please add a comment documenting what the return value is. I'm thinking: If the catchblock instructions are used for EH dispatch, then the basic block holding the final catchendblock instruction is returned. |
Seems like it should be a CodeGenOption.