1// RUN: mlir-opt %s --convert-func-to-llvm --split-input-file | FileCheck %s 2 3// CHECK: @create_clashes_on_conversion(!llvm.struct<"foo", (index)>) 4func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", (f32)>) 5func.func private @create_clashes_on_conversion(!llvm.struct<"foo", (index)>) 6 7// ----- 8 9// CHECK: @merge_on_conversion(!llvm.struct<"_Converted.foo", (i64)>) attributes {sym_visibility = "private"} 10func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", (i64)>) 11func.func private @merge_on_conversion(!llvm.struct<"foo", (index)>) 12 13// ----- 14 15// CHECK: @create_clashes_on_conversion_recursive(!llvm.struct<"foo", (!llvm.struct<"foo">, index)>) 16func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", (struct<"_Converted.foo">, f32)>) 17func.func private @create_clashes_on_conversion_recursive(!llvm.struct<"foo", (struct<"foo">, index)>) 18 19// ----- 20 21// CHECK: @merge_on_conversion_recursive(!llvm.struct<"_Converted.foo", (struct<"_Converted.foo">, i64)>) 22func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", (struct<"_Converted.foo">, i64)>) 23func.func private @merge_on_conversion_recursive(!llvm.struct<"foo", (struct<"foo">, index)>) 24 25// ----- 26 27// CHECK: @create_clashing_pack(!llvm.struct<"foo", packed (!llvm.struct<"foo">, index)>) 28func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", (struct<"_Converted.foo">, i64)>) 29func.func private @create_clashing_pack(!llvm.struct<"foo", packed (struct<"foo">, index)>) 30 31// ----- 32 33// CHECK: @merge_on_conversion_pack(!llvm.struct<"_Converted.foo", packed (struct<"_Converted.foo">, i64)>) 34func.func private @clashing_struct_name(!llvm.struct<"_Converted.foo", packed (struct<"_Converted.foo">, i64)>) 35func.func private @merge_on_conversion_pack(!llvm.struct<"foo", packed (struct<"foo">, index)>) 36