================
@@ -3011,6 +3016,37 @@ void CodeGenModule::ConstructAttributeList(StringRef 
Name,
   }
   assert(ArgNo == FI.arg_size());
 
+  ArgNo = 0;
+  if (AddedPotentialArgAccess && MemAttrForPtrArgs) {
+    llvm::SmallSet<unsigned, 8> ArgsToSkip;
+    if (IRFunctionArgs.hasSRetArg()) {
+      ArgsToSkip.insert(IRFunctionArgs.getSRetArgNo());
+    }
+    if (IRFunctionArgs.hasInallocaArg()) {
+      ArgsToSkip.insert(IRFunctionArgs.getInallocaArgNo());
+    }
+
+    for (CGFunctionInfo::const_arg_iterator I = FI.arg_begin(),
+                                            E = FI.arg_end();
+         I != E; ++I, ++ArgNo) {
+      if (I->info.getKind() == ABIArgInfo::Indirect) {
----------------
qchateau wrote:

Good call, it's also much simpler like this

https://github.com/llvm/llvm-project/pull/158424
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to