[PATCH] D70370: llvm/ObjCARC: Eliminate inlined AutoreleaseRV calls

John McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Nov 17 21:50:51 PST 2019


rjmccall added inline comments.


================
Comment at: llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp:742
+  // Convert the AutoreleaseRV into a ReleaseRV and run the normal
+  // optimizations.
+  CallInst *Release =
----------------
"into a normal Release"

Please add something like `assert(Class == ARCInstKind::ClaimRV);` to make it clearer in the code why this is reasonable behavior.


================
Comment at: llvm/test/Transforms/ObjCARC/inlined-autorelease-return-value.ll:114
+  ret i8* %c
+}
+
----------------
Do you want to add a test for when there's any sort of interference besides just being in separate blocks?  Or for when there are bitcasts?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D70370/new/

https://reviews.llvm.org/D70370





More information about the llvm-commits mailing list