aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Lamb <christopher.lamb@gmail.com>2007-12-29 04:06:57 +0000
committerChristopher Lamb <christopher.lamb@gmail.com>2007-12-29 04:06:57 +0000
commitd3ba3f44ad3fc79f31ebbbe15a7a7f4a34226254 (patch)
tree169ef09853800bc0427bb7f6d64f9140a09bb1de
parent33fd5c124aac15bab7cad95e4e0e7761356d2c06 (diff)
Make MemberExpr code safe w.r.t. address spaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45394 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--CodeGen/CGExpr.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/CodeGen/CGExpr.cpp b/CodeGen/CGExpr.cpp
index c20680bc4e..4cb897fe5d 100644
--- a/CodeGen/CGExpr.cpp
+++ b/CodeGen/CGExpr.cpp
@@ -424,9 +424,9 @@ LValue CodeGenFunction::EmitMemberExpr(const MemberExpr *E) {
const llvm::PointerType * BaseTy =
cast<llvm::PointerType>(BaseValue->getType());
if (FieldTy != BaseTy->getElementType()) {
- // FIXME: Need to get address space qualification of pointer
+ unsigned AS = BaseTy->getAddressSpace();
V = Builder.CreateBitCast(V,
- llvm::PointerType::getUnqual(FieldTy),
+ llvm::PointerType::get(FieldTy, AS),
"tmp");
}
}