diff options
| author | Joerg Sonnenberger <joerg@bec.de> | 2014-03-26 11:48:29 +0000 | 
|---|---|---|
| committer | Joerg Sonnenberger <joerg@bec.de> | 2014-03-26 11:48:29 +0000 | 
| commit | 1f5984ca821d462d78ce20860a5f744c9c61afb2 (patch) | |
| tree | 7fb6608ca9a10afcba6c2d178fc7af04d57719b1 /clang/lib | |
| parent | 6dad838f3a337167b11d64a05b21e7a876e6dcb4 (diff) | |
| download | bcm5719-llvm-1f5984ca821d462d78ce20860a5f744c9c61afb2.tar.gz bcm5719-llvm-1f5984ca821d462d78ce20860a5f744c9c61afb2.zip | |
From Matt Thomas: use long long for [u]int64_t and [u]intmax_t on
NetBSD/aarch64 to simplify code sharing with NetBSD/arm.
llvm-svn: 204798
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 14 | 
1 files changed, 9 insertions, 5 deletions
| diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index d22599dec61..fa1fb83845c 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -3386,19 +3386,23 @@ class AArch64TargetInfo : public TargetInfo {  public:    AArch64TargetInfo(const llvm::Triple &Triple) : TargetInfo(Triple) { -    IntMaxType = SignedLong; -    UIntMaxType = UnsignedLong; -    Int64Type = SignedLong;      LongWidth = LongAlign = 64;      LongDoubleWidth = LongDoubleAlign = 128;      PointerWidth = PointerAlign = 64;      SuitableAlign = 128;      WCharType = UnsignedInt; -    if (getTriple().getOS() == llvm::Triple::NetBSD) +    if (getTriple().getOS() == llvm::Triple::NetBSD) {        WCharType = SignedInt; -    else +      Int64Type = SignedLongLong; +      IntMaxType = SignedLongLong; +      UIntMaxType = UnsignedLongLong; +    } else {        WCharType = UnsignedInt; +      Int64Type = SignedLong; +      IntMaxType = SignedLong; +      UIntMaxType = UnsignedLong; +    }      LongDoubleFormat = &llvm::APFloat::IEEEquad;      // AArch64 backend supports 64-bit operations at the moment. In principle | 

