From f64ff8ed3a5b5b3c5b2fd2f16dc32b4aadc06004 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Mon, 23 Jul 2012 19:27:31 +0000 Subject: An objc_retain can serve as a may-use for a different pointer. rdar://11931823. llvm-svn: 160637 --- llvm/lib/Transforms/Scalar/ObjCARC.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'llvm/lib/Transforms/Scalar') diff --git a/llvm/lib/Transforms/Scalar/ObjCARC.cpp b/llvm/lib/Transforms/Scalar/ObjCARC.cpp index 64f71d380a8..3222f2083b9 100644 --- a/llvm/lib/Transforms/Scalar/ObjCARC.cpp +++ b/llvm/lib/Transforms/Scalar/ObjCARC.cpp @@ -2829,7 +2829,10 @@ ObjCARCOpt::VisitInstructionTopDown(Instruction *Inst, } S.IncrementNestCount(); - return NestingDetected; + + // A retain can be a potential use; procede to the generic checking + // code below. + break; } case IC_Release: { Arg = GetObjCArg(Inst); -- cgit v1.2.3