
// RUN: %empty-directory(%t)
// RUN: %target-swift-frontend -emit-module -o %t %S/Inputs/def_generic.swift
// RUN: %target-sil-opt -performance-linker -I %t %s | %FileCheck %s

// Make sure that SILFunctionType with GenericSignature can match up with
// SILFunctionType deserialized from module.

sil_stage raw

import def_generic
import Builtin
import Swift

// CHECK-LABEL: sil @top_level_code
// CHECK: function_ref @$s11def_generic1AC23convertFromArrayLiteralyACyxGxd_tF
sil @top_level_code : $@convention(thin) () -> () {
bb0:
  %3 = function_ref @$s11def_generic1AC23convertFromArrayLiteralyACyxGxd_tF : $@convention(method) <T> (@guaranteed Array<T>, @guaranteed A<T>) -> @owned A<T>
  %0 = tuple ()                                   // user: %1
  return %0 : $()                                 // id: %1
}

// Make sure the function body is deserialized.
// CHECK-LABEL: sil public_external [serialized] [canonical] @$s11def_generic1AC23convertFromArrayLiteralyACyxGxd_tF : $@convention(method) <T> (@guaranteed Array<T>, @guaranteed A<T>) -> @owned A<T> {
sil @$s11def_generic1AC23convertFromArrayLiteralyACyxGxd_tF : $@convention(method) <T> (@guaranteed Array<T>, @guaranteed A<T>) -> @owned A<T>
