| digraph "Scop Graph for 'print_array' function" { |
| label="Scop Graph for 'print_array' function"; |
| |
| Node0x5b5ee00 [shape=record,label="{entry:\l br label %entry.split\l}"]; |
| Node0x5b5ee00 -> Node0x5b5ee50; |
| Node0x5b5ee50 [shape=record,label="{entry.split: \l br label %for.cond1.preheader\l}"]; |
| Node0x5b5ee50 -> Node0x5b5ee70; |
| Node0x5b5ee70 [shape=record,label="{for.cond1.preheader: \l %indvars.iv6 = phi i64 [ 0, %entry.split ], [ %indvars.iv.next7, %for.end ]\l %0 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8\l br label %for.body3\l}"]; |
| Node0x5b5ee70 -> Node0x5b5ee20; |
| Node0x5b5ee20 [shape=record,label="{for.body3: \l %indvars.iv = phi i64 [ 0, %for.cond1.preheader ], [ %indvars.iv.next,\l... %for.inc ]\l %1 = phi %struct._IO_FILE* [ %0, %for.cond1.preheader ], [ %5, %for.inc ]\l %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x\l... float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv\l %2 = load float, float* %arrayidx5, align 4\l %conv = fpext float %2 to double\l %call = tail call i32 (%struct._IO_FILE*, i8*, ...)\l... @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x\l... i8]* @.str, i64 0, i64 0), double %conv) #2\l %3 = trunc i64 %indvars.iv to i32\l %rem = srem i32 %3, 80\l %cmp6 = icmp eq i32 %rem, 79\l br i1 %cmp6, label %if.then, label %for.inc\l}"]; |
| Node0x5b5ee20 -> Node0x5b60d10; |
| Node0x5b5ee20 -> Node0x5b60d70; |
| Node0x5b60d10 [shape=record,label="{if.then: \l %4 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8\l %fputc3 = tail call i32 @fputc(i32 10, %struct._IO_FILE* %4)\l br label %for.inc\l}"]; |
| Node0x5b60d10 -> Node0x5b60d70; |
| Node0x5b60d70 [shape=record,label="{for.inc: \l %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1\l %5 = load %struct._IO_FILE*, %struct._IO_FILE** @stdout, align 8\l %exitcond = icmp ne i64 %indvars.iv.next, 1536\l br i1 %exitcond, label %for.body3, label %for.end\l}"]; |
| Node0x5b60d70 -> Node0x5b5ee20[constraint=false]; |
| Node0x5b60d70 -> Node0x5b60e10; |
| Node0x5b60e10 [shape=record,label="{for.end: \l %.lcssa = phi %struct._IO_FILE* [ %5, %for.inc ]\l %fputc = tail call i32 @fputc(i32 10, %struct._IO_FILE* %.lcssa)\l %indvars.iv.next7 = add nuw nsw i64 %indvars.iv6, 1\l %exitcond8 = icmp ne i64 %indvars.iv.next7, 1536\l br i1 %exitcond8, label %for.cond1.preheader, label %for.end12\l}"]; |
| Node0x5b60e10 -> Node0x5b5ee70[constraint=false]; |
| Node0x5b60e10 -> Node0x5b60e70; |
| Node0x5b60e70 [shape=record,label="{for.end12: \l ret void\l}"]; |
| colorscheme = "paired12" |
| subgraph cluster_0x5b349a0 { |
| label = ""; |
| style = solid; |
| color = 1 |
| subgraph cluster_0x5b5c2c0 { |
| label = "Call instruction: %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #2"; |
| style = solid; |
| color = 6 |
| subgraph cluster_0x5b5c240 { |
| label = "Call instruction: %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #2"; |
| style = solid; |
| color = 5 |
| subgraph cluster_0x5b34a20 { |
| label = "Region can not profitably be optimized!"; |
| style = solid; |
| color = 7 |
| Node0x5b5ee20; |
| Node0x5b60d10; |
| } |
| Node0x5b60d70; |
| } |
| Node0x5b5ee70; |
| Node0x5b60e10; |
| } |
| Node0x5b5ee00; |
| Node0x5b5ee50; |
| Node0x5b60e70; |
| } |
| } |