// RUN: %target-sil-opt -enable-sil-verify-all %s -cse | %FileCheck %s sil_stage canonical import Builtin import Swift class X { var x : Int64 init() } //CHECK: _RefElementAddr //CHECK: ref_element_addr //CHECK-NEXT: store //CHECK-NOT: ref_element_addr //CHECK: return sil @_RefElementAddr : $@convention(thin) () -> Int64 { bb0: %0 = alloc_ref $X // users: %5, %7, %3 %1 = integer_literal $Builtin.Int64, 0 // user: %2 %2 = struct $Int64 (%1 : $Builtin.Int64) // user: %4 %3 = ref_element_addr %0 : $X, #X.x // user: %4 store %2 to %3 : $*Int64 // id: %4 %5 = ref_element_addr %0 : $X, #X.x // user: %6 %6 = load %5 : $*Int64 // user: %8 strong_release %0 : $X // id: %7 return %6 : $Int64 // id: %8 } sil_vtable X { }