summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-10-14 23:23:15 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-10-14 23:23:15 +0000
commitf0c267e6e05c2583c23fad3aa1c9ddad5e9d4998 (patch)
treeb1c9c50501a95458c2582cbb0593561537f6335f /clang/lib/Basic
parent1f64b5987263ac40f0f1b104972afde03f5087a5 (diff)
downloadbcm5719-llvm-f0c267e6e05c2583c23fad3aa1c9ddad5e9d4998.tar.gz
bcm5719-llvm-f0c267e6e05c2583c23fad3aa1c9ddad5e9d4998.zip
Provide half floating point support as a storage only type.
Lack of half FP was a regression compared to llvm-gcc. llvm-svn: 142016
Diffstat (limited to 'clang/lib/Basic')
-rw-r--r--clang/lib/Basic/TargetInfo.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Basic/TargetInfo.cpp b/clang/lib/Basic/TargetInfo.cpp
index a9285e6e2db..593db2b901c 100644
--- a/clang/lib/Basic/TargetInfo.cpp
+++ b/clang/lib/Basic/TargetInfo.cpp
@@ -34,6 +34,8 @@ TargetInfo::TargetInfo(const std::string &T) : Triple(T) {
IntWidth = IntAlign = 32;
LongWidth = LongAlign = 32;
LongLongWidth = LongLongAlign = 64;
+ HalfWidth = 16;
+ HalfAlign = 16;
FloatWidth = 32;
FloatAlign = 32;
DoubleWidth = 64;
@@ -57,6 +59,7 @@ TargetInfo::TargetInfo(const std::string &T) : Triple(T) {
UseBitFieldTypeAlignment = true;
UseZeroLengthBitfieldAlignment = false;
ZeroLengthBitfieldBoundary = 0;
+ HalfFormat = &llvm::APFloat::IEEEhalf;
FloatFormat = &llvm::APFloat::IEEEsingle;
DoubleFormat = &llvm::APFloat::IEEEdouble;
LongDoubleFormat = &llvm::APFloat::IEEEdouble;
OpenPOWER on IntegriCloud