diff options
author | Eric Christopher <echristo@gmail.com> | 2012-11-13 23:30:57 +0000 |
---|---|---|
committer | Eric Christopher <echristo@gmail.com> | 2012-11-13 23:30:57 +0000 |
commit | 175c72656ff1cba05b39c50cd8d71b1cef239bae (patch) | |
tree | 9ff51479c382f61cf502b6fa7c6cae13ae4d169b /clang/lib/CodeGen | |
parent | 0f23b8214765a8da71c2ad73a23ee54d7db63e16 (diff) | |
download | bcm5719-llvm-175c72656ff1cba05b39c50cd8d71b1cef239bae.tar.gz bcm5719-llvm-175c72656ff1cba05b39c50cd8d71b1cef239bae.zip |
Revert "Use the 'count' attribute instead of the 'upper_bound' attribute."
temporarily since it breaks the gdb bots.
This reverts commit r167807/30305bec25cac981c6d4a3b8be004401310a82a7.
llvm-svn: 167887
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r-- | clang/lib/CodeGen/CGDebugInfo.cpp | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/clang/lib/CodeGen/CGDebugInfo.cpp b/clang/lib/CodeGen/CGDebugInfo.cpp index 38438896357..80fa09be747 100644 --- a/clang/lib/CodeGen/CGDebugInfo.cpp +++ b/clang/lib/CodeGen/CGDebugInfo.cpp @@ -1473,23 +1473,23 @@ llvm::DIType CGDebugInfo::CreateType(const ObjCInterfaceType *Ty, llvm::DIType CGDebugInfo::CreateType(const VectorType *Ty, llvm::DIFile Unit) { llvm::DIType ElementTy = getOrCreateType(Ty->getElementType(), Unit); - int64_t UpperBound = Ty->getNumElements(); + int64_t NumElems = Ty->getNumElements(); int64_t LowerBound = 0; - if (UpperBound == 0) + if (NumElems == 0) // If number of elements are not known then this is an unbounded array. // Use Low = 1, Hi = 0 to express such arrays. LowerBound = 1; else - --UpperBound; + --NumElems; - llvm::Value *Subscript = DBuilder.getOrCreateSubrange(LowerBound, UpperBound, - Ty->getNumElements()); + llvm::Value *Subscript = DBuilder.getOrCreateSubrange(LowerBound, NumElems); llvm::DIArray SubscriptArray = DBuilder.getOrCreateArray(Subscript); uint64_t Size = CGM.getContext().getTypeSize(Ty); uint64_t Align = CGM.getContext().getTypeAlign(Ty); - return DBuilder.createVectorType(Size, Align, ElementTy, SubscriptArray); + return + DBuilder.createVectorType(Size, Align, ElementTy, SubscriptArray); } llvm::DIType CGDebugInfo::CreateType(const ArrayType *Ty, @@ -1525,11 +1525,9 @@ llvm::DIType CGDebugInfo::CreateType(const ArrayType *Ty, while ((Ty = dyn_cast<ArrayType>(EltTy))) { int64_t UpperBound = 0; int64_t LowerBound = 0; - uint64_t Count = 0; if (const ConstantArrayType *CAT = dyn_cast<ConstantArrayType>(Ty)) { - Count = CAT->getSize().getZExtValue(); - if (Count) - UpperBound = Count - 1; + if (CAT->getSize().getZExtValue()) + UpperBound = CAT->getSize().getZExtValue() - 1; } else // This is an unbounded array. Use Low = 1, Hi = 0 to express such // arrays. @@ -1537,8 +1535,7 @@ llvm::DIType CGDebugInfo::CreateType(const ArrayType *Ty, // FIXME: Verify this is right for VLAs. Subscripts.push_back(DBuilder.getOrCreateSubrange(LowerBound, - UpperBound, - Count)); + UpperBound)); EltTy = Ty->getElementType(); } |