xref: /llvm-project/mlir/test/Target/LLVMIR/Import/incorrect-instmap-assignment.ll (revision 777784d9cff46768cc30214152ba7dc8ff9de0a7)
1; RUN: mlir-translate --import-llvm %s | FileCheck %s
2
3; This test file is meant to saturate `instMap` used in the translation
4; and force it to resize.
5
6; This test is primarily used to make sure it doesn't bail out with non-zero
7; exit code. Thus, we only wrote minimum level of checks.
8
9%my_struct = type {i32, i32}
10@gvar = external global %my_struct
11
12; CHECK: llvm.func @f(%arg0: i32, %arg1: i32)
13define void @f(i32 %0, i32 %1) {
14  %3 = add i32 %0, %1
15  %4 = add i32 %1, %3
16  %5 = add i32 %3, %4
17  %6 = add i32 %4, %5
18  %7 = add i32 %5, %6
19  %8 = add i32 %6, %7
20  %9 = add i32 %7, %8
21  %10 = add i32 %8, %9
22  %11 = add i32 %9, %10
23  %12 = add i32 %10, %11
24  %13 = add i32 %11, %12
25  %14 = add i32 %12, %13
26  %15 = add i32 %13, %14
27  %16 = add i32 %14, %15
28  %17 = add i32 %15, %16
29  %18 = add i32 %16, %17
30  %19 = add i32 %17, %18
31  %20 = add i32 %18, %19
32  %21 = add i32 %19, %20
33  %22 = add i32 %20, %21
34  %23 = add i32 %21, %22
35  %24 = add i32 %22, %23
36  %25 = add i32 %23, %24
37  %26 = add i32 %24, %25
38  %27 = add i32 %25, %26
39  %28 = add i32 %26, %27
40  %29 = add i32 %27, %28
41  %30 = add i32 %28, %29
42  %31 = add i32 %29, %30
43  %32 = add i32 %30, %31
44  %33 = add i32 %31, %32
45  %34 = add i32 %32, %33
46  %35 = add i32 %33, %34
47  %36 = add i32 %34, %35
48  %37 = add i32 %35, %36
49  %38 = add i32 %36, %37
50  %39 = add i32 %37, %38
51  %40 = add i32 %38, %39
52  %41 = add i32 %39, %40
53  %42 = add i32 %40, %41
54  %43 = add i32 %41, %42
55  %44 = add i32 %42, %43
56  %45 = add i32 %43, %44
57  %46 = add i32 %44, %45
58  %47 = add i32 %45, %46
59  %48 = add i32 %46, %47
60  %49 = add i32 %47, %48
61  %50 = add i32 %48, %49
62  %51 = add i32 %49, %50
63  %52 = add i32 %50, %51
64  %53 = add i32 %51, %52
65  %54 = add i32 %52, %53
66  %55 = add i32 %53, %54
67  %56 = add i32 %54, %55
68  %57 = add i32 %55, %56
69  %58 = add i32 %56, %57
70  %59 = add i32 %57, %58
71  %60 = add i32 %58, %59
72  %61 = add i32 %59, %60
73  %62 = add i32 %60, %61
74  %63 = add i32 %61, %62
75  %64 = add i32 %62, %63
76  %65 = add i32 %63, %64
77  %66 = add i32 %64, %65
78  %67 = add i32 %65, %66
79  %68 = add i32 %66, %67
80  %69 = add i32 %67, %68
81  %70 = add i32 %68, %69
82  %71 = add i32 %69, %70
83  %72 = add i32 %70, %71
84  %73 = add i32 %71, %72
85  %74 = add i32 %72, %73
86  %75 = add i32 %73, %74
87  %76 = add i32 %74, %75
88  %77 = add i32 %75, %76
89  %78 = add i32 %76, %77
90  %79 = add i32 %77, %78
91  %80 = add i32 %78, %79
92  %81 = add i32 %79, %80
93  %82 = add i32 %80, %81
94  %83 = add i32 %81, %82
95  %84 = add i32 %82, %83
96  %85 = add i32 %83, %84
97  %86 = add i32 %84, %85
98  %87 = add i32 %85, %86
99  %88 = add i32 %86, %87
100  %89 = add i32 %87, %88
101  %90 = add i32 %88, %89
102  %91 = add i32 %89, %90
103  %92 = add i32 %90, %91
104  %93 = add i32 %91, %92
105  %94 = add i32 %92, %93
106  %95 = load i32, ptr @gvar
107  %96 = add i32 %1, %95
108  ret void
109}
110