aboutsummaryrefslogtreecommitdiff
path: root/lib/AST/ASTContext.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-04-30 02:55:13 +0000
committerChris Lattner <sabre@nondot.org>2009-04-30 02:55:13 +0000
commitec16cb9b5a481d62a73ad47fa59034ced4d62022 (patch)
tree27150adbb2c3bddbb48224902d520d3ca329bab4 /lib/AST/ASTContext.cpp
parent2df9ced9fd1e8c7d7b38443db07e0e811de22571 (diff)
int128_t is apparently 128-bit aligned on all 64-bit targets, and
not supported on 32-bit targets, so we can define it to be 128-bit aligned there too :) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70465 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/ASTContext.cpp')
-rw-r--r--lib/AST/ASTContext.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/lib/AST/ASTContext.cpp b/lib/AST/ASTContext.cpp
index 6cd016cab8..5f97df904c 100644
--- a/lib/AST/ASTContext.cpp
+++ b/lib/AST/ASTContext.cpp
@@ -413,6 +413,11 @@ ASTContext::getTypeInfo(const Type *T) {
Width = Target.getLongLongWidth();
Align = Target.getLongLongAlign();
break;
+ case BuiltinType::Int128:
+ case BuiltinType::UInt128:
+ Width = 128;
+ Align = 128; // int128_t is 128-bit aligned on all targets.
+ break;
case BuiltinType::Float:
Width = Target.getFloatWidth();
Align = Target.getFloatAlign();
@@ -425,13 +430,6 @@ ASTContext::getTypeInfo(const Type *T) {
Width = Target.getLongDoubleWidth();
Align = Target.getLongDoubleAlign();
break;
- case BuiltinType::Int128:
- case BuiltinType::UInt128:
- Width = 128;
-
- // FIXME: Is this correct for all targets?
- Align = 128;
- break;
}
break;
case Type::FixedWidthInt: