summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGCall.h
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-05-02 18:05:27 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-05-02 18:05:27 +0000
commitf4258eb48420fb1e80250a9f589f1bb2225462e1 (patch)
treece1297c989eb1e2ddb7aadee9599e39974309f5f /clang/lib/CodeGen/CGCall.h
parent43dca6a8d2e9a0e2ad79cd7351965e75deacef35 (diff)
downloadbcm5719-llvm-f4258eb48420fb1e80250a9f589f1bb2225462e1.tar.gz
bcm5719-llvm-f4258eb48420fb1e80250a9f589f1bb2225462e1.zip
Switch CallArgList from an std::pair to a new CallArg struct (which will eventually gain more members). Working towards modifying call emission to avoid unnecessary copies.
llvm-svn: 130700
Diffstat (limited to 'clang/lib/CodeGen/CGCall.h')
-rw-r--r--clang/lib/CodeGen/CGCall.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGCall.h b/clang/lib/CodeGen/CGCall.h
index f5a84ec99f4..3f600c04e59 100644
--- a/clang/lib/CodeGen/CGCall.h
+++ b/clang/lib/CodeGen/CGCall.h
@@ -44,13 +44,21 @@ namespace clang {
namespace CodeGen {
typedef llvm::SmallVector<llvm::AttributeWithIndex, 8> AttributeListType;
+ struct CallArg {
+ RValue RV;
+ QualType Ty;
+ CallArg(RValue rv, QualType ty)
+ : RV(rv), Ty(ty)
+ { }
+ };
+
/// CallArgList - Type for representing both the value and type of
/// arguments in a call.
class CallArgList :
- public llvm::SmallVector<std::pair<RValue, QualType>, 16> {
+ public llvm::SmallVector<CallArg, 16> {
public:
void add(RValue rvalue, QualType type) {
- push_back(std::pair<RValue,QualType>(rvalue,type));
+ push_back(CallArg(rvalue, type));
}
};
OpenPOWER on IntegriCloud