xref: /llvm-project/mlir/test/Conversion/LLVMCommon/types.mlir (revision 43bc81d7488a8fbd43b855f7e1100cfe110f90fc)
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