swiftcc void @"$s1d5callByAA2BP_pAA1P_pF"( %T1d2BPP* noalias nocapture sret(%T1d2BPP) %0, %T1d1PP* noalias nocapture dereferenceable(40) %1) #0 { entry: %p.debug = alloca %T1d1PP*, align 8 %2 = bitcast %T1d1PP** %p.debug to i8* call void @llvm.memset.p0i8.i64(i8* align 8 %2, i8 0, i64 8, i1 false) store %T1d1PP* %1, %T1d1PP** %p.debug, align 8 %3 = getelementptr inbounds %T1d1PP, %T1d1PP* %1, i32 0, i32 1 %4 = load %swift.type*, %swift.type** %3, align 8 %5 = getelementptr inbounds %T1d1PP, %T1d1PP* %1, i32 0, i32 2 %6 = load i8**, i8*** %5, align 8 %7 = bitcast %T1d1PP* %1 to %__opaque_existential_type_1* %8 = call %swift.opaque* @__swift_project_boxed_opaque_existential_1(%__opaque_existential_type_1* %7, %swift.type* %4) #4 %9 = getelementptr inbounds i8*, i8** %6, i32 6 %10 = load i8*, i8** %9, align 8, !invariant.load !39 %11 = bitcast i8* %10 to void (%swift.opaque*, %swift.opaque*, %swift.type*, i8**)* %12 = call swiftcc %swift.metadata_response @swift_getAssociatedTypeWitness( i64 0, i8** %6, %swift.type* %4, %swift.protocol_requirement* getelementptr ( %swift.protocol_requirement, %swift.protocol_requirement* getelementptr inbounds ( <{ ... }>, <{ ... }>* @"$s1d1PMp", i32 0, i32 9 ), i32 -1 ), %swift.protocol_requirement* getelementptr inbounds ( <{ ... }>, <{ ... }>* @"$s1d1PMp", i32 0, i32 11 ) ) #9 %13 = extractvalue %swift.metadata_response %12, 0 %14 = getelementptr inbounds %T1d2BPP, %T1d2BPP* %0, i32 0, i32 1 store %swift.type* %13, %swift.type** %14, align 8 %15 = call swiftcc i8** @swift_getAssociatedConformanceWitness( i8** %6, %swift.type* %4, %swift.type* %13, %swift.protocol_requirement* getelementptr ( %swift.protocol_requirement, %swift.protocol_requirement* getelementptr inbounds ( <{ ... }>, <{ ... }>* @"$s1d1PMp", i32 0, i32 9 ), i32 -1 ), %swift.protocol_requirement* getelementptr inbounds ( <{ ... }>, <{ ... }>* @"$s1d1PMp", i32 0, i32 9 ) ) #9 %16 = getelementptr inbounds %T1d2BPP, %T1d2BPP* %0, i32 0, i32 2 store i8** %15, i8*** %16, align 8 %17 = getelementptr inbounds %T1d2BPP, %T1d2BPP* %0, i32 0, i32 0 %18 = getelementptr inbounds %T1d2BPP, %T1d2BPP* %0, i32 0, i32 0 %19 = bitcast %T1d2BPP* %0 to %__opaque_existential_type_1* %20 = call %swift.opaque* @__swift_allocate_boxed_opaque_existential_1(%__opaque_existential_type_1* %19) #4 call swiftcc void %11( %swift.opaque* noalias nocapture sret(%swift.opaque) %20, %swift.opaque* noalias nocapture swiftself %8, %swift.type* %4, i8** %6 ) ret void } 118