summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-08-26 20:08:43 +0000
committerChris Lattner <sabre@nondot.org>2010-08-26 20:08:43 +0000
commitd7e54804eec0cddd090478c0e8eb98edcf743c74 (patch)
tree9a923456b31c96f5e7eba6fdab1a252db7150e09 /clang/lib/CodeGen
parent384fa91deb11e7bd153fb4228ff11b1f788cbaf9 (diff)
downloadbcm5719-llvm-d7e54804eec0cddd090478c0e8eb98edcf743c74.tar.gz
bcm5719-llvm-d7e54804eec0cddd090478c0e8eb98edcf743c74.zip
improve comments.
llvm-svn: 112214
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/TargetInfo.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/clang/lib/CodeGen/TargetInfo.cpp b/clang/lib/CodeGen/TargetInfo.cpp
index 05bea0cf859..d2bd33258cd 100644
--- a/clang/lib/CodeGen/TargetInfo.cpp
+++ b/clang/lib/CodeGen/TargetInfo.cpp
@@ -590,17 +590,14 @@ ABIArgInfo X86_32ABIInfo::classifyArgumentType(QualType Ty) const {
}
if (const VectorType *VT = Ty->getAs<VectorType>()) {
- // On Darwin, some vectors are returned in registers.
+ // On Darwin, some vectors are passed in memory, we handle this by passing
+ // it as an i8/i16/i32/i64.
if (IsDarwinVectorABI) {
uint64_t Size = getContext().getTypeSize(Ty);
-
- // Always return in register if it fits in a general purpose
- // register, or if it is 64 bits and has a single element.
if ((Size == 8 || Size == 16 || Size == 32) ||
(Size == 64 && VT->getNumElements() == 1))
return ABIArgInfo::getDirect(llvm::IntegerType::get(getVMContext(),
Size));
-
return ABIArgInfo::getIndirect(0);
}
OpenPOWER on IntegriCloud