Skip to content

Commit a484558

Browse files
committed
---
yaml --- r: 293727 b: refs/heads/tensorflow c: b67d236 h: refs/heads/master i: 293725: 18083d6 293723: fdec03e 293719: 2a8a618 293711: 90cb500 293695: ab579fd
1 parent d53ba37 commit a484558

File tree

2 files changed

+28
-1
lines changed

2 files changed

+28
-1
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -816,7 +816,7 @@ refs/tags/swift-DEVELOPMENT-SNAPSHOT-2018-04-25-a: 22f738a831d43aff2b9c9773bcb65
816816
refs/tags/swift-DEVELOPMENT-SNAPSHOT-2018-05-08-a: 7d98cc16689baba5c8a3b90a9329bdcc1a12b4e9
817817
refs/heads/cherr42: a566ad54b073c2c56ac0a705d0a5bed9743135a5
818818
"refs/heads/codable_test_comment_fix": fc8f6824f7f347e1e8db55bff62db385c5728b5a
819-
refs/heads/tensorflow: ea555511a81e640caaa930125604d916a9332a42
819+
refs/heads/tensorflow: b67d23642dfb23405d91f17c81e5cc71acf4753d
820820
refs/tags/swift-4.1-DEVELOPMENT-SNAPSHOT-2018-05-11-a: 8126fd7a652e2f70ad6d76505239e34fb2ef3e1a
821821
refs/tags/swift-4.1-DEVELOPMENT-SNAPSHOT-2018-05-12-a: b3fd3dd84df6717f2e2e9df58c6d7e99fed57086
822822
refs/tags/swift-4.1-DEVELOPMENT-SNAPSHOT-2018-05-13-a: 71135119579039dc321c5f65d870050fe36efda2
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// RUN: %target-swift-frontend -emit-ir -primary-file %s | %FileCheck %s
2+
3+
import Foundation
4+
5+
@objc protocol SR_9035_P {
6+
func returnUnmanagedCFArray() throws -> Unmanaged<CFArray>
7+
}
8+
9+
@objc class SR_9035_C: NSObject, SR_9035_P {
10+
func returnUnmanagedCFArray() throws -> Unmanaged<CFArray> {
11+
// CHECK: %3 = call swiftcc { %swift.bridge*, i8* } @"$ss27_allocateUninitializedArrayySayxG_BptBwlF"(i64 1, %swift.type* @"$sSiN")
12+
// CHECK-NEXT: %4 = extractvalue { %swift.bridge*, i8* } %3, 0
13+
// CHECK-NEXT: %5 = extractvalue { %swift.bridge*, i8* } %3, 1
14+
// CHECK-NEXT: %6 = bitcast i8* %5 to %TSi*
15+
// CHECK-NEXT: %._value = getelementptr inbounds %TSi, %TSi* %6, i32 0, i32 0
16+
// CHECK-NEXT: store i64 1, i64* %._value, align 8
17+
// CHECK-NEXT: %7 = call swiftcc %TSo7NSArrayC* @"$sSa10FoundationE19_bridgeToObjectiveCSo7NSArrayCyF"(%swift.bridge* %4, %swift.type* @"$sSiN")
18+
// CHECK-NEXT: %8 = bitcast %TSo7NSArrayC* %7 to %TSo10CFArrayRefa*
19+
// CHECK-NEXT: call void asm sideeffect "", "r"(%TSo10CFArrayRefa* %8)
20+
// CHECK-NEXT: call void @swift_bridgeObjectRelease(%swift.bridge* %4) #2
21+
// CHECK-NEXT: %9 = bitcast %TSo10CFArrayRefa* %8 to i8*
22+
// CHECK-NEXT: call void @llvm.objc.release(i8* %9)
23+
// CHECK-NEXT: ret %TSo10CFArrayRefa* %8
24+
let arr = [1] as CFArray
25+
return Unmanaged.passUnretained(arr)
26+
}
27+
}

0 commit comments

Comments
 (0)