Skip to content

Commit 9078011

Browse files
committed
[benchmark] Add autoreleasepool to objc bridging tests
We might be returning unowned objects as autorelease'd results. I consciously do this in the test rather than in the driver because this makes it easier to run the test in isolation.
1 parent 14ce059 commit 9078011

File tree

1 file changed

+16
-8
lines changed

1 file changed

+16
-8
lines changed

benchmark/single-source/unit-tests/ObjectiveCBridgingStubs.swift

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,10 @@ func testObjectiveCBridgeStubFromNSString() {
2626

2727
@inline(never)
2828
public func run_ObjectiveCBridgeStubFromNSString(N: Int) {
29-
for _ in 0 ..< N {
30-
testObjectiveCBridgeStubFromNSString()
29+
autoreleasepool {
30+
for _ in 0 ..< N {
31+
testObjectiveCBridgeStubFromNSString()
32+
}
3133
}
3234
}
3335

@@ -43,8 +45,10 @@ func testObjectiveCBridgeStubToNSString() {
4345

4446
@inline(never)
4547
public func run_ObjectiveCBridgeStubToNSString(N: Int) {
46-
for _ in 0 ..< N {
47-
testObjectiveCBridgeStubToNSString()
48+
autoreleasepool {
49+
for _ in 0 ..< N {
50+
testObjectiveCBridgeStubToNSString()
51+
}
4852
}
4953
}
5054
@inline(never)
@@ -61,8 +65,10 @@ func testObjectiveCBridgeStubFromArrayOfNSString() {
6165

6266
@inline(never)
6367
public func run_ObjectiveCBridgeStubFromArrayOfNSString(N: Int) {
64-
for _ in 0 ..< N {
65-
testObjectiveCBridgeStubFromArrayOfNSString()
68+
autoreleasepool {
69+
for _ in 0 ..< N {
70+
testObjectiveCBridgeStubFromArrayOfNSString()
71+
}
6672
}
6773
}
6874
@inline(never)
@@ -78,7 +84,9 @@ func testObjectiveCBridgeStubToArrayOfNSString() {
7884

7985
@inline(never)
8086
public func run_ObjectiveCBridgeStubToArrayOfNSString(N: Int) {
81-
for _ in 0 ..< N {
82-
testObjectiveCBridgeStubToArrayOfNSString()
87+
autoreleasepool {
88+
for _ in 0 ..< N {
89+
testObjectiveCBridgeStubToArrayOfNSString()
90+
}
8391
}
8492
}

0 commit comments

Comments
 (0)