Skip to content

Commit c25188b

Browse files
authored
Merge pull request #16140 from milseman/never_inlin
[stdlib] Drop @inlinable if @inline(never).
2 parents 7b6ec6c + 851274d commit c25188b

11 files changed

+22
-23
lines changed

stdlib/public/core/ArrayBuffer.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -190,8 +190,8 @@ extension _ArrayBuffer {
190190
// checks one element. The reason for this is that the ARC optimizer does not
191191
// handle loops atm. and so can get blocked by the presence of a loop (over
192192
// the range). This loop is not necessary for a single element access.
193-
@inlinable
194193
@inline(never)
194+
@usableFromInline
195195
internal func _typeCheckSlowPath(_ index: Int) {
196196
if _fastPath(_isNative) {
197197
let element: AnyObject = cast(toBufferOf: AnyObject.self)._native[index]
@@ -389,8 +389,8 @@ extension _ArrayBuffer {
389389
return unsafeBitCast(_getElementSlowPath(i), to: Element.self)
390390
}
391391

392-
@inlinable
393392
@inline(never)
393+
@inlinable // @specializable
394394
internal func _getElementSlowPath(_ i: Int) -> AnyObject {
395395
_sanityCheck(
396396
_isClassOrObjCExistential(Element.self),

stdlib/public/core/ArrayBufferProtocol.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ extension _ArrayBufferProtocol where Indices == Range<Int>{
134134
}
135135

136136
// Make sure the compiler does not inline _copyBuffer to reduce code size.
137-
@inlinable
138137
@inline(never)
138+
@usableFromInline
139139
internal init(copying buffer: Self) {
140140
let newBuffer = _ContiguousArrayBuffer<Element>(
141141
_uninitializedCount: buffer.count, minimumCapacity: buffer.count)

stdlib/public/core/Arrays.swift.gyb

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1115,8 +1115,8 @@ extension ${Self} : RangeReplaceableCollection, ArrayProtocol {
11151115
}
11161116
}
11171117

1118-
@inlinable
11191118
@inline(never)
1119+
@usableFromInline
11201120
internal static func _allocateBufferUninitialized(
11211121
minimumCapacity: Int
11221122
) -> _Buffer {
@@ -1337,8 +1337,8 @@ extension ${Self} : RangeReplaceableCollection, ArrayProtocol {
13371337
/// Copy the contents of the current buffer to a new unique mutable buffer.
13381338
/// The count of the new buffer is set to `oldCount`, the capacity of the
13391339
/// new buffer is big enough to hold 'oldCount' + 1 elements.
1340-
@inlinable
13411340
@inline(never)
1341+
@inlinable // @specializable
13421342
internal mutating func _copyToNewBuffer(oldCount: Int) {
13431343
let newCount = oldCount + 1
13441344
var newBuffer = _buffer._forceCreateUniqueMutableBuffer(
@@ -1875,7 +1875,7 @@ internal struct _InitializeMemoryFromCollection<
18751875
}
18761876

18771877
extension _ArrayBufferProtocol {
1878-
@inlinable
1878+
@inlinable // FIXME @useableFromInline https://bugs.swift.org/browse/SR-7588
18791879
@inline(never)
18801880
internal mutating func _arrayOutOfPlaceReplace<C : Collection>(
18811881
_ bounds: Range<Int>,
@@ -1989,8 +1989,8 @@ extension _ArrayBufferProtocol {
19891989
/// The formula used to compute the new buffers capacity is:
19901990
/// max(requiredCapacity, source.capacity) if newCount <= source.capacity
19911991
/// max(requiredCapacity, _growArrayCapacity(source.capacity)) otherwise
1992-
@inlinable
19931992
@inline(never)
1993+
@inlinable // @specializable
19941994
internal func _forceCreateUniqueMutableBuffer(
19951995
newCount: Int, requiredCapacity: Int
19961996
) -> _ContiguousArrayBuffer<Element> {
@@ -2005,8 +2005,8 @@ extension _ArrayBufferProtocol {
20052005
/// The formula used to compute the new buffers capacity is:
20062006
/// max(minNewCapacity, source.capacity) if minNewCapacity <= source.capacity
20072007
/// max(minNewCapacity, _growArrayCapacity(source.capacity)) otherwise
2008-
@inlinable
20092008
@inline(never)
2009+
@inlinable // @specializable
20102010
internal func _forceCreateUniqueMutableBuffer(
20112011
countForNewBuffer: Int, minNewCapacity: Int
20122012
) -> _ContiguousArrayBuffer<Element> {
@@ -2054,8 +2054,8 @@ extension _ArrayBufferProtocol {
20542054
///
20552055
/// As an optimization, may move elements out of source rather than
20562056
/// copying when it isUniquelyReferenced.
2057-
@inlinable
20582057
@inline(never)
2058+
@inlinable // @specializable
20592059
internal mutating func _arrayOutOfPlaceUpdate<Initializer>(
20602060
_ dest: inout _ContiguousArrayBuffer<Element>,
20612061
_ headCount: Int, // Count of initial source elements to copy/move
@@ -2138,8 +2138,8 @@ internal struct _IgnorePointer<T> : _PointerFunction {
21382138
}
21392139

21402140
extension _ArrayBufferProtocol {
2141-
@inlinable
21422141
@inline(never)
2142+
@usableFromInline
21432143
internal mutating func _outlinedMakeUniqueBuffer(bufferCount: Int) {
21442144

21452145
if _fastPath(

stdlib/public/core/Dictionary.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3294,8 +3294,8 @@ internal enum _VariantDictionaryBuffer<Key: Hashable, Value>: _HashBuffer {
32943294
}
32953295

32963296
#if _runtime(_ObjC)
3297-
@inlinable // FIXME(sil-serialize-all)
32983297
@inline(never)
3298+
@usableFromInline
32993299
internal mutating func migrateDataToNativeBuffer(
33003300
_ cocoaBuffer: _CocoaDictionaryBuffer
33013301
) {
@@ -3459,8 +3459,8 @@ internal enum _VariantDictionaryBuffer<Key: Hashable, Value>: _HashBuffer {
34593459
}
34603460

34613461
#if _runtime(_ObjC)
3462-
@inlinable // FIXME(sil-serialize-all)
34633462
@inline(never)
3463+
@usableFromInline
34643464
internal static func maybeGetFromCocoaBuffer(
34653465
_ cocoaBuffer: CocoaBuffer, forKey key: Key
34663466
) -> Value? {

stdlib/public/core/ExistentialCollection.swift.gyb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ from gyb_stdlib_support import (
2424

2525
import SwiftShims
2626

27-
@inlinable // FIXME(sil-serialize-all)
2827
@inline(never)
28+
@usableFromInline
2929
internal func _abstract(
3030
file: StaticString = #file,
3131
line: UInt = #line

stdlib/public/core/IntegerParsing.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ extension FixedWidthInteger {
9595
// _parseASCII function thunk that prevents inlining used as an implementation
9696
// detail for FixedWidthInteger.init(_: radix:) on the slow path to save code
9797
// size.
98-
@inlinable // FIXME(sil-serialize-all)
9998
@_semantics("optimize.sil.specialize.generic.partial.never")
10099
@inline(never)
100+
@usableFromInline
101101
internal static func _parseASCIISlowPath<
102102
CodeUnits : IteratorProtocol, Result: FixedWidthInteger
103103
>(

stdlib/public/core/Mirror.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ public struct Mirror {
161161

162162
@_semantics("optimize.sil.specialize.generic.never")
163163
@inline(never)
164-
@inlinable // FIXME(sil-serialize-all)
164+
@usableFromInline
165165
internal static func _superclassIterator<Subject>(
166166
_ subject: Subject, _ ancestorRepresentation: AncestorRepresentation
167167
) -> () -> Mirror? {

stdlib/public/core/OutputStream.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -415,8 +415,8 @@ internal func _print_unlocked<T, TargetStream : TextOutputStream>(
415415
///
416416
/// This function is forbidden from being inlined because when building the
417417
/// standard library inlining makes us drop the special semantics.
418-
@inlinable
419418
@inline(never) @effects(readonly)
419+
@usableFromInline
420420
internal func _toStringReadOnlyStreamable<
421421
T : TextOutputStreamable
422422
>(_ x: T) -> String {
@@ -425,8 +425,8 @@ internal func _toStringReadOnlyStreamable<
425425
return result
426426
}
427427

428-
@inlinable
429428
@inline(never) @effects(readonly)
429+
@usableFromInline
430430
internal func _toStringReadOnlyPrintable<
431431
T : CustomStringConvertible
432432
>(_ x: T) -> String {
@@ -437,7 +437,6 @@ internal func _toStringReadOnlyPrintable<
437437
// `debugPrint`
438438
//===----------------------------------------------------------------------===//
439439

440-
@inlinable // FIXME(sil-serialize-all)
441440
@_semantics("optimize.sil.specialize.generic.never")
442441
@inline(never)
443442
public func _debugPrint_unlocked<T, TargetStream : TextOutputStream>(

stdlib/public/core/Set.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2824,8 +2824,8 @@ internal enum _VariantSetBuffer<Element: Hashable>: _HashBuffer {
28242824
}
28252825

28262826
#if _runtime(_ObjC)
2827-
@inlinable // FIXME(sil-serialize-all)
28282827
@inline(never)
2828+
@usableFromInline
28292829
internal mutating func migrateDataToNativeBuffer(
28302830
_ cocoaBuffer: _CocoaSetBuffer
28312831
) {
@@ -2987,8 +2987,8 @@ internal enum _VariantSetBuffer<Element: Hashable>: _HashBuffer {
29872987
}
29882988

29892989
#if _runtime(_ObjC)
2990-
@inlinable // FIXME(sil-serialize-all)
29912990
@inline(never)
2991+
@usableFromInline
29922992
internal static func maybeGetFromCocoaBuffer(
29932993
_ cocoaBuffer: CocoaBuffer, forKey key: Key
29942994
) -> Value? {

stdlib/public/core/ThreadLocalStorage.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,8 @@ internal let _tlsKey: __swift_thread_key_t = {
123123
return key
124124
}()
125125

126-
@inlinable // FIXME(sil-serialize-all)
127126
@inline(never)
127+
@usableFromInline
128128
internal func _initializeThreadLocalStorage()
129129
-> UnsafeMutablePointer<_ThreadLocalStorage>
130130
{

stdlib/public/core/UTF8.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,7 +177,7 @@ extension UTF8.ReverseParser : Unicode.Parser, _UTFParser {
177177
/// Returns the length of the invalid sequence that ends with the LSB of
178178
/// buffer.
179179
@inline(never)
180-
@inlinable // FIXME(sil-serialize-all)
180+
@usableFromInline
181181
internal func _invalidLength() -> UInt8 {
182182
if _buffer._storage & 0b0__1111_0000__1100_0000
183183
== 0b0__1110_0000__1000_0000 {
@@ -254,7 +254,7 @@ extension Unicode.UTF8.ForwardParser : Unicode.Parser, _UTFParser {
254254
/// Returns the length of the invalid sequence that starts with the LSB of
255255
/// buffer.
256256
@inline(never)
257-
@inlinable // FIXME(sil-serialize-all)
257+
@usableFromInline
258258
internal func _invalidLength() -> UInt8 {
259259
if _buffer._storage & 0b0__1100_0000__1111_0000
260260
== 0b0__1000_0000__1110_0000 {

0 commit comments

Comments
 (0)