; ModuleID = '/home/hakta/Documents/edge_detection/solution1/.autopilot/db/a.o.bc' target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" target triple = "x86_64-unknown-linux-gnu" %"class.hls::stream" = type { float } @.str = private unnamed_addr constant [1 x i8] zeroinitializer, align 1 ; [#uses=1 type=[1 x i8]*] @.str1 = private unnamed_addr constant [10 x i8] c"s_axilite\00", align 1 ; [#uses=1 type=[10 x i8]*] @.str2 = private unnamed_addr constant [17 x i8] c"multiply_and_add\00", align 1 ; [#uses=1 type=[17 x i8]*] @.str3 = private unnamed_addr constant [20 x i8] c"shift_and_fill_crop\00", align 1 ; [#uses=1 type=[20 x i8]*] @.str4 = private unnamed_addr constant [19 x i8] c"push_to_temp_array\00", align 1 ; [#uses=1 type=[19 x i8]*] @.str5 = private unnamed_addr constant [6 x i8] c"BLOCK\00", align 1 ; [#uses=1 type=[6 x i8]*] @.str6 = private unnamed_addr constant [16 x i8] c"init_temp_array\00", align 1 ; [#uses=1 type=[16 x i8]*] @.str7 = private unnamed_addr constant [9 x i8] c"COMPLETE\00", align 1 ; [#uses=1 type=[9 x i8]*] @.str8 = private unnamed_addr constant [10 x i8] c"init_crop\00", align 1 ; [#uses=1 type=[10 x i8]*] @.str9 = private unnamed_addr constant [20 x i8] c"iterate_over_pixels\00", align 1 ; [#uses=1 type=[20 x i8]*] ; [#uses=1] define internal float @_Z13compute_pixelPfS_(float* %A, float* %B) nounwind uwtable { %1 = alloca float*, align 8 ; [#uses=3 type=float**] %2 = alloca float*, align 8 ; [#uses=3 type=float**] %result = alloca float, align 4 ; [#uses=4 type=float*] %i = alloca i32, align 4 ; [#uses=6 type=i32*] store float* %A, float** %1, align 8 call void @llvm.dbg.declare(metadata !{float** %1}, metadata !118), !dbg !119 ; [debug line = 3:32] [debug variable = A] store float* %B, float** %2, align 8 call void @llvm.dbg.declare(metadata !{float** %2}, metadata !120), !dbg !121 ; [debug line = 3:47] [debug variable = B] %3 = load float** %1, align 8, !dbg !122 ; [#uses=1 type=float*] [debug line = 3:56] call void (...)* @_ssdm_SpecArrayDimSize(float* %3, i32 9) nounwind, !dbg !122 ; [debug line = 3:56] %4 = load float** %2, align 8, !dbg !124 ; [#uses=1 type=float*] [debug line = 3:86] call void (...)* @_ssdm_SpecArrayDimSize(float* %4, i32 9) nounwind, !dbg !124 ; [debug line = 3:86] call void (...)* @_ssdm_InlineSelf(i32 0, i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0)) nounwind, !dbg !125 ; [debug line = 4:1] call void (...)* @_ssdm_op_SpecInterface(i32 0, i8* getelementptr inbounds ([10 x i8]* @.str1, i32 0, i32 0), i32 0, i32 0, i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0), i32 0, i32 32, i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0), i32 0, i32 0, i32 0, i32 0, i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8]* @.str, i32 0, i32 0)) nounwind, !dbg !125 ; [debug line = 4:1] call void @llvm.dbg.declare(metadata !{float* %result}, metadata !126), !dbg !127 ; [debug line = 4:11] [debug variable = result] store float 0.000000e+00, float* %result, align 4, !dbg !128 ; [debug line = 4:21] br label %5, !dbg !128 ; [debug line = 4:21] ;