diff options
| author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-18 06:42:02 +0000 |
|---|---|---|
| committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-18 06:42:02 +0000 |
| commit | 6deb816c1c1b54cdea0cc040b6f4e8d3df7e6ec4 (patch) | |
| tree | 34c3ecff9106da1c51620517d710801207c8f3d2 /clang/lib/Driver/Tools.cpp | |
| parent | a52184538188f7bd831d978d24226d3fadef792f (diff) | |
| download | bcm5719-llvm-6deb816c1c1b54cdea0cc040b6f4e8d3df7e6ec4.tar.gz bcm5719-llvm-6deb816c1c1b54cdea0cc040b6f4e8d3df7e6ec4.zip | |
Driver: force restricted IT blocks for Windows on ARM
Windows on ARM expects ARMv8 (restricted IT) conditional instructions only.
Force enable the restricted IT mode via the backend option when targeting WoA.
llvm-svn: 209086
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
| -rw-r--r-- | clang/lib/Driver/Tools.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp index b0425cbe08a..7862ffb446e 100644 --- a/clang/lib/Driver/Tools.cpp +++ b/clang/lib/Driver/Tools.cpp @@ -3451,6 +3451,11 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, CmdArgs.push_back("-backend-option"); CmdArgs.push_back("-arm-no-restrict-it"); } + } else if (TT.isOSWindows() && (TT.getArch() == llvm::Triple::arm || + TT.getArch() == llvm::Triple::thumb)) { + // Windows on ARM expects restricted IT blocks + CmdArgs.push_back("-backend-option"); + CmdArgs.push_back("-arm-restrict-it"); } // Forward -f options with positive and negative forms; we translate |

