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;
        }
}
