llvm/llvm/test/Transforms/MergeFunc/byval-attr-congruent-type.ll

; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt -S -passes=mergefunc %s | FileCheck %s

%struct.c = type { i32 }
%struct.a = type { i32 }

@d = external dso_local global %struct.c

define void @e(ptr byval(%struct.a) %f) {
; CHECK-LABEL: @e(
; CHECK-NEXT:    ret void
;
  ret void
}

define void @g(ptr byval(%struct.c) %f) {
; CHECK-LABEL: @g(
; CHECK-NEXT:    ret void
;
  ret void
}

define void @h() {
; CHECK-LABEL: @h(
; CHECK-NEXT:    call void @e(ptr byval(%struct.c) @d)
; CHECK-NEXT:    ret void
;
  call void @g(ptr byval(%struct.c) @d)
  ret void
}