<div dir="ltr"><div class="gmail_default" style="font-family:courier new,monospace;font-size:small"><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">Hi,</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">I am trying to merge  OpenMP
for loops. e.g.,</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>#pragma omp parallel</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>{</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        #pragma omp
for</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        for (int i=0;
i < 100; i++)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>               
printf("Before--> %d\n", g(i));</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        #pragma omp
for</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        for (int j=0;
j < 10; j++)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>               
printf("After-->%d\n", f(j));</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        #pragma omp
for</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        for (int i=0;
i < 10; i++)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>               
printf("Middle-->%d\n", g(i));</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        #pragma omp
for</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>        for (int i=0;
i < 10; i++)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>                printf("Last-->%d\n",
g(i));</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>}</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">The last three OpenMP <b>for loops</b> can be merged by wrapping them with
a single pair of “call void @__kmpc_for_static_init_4”  and  “call
void @__kmpc_for_static_fini” calls. This will also include some additional
cleaning for redundant store instructions for the registers which become redundant
by merging the loops.</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">The IR condition before merging</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>; Function Attrs: norecurse nounwind ssp uwtable</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>define internal void @.omp_outlined.(i32* noalias
%.global_tid., i32* noalias %.bound_tid.) #1 {</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>entry:</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.<a href="http://omp.lb">omp.lb</a> = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb6 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub7 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride8 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last9 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb30 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub31 = alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride32 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last33 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb55 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub56 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride57 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last58 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %0 = bitcast i32*
%.<a href="http://omp.lb">omp.lb</a> to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %0) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.<a href="http://omp.lb">omp.lb</a>, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %1 = bitcast i32*
%.omp.ub to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 99, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %2 = bitcast i32*
%.omp.stride to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %2) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %3 = bitcast i32*
%.omp.is_last to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %3) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %4 = load i32, i32*
%.global_tid., align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last, i32* nonnull %.<a href="http://omp.lb">omp.lb</a>, i32* nonnull %.omp.ub, i32*
nonnull %.omp.stride, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %5 = load i32, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %6 = icmp slt i32
%5, 99</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond = select i1
%6, i32 %5, i32 99</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond,
i32* %.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %7 = load i32, i32*
%.<a href="http://omp.lb">omp.lb</a>, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond:                               ; preds =
%omp.inner.for.body, %entry</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv.0 = phi i32
[ %7, %entry ], [ %add3, %omp.inner.for.body ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %8 = load i32, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp1 = icmp sgt i32
%.omp.iv.0, %8</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp1, label
%omp.loop.exit, label %omp.inner.for.body</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body:                               ; preds =
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call2 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([14 x
i8], [14 x i8]* @.str.1, i64 0, i64 0), i32 %.omp.iv.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add3 = add nsw i32
%.omp.iv.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit:                                    ; preds = %omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_fini(%struct.ident_t* nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %3) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %2) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %0) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %9 = bitcast i32*
%.omp.lb6 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %9) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %10 = bitcast i32*
%.omp.ub7 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %10) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 9, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %11 = bitcast i32*
%.omp.stride8 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %11) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride8, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %12 = bitcast i32*
%.omp.is_last9 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %12) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last9, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last9, i32* nonnull %.omp.lb6, i32* nonnull %.omp.ub7, i32*
nonnull %.omp.stride8, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %13 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %14 = icmp slt i32
%13, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond14 = select i1
%14, i32 %13, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond14,
i32* %.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %15 = load i32, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond15:                             ; preds =
%omp.inner.for.body18, %omp.loop.exit</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv4.0 = phi
i32 [ %15, %omp.loop.exit ], [ %add25, %omp.inner.for.body18 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %16 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp16 = icmp sgt
i32 %.omp.iv4.0, %16</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp16, label
%omp.loop.exit27, label %omp.inner.for.body18</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body18:                             ; preds =
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call22 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([12 x
i8], [12 x i8]* @.str.2, i64 0, i64 0), i32 %.omp.iv4.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add25 = add nsw i32
%.omp.iv4.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit27:                                  ; preds =
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void @__kmpc_for_static_fini(%struct.ident_t*
nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %12) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %11) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %10) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %9) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %17 = bitcast i32*
%.omp.lb30 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %17) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.lb30, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %18 = bitcast i32*
%.omp.ub31 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %18) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 9, i32*
%.omp.ub31, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %19 = bitcast i32*
%.omp.stride32 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %19) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride32, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %20 = bitcast i32*
%.omp.is_last33 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %20) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last33, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last33, i32* nonnull %.omp.lb30, i32* nonnull %.omp.ub31, i32*
nonnull %.omp.stride32, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %21 = load i32, i32*
%.omp.ub31, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %22 = icmp slt i32
%21, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond39 = select i1
%22, i32 %21, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond39,
i32* %.omp.ub31, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %23 = load i32, i32*
%.omp.lb30, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond40:                             ; preds =
%omp.inner.for.body43, %omp.loop.exit27</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv28.0 = phi
i32 [ %23, %omp.loop.exit27 ], [ %add50, %omp.inner.for.body43 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %24 = load i32, i32*
%.omp.ub31, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp41 = icmp sgt
i32 %.omp.iv28.0, %24</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp41, label
%omp.loop.exit52, label %omp.inner.for.body43</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body43:                             ; preds =
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call47 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([13 x
i8], [13 x i8]* @.str.3, i64 0, i64 0), i32 %.omp.iv28.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add50 = add nsw i32
%.omp.iv28.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit52:                                  ; preds =
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void @__kmpc_for_static_fini(%struct.ident_t*
nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %20) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %19) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %18) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void @llvm.lifetime.end.p0i8(i64
4, i8* nonnull %17) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %25 = bitcast i32*
%.omp.lb55 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %25) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.lb55, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %26 = bitcast i32*
%.omp.ub56 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %26) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 9, i32*
%.omp.ub56, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %27 = bitcast i32*
%.omp.stride57 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %27) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride57, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %28 = bitcast i32*
%.omp.is_last58 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.start.p0i8(i64 4, i8* nonnull %28) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last58, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last58, i32* nonnull %.omp.lb55, i32* nonnull %.omp.ub56, i32*
nonnull %.omp.stride57, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %29 = load i32, i32*
%.omp.ub56, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %30 = icmp slt i32
%29, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond64 = select i1
%30, i32 %29, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond64,
i32* %.omp.ub56, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %31 = load i32, i32*
%.omp.lb55, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond65:                             ; preds = %omp.inner.for.body68,
%omp.loop.exit52</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv53.0 = phi
i32 [ %31, %omp.loop.exit52 ], [ %add75, %omp.inner.for.body68 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %32 = load i32, i32*
%.omp.ub56, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp66 = icmp sgt
i32 %.omp.iv53.0, %32</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp66, label
%omp.loop.exit77, label %omp.inner.for.body68</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body68:                             ; preds =
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call72 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([11 x
i8], [11 x i8]* @.str.4, i64 0, i64 0), i32 %.omp.iv53.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add75 = add nsw i32
%.omp.iv53.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit77:                                  ; preds =
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_fini(%struct.ident_t* nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %28) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %27) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %26) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@llvm.lifetime.end.p0i8(i64 4, i8* nonnull %25) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  ret void</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>}</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> =================></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">After merging, I am getting</p><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">-----------------</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>; Function Attrs: norecurse nounwind ssp uwtable</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>define internal void @.omp_outlined.(i32* noalias
%.global_tid., i32* noalias %.bound_tid.) #1 {</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>entry:</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">  <i>%.<a href="http://omp.lb">omp.lb</a> = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb6 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub7 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride8 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last9 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb30 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub31 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride32 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last33 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.lb55 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.ub56 = alloca
i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.stride57 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.is_last58 =
alloca i32, align 4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %0 = bitcast i32*
%.<a href="http://omp.lb">omp.lb</a> to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.<a href="http://omp.lb">omp.lb</a>, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %1 = bitcast i32*
%.omp.ub to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 99, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %2 = bitcast i32*
%.omp.stride to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %3 = bitcast i32*
%.omp.is_last to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %4 = load i32, i32*
%.global_tid., align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last, i32* nonnull %.<a href="http://omp.lb">omp.lb</a>, i32* nonnull %.omp.ub, i32*
nonnull %.omp.stride, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %5 = load i32, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %6 = icmp slt i32
%5, 99</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond = select i1
%6, i32 %5, i32 99</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond,
i32* %.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %7 = load i32, i32*
%.<a href="http://omp.lb">omp.lb</a>, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond:                               ; preds =
%omp.inner.for.body, %entry</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv.0 = phi i32
[ %7, %entry ], [ %add3, %omp.inner.for.body ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %8 = load i32, i32*
%.omp.ub, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp1 = icmp sgt i32
%.omp.iv.0, %8</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp1, label
%omp.loop.exit, label %omp.inner.for.body</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body:                               ; preds =
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call2 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([14 x
i8], [14 x i8]* @.str.1, i64 0, i64 0), i32 %.omp.iv.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add3 = add nsw i32
%.omp.iv.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit:                                    ; preds =
%omp.inner.for.cond</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_fini(%struct.ident_t* nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %9 = bitcast i32*
%.omp.lb6 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %10 = bitcast i32*
%.omp.ub7 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 9, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %11 = bitcast i32*
%.omp.stride8 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 1, i32*
%.omp.stride8, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %12 = bitcast i32*
%.omp.is_last9 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 0, i32*
%.omp.is_last9, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_init_4(%struct.ident_t* nonnull @0, i32 %4, i32 34, i32*
nonnull %.omp.is_last9, i32* nonnull %.omp.lb6, i32* nonnull %.omp.ub7, i32*
nonnull %.omp.stride8, i32 1, i32 1) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %13 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %14 = icmp slt i32
%13, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond14 = select i1
%14, i32 %13, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  store i32 %cond14,
i32* %.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %15 = load i32, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond15:                             ; preds = %omp.inner.for.body18,
%omp.loop.exit</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv4.0 = phi
i32 [ %15, %omp.loop.exit ], [ %add25, %omp.inner.for.body18 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %16 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp16 = icmp sgt
i32 %.omp.iv4.0, %16</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp16, label
%omp.loop.exit27, label %omp.inner.for.body18</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body18:                             ; preds =
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call22 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([12 x
i8], [12 x i8]* @.str.2, i64 0, i64 0), i32 %.omp.iv4.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add25 = add nsw i32
%.omp.iv4.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit27:                                  ; preds =
%omp.inner.for.cond15</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %17 = bitcast i32*
%.omp.lb6 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %18 = bitcast i32*
%.omp.ub7 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %19 = bitcast i32*
%.omp.stride8 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %20 = bitcast i32*
%.omp.is_last9 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %21 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %22 = icmp slt i32
%21, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond39 = select i1
%22, i32 %21, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %23 = load i32, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond40:                             ; preds =
%omp.inner.for.body43, %omp.loop.exit27</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv28.0 = phi
i32 [ %23, %omp.loop.exit27 ], [ %add50, %omp.inner.for.body43 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %24 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp41 = icmp sgt
i32 %.omp.iv28.0, %24</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp41, label
%omp.loop.exit52, label %omp.inner.for.body43</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body43:                             ; preds = %omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call47 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([13 x
i8], [13 x i8]* @.str.3, i64 0, i64 0), i32 %.omp.iv28.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add50 = add nsw i32
%.omp.iv28.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit52:                                  ; preds =
%omp.inner.for.cond40</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %25 = bitcast i32*
%.omp.lb6 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %26 = bitcast i32*
%.omp.ub7 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %27 = bitcast i32*
%.omp.stride8 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %28 = bitcast i32*
%.omp.is_last9 to i8*</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %29 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %30 = icmp slt i32
%29, 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cond64 = select i1
%30, i32 %29, i32 9</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %31 = load i32, i32*
%.omp.lb6, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.cond65:                             ; preds =
%omp.inner.for.body68, %omp.loop.exit52</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %.omp.iv53.0 = phi
i32 [ %31, %omp.loop.exit52 ], [ %add75, %omp.inner.for.body68 ]</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %32 = load i32, i32*
%.omp.ub7, align 4, !tbaa !4</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %cmp66 = icmp sgt
i32 %.omp.iv53.0, %32</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br i1 %cmp66, label
%omp.loop.exit77, label %omp.inner.for.body68</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.inner.for.body68:                             ; preds =
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %call72 = call i32
(i8*, ...) @printf(i8* nonnull dereferenceable(1) getelementptr inbounds ([11 x
i8], [11 x i8]* @.str.4, i64 0, i64 0), i32 %.omp.iv53.0)</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  %add75 = add nsw i32
%.omp.iv53.0, 1</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  br label
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i> </i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>omp.loop.exit77:                                  ; preds =
%omp.inner.for.cond65</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_for_static_fini(%struct.ident_t* nonnull @0, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  call void
@__kmpc_barrier(%struct.ident_t* nonnull @1, i32 %4) #5</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>  ret void</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><i>}</i></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> ---------></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">I checked manually each instruction. It should run. However,
I am getting the following error when I tried to compile</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">clang -isysroot
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk -O3 -fopenmp test2.c</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">I getting the following error:</p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><b>Assertion failed: (!CheckingMode &&
"CallGraphSCCPass did not update the CallGraph correctly!"), function
RefreshCallGraph, file
/Users/abidmalik/Programming/LLVM_11/llvm-project/llvm/lib/Analysis/CallGraphSCCPass.cpp,
line 279.</b></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><b> </b></p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"> </p>

<p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">I had a patch under consideration (<a href="https://reviews.llvm.org/D90103/new/">https://reviews.llvm.org/D90103/new/</a>
) ( I am improving it)  which works fine
with the same example. I checked the out and it is the same as the one mentioned above. This
is the confusing part for me.</p><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"><br></p><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"></p><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif"></p><p></p><p class="MsoNormal" style="margin:0in 0in 0.0001pt;font-size:12pt;font-family:Calibri,sans-serif">( Apology for the long e-mail)</p></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr">Abid M. Malik<br>******************************************************<br><br></div></div></div>