[semantic-sil] Create unmanaged_autorelease_value.

This is an autorelease for use with Builtin.autorelease that does not need to be
balanced as part of the ownership model.

rdar://29791263
This commit is contained in:
Michael Gottesman
2017-01-30 11:47:38 -08:00
parent dc8b994fc2
commit 554feff463
17 changed files with 66 additions and 10 deletions

View File

@@ -2104,6 +2104,7 @@ bool SILParser::parseSILInstruction(SILBasicBlock *BB, SILBuilder &B) {
UNARY_INSTRUCTION(EndBorrowArgument)
UNARY_INSTRUCTION(UnmanagedReleaseValue)
UNARY_INSTRUCTION(UnmanagedRetainValue)
UNARY_INSTRUCTION(UnmanagedAutoreleaseValue)
REFCOUNTING_INSTRUCTION(StrongPin)
REFCOUNTING_INSTRUCTION(StrongRetain)
REFCOUNTING_INSTRUCTION(StrongRelease)