Avatar
swiftNightly BOT 7/24/2018 11:34 PM
sil_stage canonical import Builtin import Swift import SwiftShims class Cat { @sil_stored unowned var parent: @sil_unowned Cat? { get set } init() deinit } // main sil @main : $@convention(c) (Int32, UnsafeMutablePointer<Optional<UnsafeMutablePointer<Int8>>>) -> Int32 { bb0(%0 : $Int32, %1 : $UnsafeMutablePointer<Optional<UnsafeMutablePointer<Int8>>>): %2 = integer_literal $Builtin.Int32, 0 // user: %3 %3 = struct $Int32 (%2 : $Builtin.Int32) // user: %4 return %3 : $Int32 // id: %4 } // end sil function 'main' // Cat.parent.getter sil hidden [transparent] @$S4main3CatC6parentACSgXovg : $@convention(method) (@guaranteed Cat) -> @owned Optional<Cat> { // %0 // users: %2, %1 bb0(%0 : $Cat): debug_value %0 : $Cat, let, name "self", argno 1 // id: %1 %2 = ref_element_addr %0 : $Cat, #Cat.parent // user: %3 %3 = begin_access [read] [dynamic] %2 : $*@sil_unowned Optional<Cat> // users: %4, %6 %4 = load %3 : $*@sil_unowned Optional<Cat> // user: %5 %5 = copy_unowned_value %4 : $@sil_unowned Optional<Cat> // user: %7 end_access %3 : $*@sil_unowned Optional<Cat> // id: %6 return %5 : $Optional<Cat> // id: %7 } // end sil function '$S4main3CatC6parentACSgXovg' // Cat.parent.setter sil hidden [transparent] @$S4main3CatC6parentACSgXovs : $@convention(method) (@owned Optional<Cat>, @guaranteed Cat) -> () { // %0 // users: %12, %6, %2 // %1 // users: %4, %3 bb0(%0 : $Optional<Cat>, %1 : $Cat): debug_value %0 : $Optional<Cat>, let, name "value", argno 1 // id: %2 debug_value %1 : $Cat, let, name "self", argno 2 // id: %3 %4 = ref_element_addr %1 : $Cat, #Cat.parent // user: %5 %5 = begin_access [modify] [dynamic] %4 : $*@sil_unowned Optional<Cat> // users: %9, %8, %11 %6 = ref_to_unowned %0 : $Optional<Cat> to $@sil_unowned Op