Why the implementation of ARC's objc_autoreleaseReturnValue differs for x86_64 and ARM? Why the implementation of ARC's objc_autoreleaseReturnValue differs for x86_64 and ARM? objective-c objective-c