diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2013-05-10 00:43:44 +0000 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2013-05-10 00:43:44 +0000 |
commit | 674eaa2c88daee6ce45b904234b53f191dd75a68 (patch) | |
tree | 069add16543a16d6fd9185bbce7d44dd4ba7dc99 /clang/lib/AST/Expr.cpp | |
parent | 2a40f0848e5d27a8e3f58fdd94853bff2d61d259 (diff) | |
download | bcm5719-llvm-674eaa2c88daee6ce45b904234b53f191dd75a68.tar.gz bcm5719-llvm-674eaa2c88daee6ce45b904234b53f191dd75a68.zip |
ArrayRef'ize ShuffleVectorExpr::setExprs
But ShuffleVectorExpr should be tail-allocating the storage for expressions.
llvm-svn: 181572
Diffstat (limited to 'clang/lib/AST/Expr.cpp')
-rw-r--r-- | clang/lib/AST/Expr.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/clang/lib/AST/Expr.cpp b/clang/lib/AST/Expr.cpp index 9538ddf9416..545d5fe28c8 100644 --- a/clang/lib/AST/Expr.cpp +++ b/clang/lib/AST/Expr.cpp @@ -3565,13 +3565,12 @@ ShuffleVectorExpr::ShuffleVectorExpr(ASTContext &C, ArrayRef<Expr*> args, } } -void ShuffleVectorExpr::setExprs(ASTContext &C, Expr ** Exprs, - unsigned NumExprs) { +void ShuffleVectorExpr::setExprs(ASTContext &C, ArrayRef<Expr *> Exprs) { if (SubExprs) C.Deallocate(SubExprs); SubExprs = new (C) Stmt* [NumExprs]; - this->NumExprs = NumExprs; - memcpy(SubExprs, Exprs, sizeof(Expr *) * NumExprs); + this->NumExprs = Exprs.size(); + memcpy(SubExprs, Exprs.data(), sizeof(Expr *) * Exprs.size()); } GenericSelectionExpr::GenericSelectionExpr(ASTContext &Context, |