brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.1 KiB · 37ec2d5 Raw
200 lines · plain
1; RUN: opt %loadNPMPolly '-passes=polly<no-default-opts>' -polly-ignore-aliasing -S < %s | FileCheck %s2;3;    void manyarrays(float A1[], float A2[], float A3[], float A4[], float A5[],4;                    float A6[], float A7[], float A8[], float A9[]) {5;      for (long i = 0; i <= 1024; i++) {6;        A1[i] += i;7;        A2[i] += i;8;        A3[i] += i;9;        A4[i] += i;10;        A5[i] += i;11;        A6[i] += i;12;        A7[i] += i;13;        A8[i] += i;14;        A9[i] += i;15;      }16;    }17;18; CHECK-LABEL: @manyarrays19; CHECK: load{{.*}}!alias.scope20; CHECK: store{{.*}}!alias.scope21; CHECK: load{{.*}}!alias.scope22; CHECK: store{{.*}}!alias.scope23; CHECK: load{{.*}}!alias.scope24; CHECK: store{{.*}}!alias.scope25; CHECK: load{{.*}}!alias.scope26; CHECK: store{{.*}}!alias.scope27; CHECK: load{{.*}}!alias.scope28; CHECK: store{{.*}}!alias.scope29; CHECK: load{{.*}}!alias.scope30; CHECK: store{{.*}}!alias.scope31; CHECK: load{{.*}}!alias.scope32; CHECK: store{{.*}}!alias.scope33; CHECK: load{{.*}}!alias.scope34; CHECK: store{{.*}}!alias.scope35; CHECK: load{{.*}}!alias.scope36; CHECK: store{{.*}}!alias.scope37;38;    void toomanyarrays(float A1[], float A2[], float A3[], float A4[], float A5[],39;                       float A6[], float A7[], float A8[], float A9[], float A10[],40;                       float A11[]) {41;      for (long i = 0; i <= 1024; i++) {42;        A1[i] += i;43;        A2[i] += i;44;        A3[i] += i;45;        A4[i] += i;46;        A5[i] += i;47;        A6[i] += i;48;        A7[i] += i;49;        A8[i] += i;50;        A9[i] += i;51;        A10[i] += i;52;        A11[i] += i;53;      }54;    }55;56; CHECK-LABEL: @toomanyarrays57; CHECK-NOT: !alias.scope58;59target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"60 61define void @manyarrays(ptr %A1, ptr %A2, ptr %A3, ptr %A4, ptr %A5, ptr %A6, ptr %A7, ptr %A8, ptr %A9) {62bb:63  br label %bb164 65bb1:                                              ; preds = %bb38, %bb66  %i.0 = phi i64 [ 0, %bb ], [ %tmp39, %bb38 ]67  %exitcond = icmp ne i64 %i.0, 102568  br i1 %exitcond, label %bb2, label %bb4069 70bb2:                                              ; preds = %bb171  %tmp = sitofp i64 %i.0 to float72  %tmp3 = getelementptr inbounds float, ptr %A1, i64 %i.073  %tmp4 = load float, ptr %tmp3, align 474  %tmp5 = fadd float %tmp4, %tmp75  store float %tmp5, ptr %tmp3, align 476  %tmp6 = sitofp i64 %i.0 to float77  %tmp7 = getelementptr inbounds float, ptr %A2, i64 %i.078  %tmp8 = load float, ptr %tmp7, align 479  %tmp9 = fadd float %tmp8, %tmp680  store float %tmp9, ptr %tmp7, align 481  %tmp10 = sitofp i64 %i.0 to float82  %tmp11 = getelementptr inbounds float, ptr %A3, i64 %i.083  %tmp12 = load float, ptr %tmp11, align 484  %tmp13 = fadd float %tmp12, %tmp1085  store float %tmp13, ptr %tmp11, align 486  %tmp14 = sitofp i64 %i.0 to float87  %tmp15 = getelementptr inbounds float, ptr %A4, i64 %i.088  %tmp16 = load float, ptr %tmp15, align 489  %tmp17 = fadd float %tmp16, %tmp1490  store float %tmp17, ptr %tmp15, align 491  %tmp18 = sitofp i64 %i.0 to float92  %tmp19 = getelementptr inbounds float, ptr %A5, i64 %i.093  %tmp20 = load float, ptr %tmp19, align 494  %tmp21 = fadd float %tmp20, %tmp1895  store float %tmp21, ptr %tmp19, align 496  %tmp22 = sitofp i64 %i.0 to float97  %tmp23 = getelementptr inbounds float, ptr %A6, i64 %i.098  %tmp24 = load float, ptr %tmp23, align 499  %tmp25 = fadd float %tmp24, %tmp22100  store float %tmp25, ptr %tmp23, align 4101  %tmp26 = sitofp i64 %i.0 to float102  %tmp27 = getelementptr inbounds float, ptr %A7, i64 %i.0103  %tmp28 = load float, ptr %tmp27, align 4104  %tmp29 = fadd float %tmp28, %tmp26105  store float %tmp29, ptr %tmp27, align 4106  %tmp30 = sitofp i64 %i.0 to float107  %tmp31 = getelementptr inbounds float, ptr %A8, i64 %i.0108  %tmp32 = load float, ptr %tmp31, align 4109  %tmp33 = fadd float %tmp32, %tmp30110  store float %tmp33, ptr %tmp31, align 4111  %tmp34 = sitofp i64 %i.0 to float112  %tmp35 = getelementptr inbounds float, ptr %A9, i64 %i.0113  %tmp36 = load float, ptr %tmp35, align 4114  %tmp37 = fadd float %tmp36, %tmp34115  store float %tmp37, ptr %tmp35, align 4116  br label %bb38117 118bb38:                                             ; preds = %bb2119  %tmp39 = add nuw nsw i64 %i.0, 1120  br label %bb1121 122bb40:                                             ; preds = %bb1123  ret void124}125 126define void @toomanyarrays(ptr %A1, ptr %A2, ptr %A3, ptr %A4, ptr %A5, ptr %A6, ptr %A7, ptr %A8, ptr %A9, ptr %A10, ptr %A11) {127bb:128  br label %bb1129 130bb1:                                              ; preds = %bb46, %bb131  %i.0 = phi i64 [ 0, %bb ], [ %tmp47, %bb46 ]132  %exitcond = icmp ne i64 %i.0, 1025133  br i1 %exitcond, label %bb2, label %bb48134 135bb2:                                              ; preds = %bb1136  %tmp = sitofp i64 %i.0 to float137  %tmp3 = getelementptr inbounds float, ptr %A1, i64 %i.0138  %tmp4 = load float, ptr %tmp3, align 4139  %tmp5 = fadd float %tmp4, %tmp140  store float %tmp5, ptr %tmp3, align 4141  %tmp6 = sitofp i64 %i.0 to float142  %tmp7 = getelementptr inbounds float, ptr %A2, i64 %i.0143  %tmp8 = load float, ptr %tmp7, align 4144  %tmp9 = fadd float %tmp8, %tmp6145  store float %tmp9, ptr %tmp7, align 4146  %tmp10 = sitofp i64 %i.0 to float147  %tmp11 = getelementptr inbounds float, ptr %A3, i64 %i.0148  %tmp12 = load float, ptr %tmp11, align 4149  %tmp13 = fadd float %tmp12, %tmp10150  store float %tmp13, ptr %tmp11, align 4151  %tmp14 = sitofp i64 %i.0 to float152  %tmp15 = getelementptr inbounds float, ptr %A4, i64 %i.0153  %tmp16 = load float, ptr %tmp15, align 4154  %tmp17 = fadd float %tmp16, %tmp14155  store float %tmp17, ptr %tmp15, align 4156  %tmp18 = sitofp i64 %i.0 to float157  %tmp19 = getelementptr inbounds float, ptr %A5, i64 %i.0158  %tmp20 = load float, ptr %tmp19, align 4159  %tmp21 = fadd float %tmp20, %tmp18160  store float %tmp21, ptr %tmp19, align 4161  %tmp22 = sitofp i64 %i.0 to float162  %tmp23 = getelementptr inbounds float, ptr %A6, i64 %i.0163  %tmp24 = load float, ptr %tmp23, align 4164  %tmp25 = fadd float %tmp24, %tmp22165  store float %tmp25, ptr %tmp23, align 4166  %tmp26 = sitofp i64 %i.0 to float167  %tmp27 = getelementptr inbounds float, ptr %A7, i64 %i.0168  %tmp28 = load float, ptr %tmp27, align 4169  %tmp29 = fadd float %tmp28, %tmp26170  store float %tmp29, ptr %tmp27, align 4171  %tmp30 = sitofp i64 %i.0 to float172  %tmp31 = getelementptr inbounds float, ptr %A8, i64 %i.0173  %tmp32 = load float, ptr %tmp31, align 4174  %tmp33 = fadd float %tmp32, %tmp30175  store float %tmp33, ptr %tmp31, align 4176  %tmp34 = sitofp i64 %i.0 to float177  %tmp35 = getelementptr inbounds float, ptr %A9, i64 %i.0178  %tmp36 = load float, ptr %tmp35, align 4179  %tmp37 = fadd float %tmp36, %tmp34180  store float %tmp37, ptr %tmp35, align 4181  %tmp38 = sitofp i64 %i.0 to float182  %tmp39 = getelementptr inbounds float, ptr %A10, i64 %i.0183  %tmp40 = load float, ptr %tmp39, align 4184  %tmp41 = fadd float %tmp40, %tmp38185  store float %tmp41, ptr %tmp39, align 4186  %tmp42 = sitofp i64 %i.0 to float187  %tmp43 = getelementptr inbounds float, ptr %A11, i64 %i.0188  %tmp44 = load float, ptr %tmp43, align 4189  %tmp45 = fadd float %tmp44, %tmp42190  store float %tmp45, ptr %tmp43, align 4191  br label %bb46192 193bb46:                                             ; preds = %bb2194  %tmp47 = add nuw nsw i64 %i.0, 1195  br label %bb1196 197bb48:                                             ; preds = %bb1198  ret void199}200