aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Lamb <christopher.lamb@gmail.com>2007-12-18 03:49:35 +0000
committerChristopher Lamb <christopher.lamb@gmail.com>2007-12-18 03:49:35 +0000
commit0cc4b11c173716cef30e157b2f67fe7027fe67c1 (patch)
tree67c5f824e427f96abb2f0ff7f4cf604848754e46
parent5d68a9ab99baea35237556b2af6ea712f4d468a1 (diff)
downloadexternal_llvm-0cc4b11c173716cef30e157b2f67fe7027fe67c1.zip
external_llvm-0cc4b11c173716cef30e157b2f67fe7027fe67c1.tar.gz
external_llvm-0cc4b11c173716cef30e157b2f67fe7027fe67c1.tar.bz2
Don't forget to print address space qualifiers when printing out the type table! Thanks to Gordon Henriksen for pointing this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45147 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/AsmWriter.cpp5
-rw-r--r--test/Bindings/Ocaml/vmcore.ml2
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp
index e35b14f..090276b 100644
--- a/lib/VMCore/AsmWriter.cpp
+++ b/lib/VMCore/AsmWriter.cpp
@@ -808,7 +808,10 @@ std::ostream &AssemblyWriter::printTypeAtLeastOneLevel(const Type *Ty) {
if (STy->isPacked())
Out << '>';
} else if (const PointerType *PTy = dyn_cast<PointerType>(Ty)) {
- printType(PTy->getElementType()) << '*';
+ printType(PTy->getElementType());
+ if (unsigned AddressSpace = PTy->getAddressSpace())
+ Out << " addrspace(" << AddressSpace << ")";
+ Out << '*';
} else if (const ArrayType *ATy = dyn_cast<ArrayType>(Ty)) {
Out << '[' << ATy->getNumElements() << " x ";
printType(ATy->getElementType()) << ']';
diff --git a/test/Bindings/Ocaml/vmcore.ml b/test/Bindings/Ocaml/vmcore.ml
index 33a1980..65d8a31 100644
--- a/test/Bindings/Ocaml/vmcore.ml
+++ b/test/Bindings/Ocaml/vmcore.ml
@@ -114,7 +114,7 @@ let test_types () =
end;
begin group "qualified_pointer";
- (* XXX: grep {QualPtrTy.*i8.*3.*\*} < %t.ll
+ (* RUN: grep {QualPtrTy.*i8.*3.*\*} < %t.ll
*)
let ty = qualified_pointer_type i8_type 3 in
insist (define_type_name "QualPtrTy" ty m);