diff options
Diffstat (limited to 'lib/VMCore/Function.cpp')
-rw-r--r-- | lib/VMCore/Function.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/VMCore/Function.cpp b/lib/VMCore/Function.cpp index 5a2a56637e..6339c6791d 100644 --- a/lib/VMCore/Function.cpp +++ b/lib/VMCore/Function.cpp @@ -388,8 +388,11 @@ static Type *DecodeFixedType(unsigned &NextElt, ArrayRef<unsigned char> Infos, return VectorType::get(DecodeFixedType(NextElt, Infos, Tys, Context), 16); case IIT_V32: return VectorType::get(DecodeFixedType(NextElt, Infos, Tys, Context), 32); - case IIT_PTR: - return PointerType::getUnqual(DecodeFixedType(NextElt, Infos, Tys,Context)); + case IIT_PTR: { + unsigned AddrSpace = Infos[NextElt++]; + Type *PtrTy = DecodeFixedType(NextElt, Infos, Tys,Context); + return PointerType::get(PtrTy, AddrSpace); + } case IIT_ARG: case IIT_EXTEND_VEC_ARG: case IIT_TRUNC_VEC_ARG: { |