diff options
author | Eli Friedman <efriedma@codeaurora.org> | 2018-10-31 21:39:41 +0000 |
---|---|---|
committer | Eli Friedman <efriedma@codeaurora.org> | 2018-10-31 21:39:41 +0000 |
commit | e5f13519d4a6e196d5b714b6233b9fc875cbee9b (patch) | |
tree | 4acd11b157dc89bd3dbc3f8dfc24fb3bff950cdd /clang/lib/Driver/ToolChains/MSVC.cpp | |
parent | 72fe03f93bd249ba3ab020e77860b771542f6c89 (diff) | |
download | bcm5719-llvm-e5f13519d4a6e196d5b714b6233b9fc875cbee9b.tar.gz bcm5719-llvm-e5f13519d4a6e196d5b714b6233b9fc875cbee9b.zip |
[AArch64] [Windows] Emit unwind tables by default.
Unwind tables are necessary even in code that doesn't support
exceptions. The tables are used for setjmp(), and by debuggers.
Differential Revision: https://reviews.llvm.org/D53618
llvm-svn: 345781
Diffstat (limited to 'clang/lib/Driver/ToolChains/MSVC.cpp')
-rw-r--r-- | clang/lib/Driver/ToolChains/MSVC.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/clang/lib/Driver/ToolChains/MSVC.cpp b/clang/lib/Driver/ToolChains/MSVC.cpp index f60f39563fd..839f3136230 100644 --- a/clang/lib/Driver/ToolChains/MSVC.cpp +++ b/clang/lib/Driver/ToolChains/MSVC.cpp @@ -722,15 +722,15 @@ bool MSVCToolChain::IsIntegratedAssemblerDefault() const { } bool MSVCToolChain::IsUnwindTablesDefault(const ArgList &Args) const { - // Emit unwind tables by default on Win64. All non-x86_32 Windows platforms - // such as ARM and PPC actually require unwind tables, but LLVM doesn't know - // how to generate them yet. - // Don't emit unwind tables by default for MachO targets. if (getTriple().isOSBinFormatMachO()) return false; - return getArch() == llvm::Triple::x86_64; + // All non-x86_32 Windows targets require unwind tables. However, LLVM + // doesn't know how to generate them for all targets, so only enable + // the ones that are actually implemented. + return getArch() == llvm::Triple::x86_64 || + getArch() == llvm::Triple::aarch64; } bool MSVCToolChain::isPICDefault() const { |