[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / llvm / test / Transforms / LoopStrengthReduce / pr48725.ll
blobdfba28a38018ef98e8969408abec9e5d4474eee5
1 ; RUN: opt -S -loop-reduce < %s | FileCheck %s
3 source_filename = "./simple.ll"
4 target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128-ni:1-p2:32:8:8:32-ni:2"
5 target triple = "x86_64-unknown-linux-gnu"
7 ; CHECK-LABEL: test
8 define void @test() {
9 bb:
10   br label %bb1
12 bb1:                                              ; preds = %bb1, %bb
13   %tmp = phi i32 [ undef, %bb ], [ %tmp87, %bb1 ]
14   %tmp2 = phi i32 [ undef, %bb ], [ %tmp86, %bb1 ]
15   %tmp3 = mul i32 %tmp, undef
16   %tmp4 = xor i32 %tmp3, -1
17   %tmp5 = add i32 %tmp, %tmp4
18   %tmp6 = add i32 %tmp2, -1
19   %tmp7 = add i32 %tmp5, %tmp6
20   %tmp8 = mul i32 %tmp7, %tmp3
21   %tmp9 = xor i32 %tmp8, -1
22   %tmp10 = add i32 %tmp7, %tmp9
23   %tmp11 = add i32 %tmp10, undef
24   %tmp12 = mul i32 %tmp11, %tmp8
25   %tmp13 = xor i32 %tmp12, -1
26   %tmp14 = add i32 %tmp11, %tmp13
27   %tmp15 = add i32 %tmp14, undef
28   %tmp16 = mul i32 %tmp15, %tmp12
29   %tmp17 = add i32 %tmp15, undef
30   %tmp18 = add i32 %tmp17, undef
31   %tmp19 = mul i32 %tmp18, %tmp16
32   %tmp20 = xor i32 %tmp19, -1
33   %tmp21 = add i32 %tmp18, %tmp20
34   %tmp22 = add i32 %tmp21, undef
35   %tmp23 = mul i32 %tmp22, %tmp19
36   %tmp24 = xor i32 %tmp23, -1
37   %tmp25 = add i32 %tmp22, %tmp24
38   %tmp26 = add i32 %tmp25, undef
39   %tmp27 = mul i32 %tmp26, %tmp23
40   %tmp28 = xor i32 %tmp27, -1
41   %tmp29 = add i32 %tmp26, %tmp28
42   %tmp30 = add i32 %tmp29, undef
43   %tmp31 = mul i32 %tmp30, %tmp27
44   %tmp32 = xor i32 %tmp31, -1
45   %tmp33 = add i32 %tmp30, %tmp32
46   %tmp34 = add i32 %tmp33, undef
47   %tmp35 = mul i32 %tmp34, %tmp31
48   %tmp36 = xor i32 %tmp35, -1
49   %tmp37 = add i32 %tmp34, %tmp36
50   %tmp38 = add i32 %tmp2, -9
51   %tmp39 = add i32 %tmp37, %tmp38
52   %tmp40 = mul i32 %tmp39, %tmp35
53   %tmp41 = xor i32 %tmp40, -1
54   %tmp42 = add i32 %tmp39, %tmp41
55   %tmp43 = add i32 %tmp42, undef
56   %tmp44 = mul i32 %tmp43, %tmp40
57   %tmp45 = xor i32 %tmp44, -1
58   %tmp46 = add i32 %tmp43, %tmp45
59   %tmp47 = add i32 %tmp46, undef
60   %tmp48 = mul i32 %tmp47, %tmp44
61   %tmp49 = xor i32 %tmp48, -1
62   %tmp50 = add i32 %tmp47, %tmp49
63   %tmp51 = add i32 %tmp50, undef
64   %tmp52 = mul i32 %tmp51, %tmp48
65   %tmp53 = xor i32 %tmp52, -1
66   %tmp54 = add i32 %tmp51, %tmp53
67   %tmp55 = add i32 %tmp54, undef
68   %tmp56 = mul i32 %tmp55, %tmp52
69   %tmp57 = xor i32 %tmp56, -1
70   %tmp58 = add i32 %tmp55, %tmp57
71   %tmp59 = add i32 %tmp2, -14
72   %tmp60 = add i32 %tmp58, %tmp59
73   %tmp61 = mul i32 %tmp60, %tmp56
74   %tmp62 = xor i32 %tmp61, -1
75   %tmp63 = add i32 %tmp60, %tmp62
76   %tmp64 = add i32 %tmp63, undef
77   %tmp65 = mul i32 %tmp64, %tmp61
78   %tmp66 = xor i32 %tmp65, -1
79   %tmp67 = add i32 %tmp64, %tmp66
80   %tmp68 = add i32 %tmp67, undef
81   %tmp69 = mul i32 %tmp68, %tmp65
82   %tmp70 = xor i32 %tmp69, -1
83   %tmp71 = add i32 %tmp68, %tmp70
84   %tmp72 = add i32 %tmp71, undef
85   %tmp73 = mul i32 %tmp72, %tmp69
86   %tmp74 = xor i32 %tmp73, -1
87   %tmp75 = add i32 %tmp72, %tmp74
88   %tmp76 = add i32 %tmp75, undef
89   %tmp77 = mul i32 %tmp76, %tmp73
90   %tmp78 = xor i32 %tmp77, -1
91   %tmp79 = add i32 %tmp76, %tmp78
92   %tmp80 = add i32 %tmp79, undef
93   %tmp81 = mul i32 %tmp80, %tmp77
94   %tmp82 = xor i32 %tmp81, -1
95   %tmp83 = add i32 %tmp80, %tmp82
96   %tmp84 = add i32 %tmp83, undef
97   %tmp85 = add i32 %tmp84, undef
98   %tmp86 = add i32 %tmp2, -21
99   %tmp87 = add i32 %tmp85, %tmp86
100   br label %bb1