================
@@ -109,6 +109,14 @@ struct CallArg {
 class CallArgList : public llvm::SmallVector<CallArg, 8> {
 public:
   void add(RValue rvalue, clang::QualType type) { emplace_back(rvalue, type); }
+
+  /// Add all the arguments from another CallArgList to this one. After doing
+  /// this, the old CallArgList retains its list of arguments, but must not
+  /// be used to emit a call.
+  void addFrom(const CallArgList &other) {
+    insert(end(), other.begin(), other.end());
+    // TODO: Writebacks, CleanupsToDeactivate, StackBase???
----------------
andykaylor wrote:

Probably. Classic codegen has handling for these here, but we likely will want 
to defer it to lowering. Even so, we should insert a marker to track it until 
we know what's needed.

https://github.com/llvm/llvm-project/pull/140290
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to