diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-04-02 20:32:05 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-04-02 20:32:05 +0000 |
commit | 396e5e328ccae90acc6dff60f4957af8cc53c955 (patch) | |
tree | f7a5c606ed284f87af842f4b3737d326a0639d2c /lib/Target/ARM/ARMSubtarget.h | |
parent | bc413d65a27548004a97c25e0bb82489246d85b9 (diff) | |
download | llvm-396e5e328ccae90acc6dff60f4957af8cc53c955.tar.gz llvm-396e5e328ccae90acc6dff60f4957af8cc53c955.tar.bz2 llvm-396e5e328ccae90acc6dff60f4957af8cc53c955.tar.xz |
ARM: update subtarget information for Windows on ARM
Update the subtarget information for Windows on ARM. This enables using the MC
layer to target Windows on ARM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205459 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMSubtarget.h')
-rw-r--r-- | lib/Target/ARM/ARMSubtarget.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/lib/Target/ARM/ARMSubtarget.h b/lib/Target/ARM/ARMSubtarget.h index 21fa83dff7..804f2386ca 100644 --- a/lib/Target/ARM/ARMSubtarget.h +++ b/lib/Target/ARM/ARMSubtarget.h @@ -317,14 +317,14 @@ public: const Triple &getTargetTriple() const { return TargetTriple; } - bool isTargetIOS() const { return TargetTriple.isiOS(); } bool isTargetDarwin() const { return TargetTriple.isOSDarwin(); } - bool isTargetNaCl() const { return TargetTriple.isOSNaCl(); } + bool isTargetIOS() const { return TargetTriple.isiOS(); } bool isTargetLinux() const { return TargetTriple.isOSLinux(); } - bool isTargetNetBSD() const { - return TargetTriple.getOS() == Triple::NetBSD; - } + bool isTargetNaCl() const { return TargetTriple.isOSNaCl(); } + bool isTargetNetBSD() const { return TargetTriple.getOS() == Triple::NetBSD; } + bool isTargetWindows() const { return TargetTriple.isOSWindows(); } + bool isTargetCOFF() const { return TargetTriple.isOSBinFormatCOFF(); } bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); } bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); } @@ -338,7 +338,7 @@ public: bool isTargetAEABI() const { return (TargetTriple.getEnvironment() == Triple::EABI || TargetTriple.getEnvironment() == Triple::EABIHF) && - !isTargetDarwin(); + !isTargetDarwin() && !isTargetWindows(); } // ARM Targets that support EHABI exception handling standard @@ -349,12 +349,14 @@ public: TargetTriple.getEnvironment() == Triple::EABIHF || TargetTriple.getEnvironment() == Triple::GNUEABIHF || TargetTriple.getEnvironment() == Triple::Android) && - !isTargetDarwin(); + !isTargetDarwin() && !isTargetWindows(); } bool isTargetHardFloat() const { + // FIXME: this is invalid for WindowsCE return TargetTriple.getEnvironment() == Triple::GNUEABIHF || - TargetTriple.getEnvironment() == Triple::EABIHF; + TargetTriple.getEnvironment() == Triple::EABIHF || + isTargetWindows(); } bool isTargetAndroid() const { return TargetTriple.getEnvironment() == Triple::Android; |