diff options
author | Anders Carlsson <andersca@mac.com> | 2010-06-27 15:24:55 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-06-27 15:24:55 +0000 |
commit | ca68d357d4c7d0ba6fa7d8fe01db895d70e859aa (patch) | |
tree | 4988b088d3ab8d2abfa2abf065c855aaf388283b /clang/lib/CodeGen/CGExpr.cpp | |
parent | 25a843fcd2e9909f60d3d679dd028b2488d0e262 (diff) | |
download | bcm5719-llvm-ca68d357d4c7d0ba6fa7d8fe01db895d70e859aa.tar.gz bcm5719-llvm-ca68d357d4c7d0ba6fa7d8fe01db895d70e859aa.zip |
Reduce indentation.
llvm-svn: 106980
Diffstat (limited to 'clang/lib/CodeGen/CGExpr.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGExpr.cpp | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/clang/lib/CodeGen/CGExpr.cpp b/clang/lib/CodeGen/CGExpr.cpp index 46db4e98e7a..44cdcf0794e 100644 --- a/clang/lib/CodeGen/CGExpr.cpp +++ b/clang/lib/CodeGen/CGExpr.cpp @@ -325,26 +325,23 @@ CodeGenFunction::EmitReferenceBindingToExpr(const Expr* E, } } - const llvm::Type *ResultPtrTy - = llvm::PointerType::get(ConvertType(ResultTy), 0); + const llvm::Type *ResultPtrTy = ConvertType(ResultTy)->getPointerTo(); Object = Builder.CreateBitCast(Object, ResultPtrTy, "temp"); return RValue::get(Object); } } - if (Val.isAggregate()) { - Val = RValue::get(Val.getAggregateAddr()); - } else { - // Create a temporary variable that we can bind the reference to. - llvm::Value *Temp = CreateMemTemp(E->getType(), "reftmp"); - if (Val.isScalar()) - EmitStoreOfScalar(Val.getScalarVal(), Temp, false, E->getType()); - else - StoreComplexToAddr(Val.getComplexVal(), Temp, false); - Val = RValue::get(Temp); - } + if (Val.isAggregate()) + return RValue::get(Val.getAggregateAddr()); + + // Create a temporary variable that we can bind the reference to. + llvm::Value *Temp = CreateMemTemp(E->getType(), "reftmp"); + if (Val.isScalar()) + EmitStoreOfScalar(Val.getScalarVal(), Temp, false, E->getType()); + else + StoreComplexToAddr(Val.getComplexVal(), Temp, false); - return Val; + return RValue::get(Temp); } |