Skip to content

Commit 60a70e1

Browse files
committed
SwiftCompilerSources CopyingInstruction
And UnmanagedRetain/Release.
1 parent a69fb95 commit 60a70e1

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

SwiftCompilerSources/Sources/SIL/Instruction.swift

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,10 @@ final public class RetainValueInst : RefCountingInst {
474474
public var value: Value { return operand.value }
475475
}
476476

477+
final public class UnmanagedRetainValueInst : RefCountingInst {
478+
public var value: Value { return operand.value }
479+
}
480+
477481
final public class RetainValueAddrInst : RefCountingInst {
478482
}
479483

@@ -492,6 +496,10 @@ final public class ReleaseValueInst : RefCountingInst {
492496
public var value: Value { return operand.value }
493497
}
494498

499+
final public class UnmanagedReleaseValueInst : RefCountingInst {
500+
public var value: Value { return operand.value }
501+
}
502+
495503
final public class DestroyValueInst : Instruction, UnaryInstruction {
496504
public var destroyedValue: Value { operand.value }
497505
}
@@ -978,7 +986,13 @@ final public class ProjectBoxInst : SingleValueInstruction, UnaryInstruction {
978986
public var fieldIndex: Int { bridged.ProjectBoxInst_fieldIndex() }
979987
}
980988

981-
final public class CopyValueInst : SingleValueInstruction, UnaryInstruction {
989+
public protocol CopyingInstruction : SingleValueInstruction, UnaryInstruction {}
990+
991+
final public class CopyValueInst : SingleValueInstruction, UnaryInstruction, CopyingInstruction {
992+
public var fromValue: Value { operand.value }
993+
}
994+
995+
final public class ExplicitCopyValueInst : SingleValueInstruction, UnaryInstruction, CopyingInstruction {
982996
public var fromValue: Value { operand.value }
983997
}
984998

0 commit comments

Comments
 (0)