aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2004-08-20 15:37:30 +0000
committerReid Spencer <rspencer@reidspencer.com>2004-08-20 15:37:30 +0000
commit5527c0b6d1bda2c63212f91837792663469fd764 (patch)
tree17b6af203a1035d488c4bb23c0208a480d52603f
parentb47321ba2bd9dcd45af187bf55e850f2086d9723 (diff)
downloadexternal_llvm-5527c0b6d1bda2c63212f91837792663469fd764.zip
external_llvm-5527c0b6d1bda2c63212f91837792663469fd764.tar.gz
external_llvm-5527c0b6d1bda2c63212f91837792663469fd764.tar.bz2
Fix a bug found exposed by: Regression/Other/2004-08-20-PackedControlFlow.ll
Packed types need to be allowed in type statements too. Patch provided by Brad Jones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15953 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/AsmWriter.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp
index 9fc772e..b109cb0 100644
--- a/lib/VMCore/AsmWriter.cpp
+++ b/lib/VMCore/AsmWriter.cpp
@@ -727,7 +727,11 @@ std::ostream &AssemblyWriter::printTypeAtLeastOneLevel(const Type *Ty) {
} else if (const ArrayType *ATy = dyn_cast<ArrayType>(Ty)) {
Out << '[' << ATy->getNumElements() << " x ";
printType(ATy->getElementType()) << ']';
- } else if (const OpaqueType *OTy = dyn_cast<OpaqueType>(Ty)) {
+ } else if (const PackedType *PTy = dyn_cast<PackedType>(Ty)) {
+ Out << '<' << PTy->getNumElements() << " x ";
+ printType(PTy->getElementType()) << '>';
+ }
+ else if (const OpaqueType *OTy = dyn_cast<OpaqueType>(Ty)) {
Out << "opaque";
} else {
if (!Ty->isPrimitiveType())