@@ -537,6 +537,14 @@ BUILTIN_SIL_OPERATION(HopToActor, "hopToActor", None)
537537// / Returns the number of items in a pack.
538538BUILTIN_SIL_OPERATION(PackLength, " packLength" , Special)
539539
540+ // / TODO: Remove. Only exists to avoid a reverse condfail.
541+ // / rdar://127516085 (Complete removal of Builtin.copy)
542+ // /
543+ // / copy: <T>(T) -> T
544+ // /
545+ // / Creates a copy of the source at the destination.
546+ BUILTIN_SIL_OPERATION(Copy, " copy" , Special)
547+
540548// BUILTIN_RUNTIME_CALL - A call into a runtime function.
541549// These functions accept a single argument of any type.
542550#ifndef BUILTIN_RUNTIME_CALL
@@ -804,24 +812,6 @@ BUILTIN_MISC_OPERATION(CreateTaskGroupWithFlags,
804812BUILTIN_MISC_OPERATION(DestroyTaskGroup,
805813 " destroyTaskGroup" , " " , Special)
806814
807- // / A builtin that can only be called from a transparent generic function. Takes
808- // / two operands, the first operand the result address, the second operand the
809- // / input address. Transforms into
810- // /
811- // / %input = load [take] %inputAddr
812- // / %result = explicit_copy_value %input
813- // / store %result to [init] %resultAddr
814- // / store %input to [init] %inputAddr
815- // /
816- // / transparently inlined into a caller that has the generic of the callee
817- // / specialized into a loadable type. If the transparent inlining does not
818- // / specialize the type (due to being inlined into a non-generic context, the
819- // / SILVerifier will abort).
820- // /
821- // / Illegal to call except for in Swift._copy in the stdlib. This is enforced by
822- // / the SILVerifier.
823- BUILTIN_MISC_OPERATION(Copy, " copy" , " " , Special)
824-
825815// / Unchecked pointer alignment assertion. Allows the compiler to assume
826816// / alignment of the pointer to emit more efficient code.
827817// /
0 commit comments