rjmccall added inline comments.

================
Comment at: lib/CodeGen/CGCall.cpp:3427
     (void)InitialArgSize;
-    RValue RVArg = Args.back().RV;
-    EmitNonNullArgCheck(RVArg, ArgTypes[Idx], (*Arg)->getExprLoc(), AC,
-                        ParamsToSkip + Idx);
-    // @llvm.objectsize should never have side-effects and shouldn't need
-    // destruction/cleanups, so we can safely "emit" it after its arg,
-    // regardless of right-to-leftness
-    MaybeEmitImplicitObjectSize(Idx, *Arg, RVArg);
+    if (!Args.back().hasLValue()) {
+      RValue RVArg = Args.back().getKnownRValue();
----------------
I think it's okay to do this because of a reasonable assumption that pointer 
arguments are never emitted as LValues, but you should leave that as a comment.


https://reviews.llvm.org/D34367



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to