[PATCH] D55348: Change the objc ARC optimizer to use the new objc.* intrinsics
Akira Hatanaka via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Dec 9 23:19:06 PST 2018
ahatanak accepted this revision.
ahatanak added a comment.
This revision is now accepted and ready to land.
LGTM
================
Comment at: lib/Analysis/ObjCARCInstKind.cpp:133
+ return ARCInstKind::ClaimRV;
+ case Intrinsic::objc_retainedObject:
+ return ARCInstKind::NoopCast;
----------------
It looks like these functions have been deprecated.
https://opensource.apple.com/source/objc4/objc4-532/runtime/objc.h
================
Comment at: lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h:92
+ return getIntrinsicEntryPoint(RetainRV,
+ Intrinsic::objc_retainAutoreleasedReturnValue);
case ARCRuntimeEntryPointKind::RetainAutorelease:
----------------
Indentation looks incorrect.
================
Comment at: lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h:98
+ return getIntrinsicEntryPoint(RetainAutoreleaseRV,
+ Intrinsic::objc_retainAutoreleaseReturnValue);
}
----------------
Indentation looks incorrect.
================
Comment at: test/Transforms/ObjCARC/allocas.ll:12
declare i8* @objc_retainedObject(i8*)
declare i8* @objc_unretainedObject(i8*)
----------------
Is there a reason we don't use @llvm.objc.retainedObject here and in test/Transforms/ObjCARC/rv.ll?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55348/new/
https://reviews.llvm.org/D55348
More information about the llvm-commits
mailing list