This is part of a series of commits to remove reference forwarding for some of the ARC entry points. rdar://22724641.

After this commit, swift_retain will return no reference and LLVMARCContract pass is modified NOT to rewrite
swift_retain_noresult to old swift_retain which forwarded the reference.

Swift SVN r32075
This commit is contained in:
Xin Tong
2015-09-18 20:35:39 +00:00
parent 090e73c728
commit bc3fe169b4
10 changed files with 90 additions and 223 deletions

View File

@@ -95,7 +95,8 @@ swift::swift_getErrorValue(const SwiftError *errorObject,
SwiftError *
swift::swift_errorRetain(SwiftError *object) {
return static_cast<SwiftError*>(swift_retain(object));
swift_retain(object);
return static_cast<SwiftError*>(object);
}
void swift::swift_errorRelease(SwiftError *object) {