File tree Expand file tree Collapse file tree 2 files changed +0
-105
lines changed Expand file tree Collapse file tree 2 files changed +0
-105
lines changed Original file line number Diff line number Diff line change @@ -166,35 +166,6 @@ extension String {
166166 }
167167}
168168
169- /// Takes in a value at +1 and performs a Builtin.move upon it.
170- ///
171- /// IMPLEMENTATION NOTES: During transparent inlining, Builtin.move becomes the
172- /// move_value instruction if we are inlining into a context where the
173- /// specialized type is loadable. If the transparent function is called in a
174- /// context where the inlined function specializes such that the specialized
175- /// type is still not loadable, the compiler aborts (a). Once we have opaque
176- /// values, this restriction will be lifted since after that address only types
177- /// at SILGen time will be loadable objects.
178- ///
179- /// (a). This is implemented by requiring that Builtin.move only be called
180- /// within a function marked with the semantic tag "lifetimemanagement.move"
181- /// which conveniently is only the function we are defining here: _move.
182- ///
183- /// NOTE: We mark this _alwaysEmitIntoClient to ensure that we are not creating
184- /// new ABI that the stdlib must maintain if a user calls this ignoring the '_'
185- /// implying it is stdlib SPI.
186- @_alwaysEmitIntoClient
187- @inlinable
188- @_transparent
189- @_semantics ( " lifetimemanagement.move " )
190- public func _move< T> ( _ value: __owned T) -> T {
191- #if $BuiltinMove
192- Builtin . move ( value)
193- #else
194- value
195- #endif
196- }
197-
198169/// Takes in a value at +0 and performs a Builtin.copy upon it.
199170///
200171/// IMPLEMENTATION NOTES: During transparent inlining, Builtin.copy becomes the
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments