llvm-project/polly/www/experiments/matmul/scops.print_array.dot

61 lines
4.0 KiB
Plaintext

digraph "Scop Graph for 'print_array' function" {
label="Scop Graph for 'print_array' function";
Node0x17d2200 [shape=record,label="{entry:\l br label %for.cond\l}"];
Node0x17d2200 -> Node0x17d4f20;
Node0x17d4f20 [shape=record,label="{for.cond: \l %indvar1 = phi i64 [ %indvar.next2, %for.inc10 ], [ 0, %entry ]\l %exitcond3 = icmp ne i64 %indvar1, 1536\l br i1 %exitcond3, label %for.body, label %for.end12\l}"];
Node0x17d4f20 -> Node0x17d3680;
Node0x17d4f20 -> Node0x17d9fc0;
Node0x17d3680 [shape=record,label="{for.body: \l br label %for.cond1\l}"];
Node0x17d3680 -> Node0x17da220;
Node0x17da220 [shape=record,label="{for.cond1: \l %indvar = phi i64 [ %indvar.next, %for.inc ], [ 0, %for.body ]\l %arrayidx5 = getelementptr [1536 x [1536 x float]]* @C, i64 0, i64 %indvar1, i64 %indvar\l %j.0 = trunc i64 %indvar to i32\l %exitcond = icmp ne i64 %indvar, 1536\l br i1 %exitcond, label %for.body3, label %for.end\l}"];
Node0x17da220 -> Node0x17d9ea0;
Node0x17da220 -> Node0x17da0f0;
Node0x17d9ea0 [shape=record,label="{for.body3: \l %0 = load %struct._IO_FILE** @stdout, align 8\l %1 = load float* %arrayidx5, align 4\l %conv = fpext float %1 to double\l %call = call i32 (%struct._IO_FILE*, i8*, ...)* @fprintf(%struct._IO_FILE* %0, i8* getelementptr inbounds ([5 x i8]* @.str, i32 0, i32 0), double %conv)\l %rem = srem i32 %j.0, 80\l %cmp6 = icmp eq i32 %rem, 79\l br i1 %cmp6, label %if.then, label %if.end\l}"];
Node0x17d9ea0 -> Node0x17d9ec0;
Node0x17d9ea0 -> Node0x17da060;
Node0x17d9ec0 [shape=record,label="{if.then: \l %2 = load %struct._IO_FILE** @stdout, align 8\l %call8 = call i32 (%struct._IO_FILE*, i8*, ...)* @fprintf(%struct._IO_FILE* %2, i8* getelementptr inbounds ([2 x i8]* @.str1, i32 0, i32 0))\l br label %if.end\l}"];
Node0x17d9ec0 -> Node0x17da060;
Node0x17da060 [shape=record,label="{if.end: \l br label %for.inc\l}"];
Node0x17da060 -> Node0x17da200;
Node0x17da200 [shape=record,label="{for.inc: \l %indvar.next = add i64 %indvar, 1\l br label %for.cond1\l}"];
Node0x17da200 -> Node0x17da220[constraint=false];
Node0x17da0f0 [shape=record,label="{for.end: \l %3 = load %struct._IO_FILE** @stdout, align 8\l %call9 = call i32 (%struct._IO_FILE*, i8*, ...)* @fprintf(%struct._IO_FILE* %3, i8* getelementptr inbounds ([2 x i8]* @.str1, i32 0, i32 0))\l br label %for.inc10\l}"];
Node0x17da0f0 -> Node0x17da080;
Node0x17da080 [shape=record,label="{for.inc10: \l %indvar.next2 = add i64 %indvar1, 1\l br label %for.cond\l}"];
Node0x17da080 -> Node0x17d4f20[constraint=false];
Node0x17d9fc0 [shape=record,label="{for.end12: \l ret void\l}"];
colorscheme = "paired12"
subgraph cluster_0x17d38f0 {
label = "";
style = solid;
color = 1
subgraph cluster_0x17d4030 {
label = "Non affine branch in BB 'for.body3' with LHS: %rem and RHS: 79";
style = solid;
color = 6
subgraph cluster_0x17d3fb0 {
label = "Non affine branch in BB 'for.body3' with LHS: %rem and RHS: 79";
style = solid;
color = 5
subgraph cluster_0x17d3f30 {
label = "Non affine branch in BB 'for.body3' with LHS: %rem and RHS: 79";
style = solid;
color = 7
Node0x17d9ea0;
Node0x17d9ec0;
}
Node0x17da220;
Node0x17da060;
Node0x17da200;
}
Node0x17d4f20;
Node0x17d3680;
Node0x17da0f0;
Node0x17da080;
}
Node0x17d2200;
Node0x17d9fc0;
}
}