1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=powerpc-apple-darwin 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker %struct.CGLDI = type { %struct.cgli*, i32, i32, i32, i32, i32, i8*, i32, void (%struct.CGLSI*, i32, %struct.CGLDI*)*, i8*, %struct.vv_t } 4*9880d681SAndroid Build Coastguard Worker %struct.cgli = type { i32, %struct.cgli*, void (%struct.cgli*, i8*, i8*, i32, i32, i32, i32, i32, i32, i32, i32)*, i32, i8*, i8*, i8*, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, float, i8*, i32*, %struct._cgro*, %struct._cgro*, float, float, float, float, i32, i8*, float, i8*, [16 x i32] } 5*9880d681SAndroid Build Coastguard Worker %struct.CGLSI = type { %struct.cgli*, i32, i8*, i8*, i32, i32, i8*, void (%struct.cgli*, i8*, i8*, i32, i32, i32, i32, i32, i32, i32, i32)*, %struct.vv_t, %struct.vv_t, %struct.xx_t* } 6*9880d681SAndroid Build Coastguard Worker %struct._cgro = type opaque 7*9880d681SAndroid Build Coastguard Worker %struct.xx_t = type { [3 x %struct.vv_t], [2 x %struct.vv_t], [2 x [3 x i8*]] } 8*9880d681SAndroid Build Coastguard Worker %struct.vv_t = type { <16 x i8> } 9*9880d681SAndroid Build Coastguard Worker@llvm.used = appending global [1 x i8*] [ i8* bitcast (void (%struct.CGLSI*, i32, %struct.CGLDI*)* @lb to i8*) ], section "llvm.metadata" ; <[1 x i8*]*> [#uses=0] 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workerdefine void @lb(%struct.CGLSI* %src, i32 %n, %struct.CGLDI* %dst) nounwind { 12*9880d681SAndroid Build Coastguard Workerentry: 13*9880d681SAndroid Build Coastguard Worker %0 = load i32, i32* null, align 4 ; <i32> [#uses=1] 14*9880d681SAndroid Build Coastguard Worker %1 = icmp sgt i32 %0, 0 ; <i1> [#uses=1] 15*9880d681SAndroid Build Coastguard Worker br i1 %1, label %bb.nph4945, label %return 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Workerbb.nph4945: ; preds = %entry 18*9880d681SAndroid Build Coastguard Worker %2 = bitcast [2 x %struct.vv_t]* null to i64* ; <i64*> [#uses=6] 19*9880d681SAndroid Build Coastguard Worker %3 = getelementptr [2 x i64], [2 x i64]* null, i32 0, i32 1 ; <i64*> [#uses=6] 20*9880d681SAndroid Build Coastguard Worker %4 = bitcast %struct.vv_t* null to i64* ; <i64*> [#uses=5] 21*9880d681SAndroid Build Coastguard Worker %5 = getelementptr [2 x i64], [2 x i64]* null, i32 0, i32 1 ; <i64*> [#uses=3] 22*9880d681SAndroid Build Coastguard Worker br label %bb2326 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerbb2217: ; preds = %bb2326 25*9880d681SAndroid Build Coastguard Worker %6 = or i64 0, 0 ; <i64> [#uses=2] 26*9880d681SAndroid Build Coastguard Worker %7 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 27*9880d681SAndroid Build Coastguard Worker %8 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 28*9880d681SAndroid Build Coastguard Worker %9 = getelementptr float, float* null, i32 2 ; <float*> [#uses=1] 29*9880d681SAndroid Build Coastguard Worker %10 = load float, float* %9, align 4 ; <float> [#uses=1] 30*9880d681SAndroid Build Coastguard Worker %11 = getelementptr float, float* null, i32 3 ; <float*> [#uses=1] 31*9880d681SAndroid Build Coastguard Worker %12 = load float, float* %11, align 4 ; <float> [#uses=1] 32*9880d681SAndroid Build Coastguard Worker %13 = fmul float %10, 6.553500e+04 ; <float> [#uses=1] 33*9880d681SAndroid Build Coastguard Worker %14 = fadd float %13, 5.000000e-01 ; <float> [#uses=1] 34*9880d681SAndroid Build Coastguard Worker %15 = fmul float %12, 6.553500e+04 ; <float> [#uses=1] 35*9880d681SAndroid Build Coastguard Worker %16 = fadd float %15, 5.000000e-01 ; <float> [#uses=3] 36*9880d681SAndroid Build Coastguard Worker %17 = fcmp olt float %14, 0.000000e+00 ; <i1> [#uses=0] 37*9880d681SAndroid Build Coastguard Worker %18 = fcmp olt float %16, 0.000000e+00 ; <i1> [#uses=1] 38*9880d681SAndroid Build Coastguard Worker br i1 %18, label %bb2265, label %bb2262 39*9880d681SAndroid Build Coastguard Worker 40*9880d681SAndroid Build Coastguard Workerbb2262: ; preds = %bb2217 41*9880d681SAndroid Build Coastguard Worker %19 = fcmp ogt float %16, 6.553500e+04 ; <i1> [#uses=1] 42*9880d681SAndroid Build Coastguard Worker br i1 %19, label %bb2264, label %bb2265 43*9880d681SAndroid Build Coastguard Worker 44*9880d681SAndroid Build Coastguard Workerbb2264: ; preds = %bb2262 45*9880d681SAndroid Build Coastguard Worker br label %bb2265 46*9880d681SAndroid Build Coastguard Worker 47*9880d681SAndroid Build Coastguard Workerbb2265: ; preds = %bb2264, %bb2262, %bb2217 48*9880d681SAndroid Build Coastguard Worker %f3596.0 = phi float [ 6.553500e+04, %bb2264 ], [ 0.000000e+00, %bb2217 ], [ %16, %bb2262 ] ; <float> [#uses=1] 49*9880d681SAndroid Build Coastguard Worker %20 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 50*9880d681SAndroid Build Coastguard Worker %21 = fptosi float %f3596.0 to i32 ; <i32> [#uses=1] 51*9880d681SAndroid Build Coastguard Worker %22 = zext i32 %7 to i64 ; <i64> [#uses=1] 52*9880d681SAndroid Build Coastguard Worker %23 = shl i64 %22, 48 ; <i64> [#uses=1] 53*9880d681SAndroid Build Coastguard Worker %24 = zext i32 %8 to i64 ; <i64> [#uses=1] 54*9880d681SAndroid Build Coastguard Worker %25 = shl i64 %24, 32 ; <i64> [#uses=1] 55*9880d681SAndroid Build Coastguard Worker %26 = sext i32 %20 to i64 ; <i64> [#uses=1] 56*9880d681SAndroid Build Coastguard Worker %27 = shl i64 %26, 16 ; <i64> [#uses=1] 57*9880d681SAndroid Build Coastguard Worker %28 = sext i32 %21 to i64 ; <i64> [#uses=1] 58*9880d681SAndroid Build Coastguard Worker %29 = or i64 %25, %23 ; <i64> [#uses=1] 59*9880d681SAndroid Build Coastguard Worker %30 = or i64 %29, %27 ; <i64> [#uses=1] 60*9880d681SAndroid Build Coastguard Worker %31 = or i64 %30, %28 ; <i64> [#uses=2] 61*9880d681SAndroid Build Coastguard Worker %32 = shl i64 %6, 48 ; <i64> [#uses=1] 62*9880d681SAndroid Build Coastguard Worker %33 = shl i64 %31, 32 ; <i64> [#uses=1] 63*9880d681SAndroid Build Coastguard Worker %34 = and i64 %33, 281470681743360 ; <i64> [#uses=1] 64*9880d681SAndroid Build Coastguard Worker store i64 %6, i64* %2, align 16 65*9880d681SAndroid Build Coastguard Worker store i64 %31, i64* %3, align 8 66*9880d681SAndroid Build Coastguard Worker %35 = getelementptr i8, i8* null, i32 0 ; <i8*> [#uses=1] 67*9880d681SAndroid Build Coastguard Worker %36 = bitcast i8* %35 to float* ; <float*> [#uses=4] 68*9880d681SAndroid Build Coastguard Worker %37 = load float, float* %36, align 4 ; <float> [#uses=1] 69*9880d681SAndroid Build Coastguard Worker %38 = getelementptr float, float* %36, i32 1 ; <float*> [#uses=1] 70*9880d681SAndroid Build Coastguard Worker %39 = load float, float* %38, align 4 ; <float> [#uses=1] 71*9880d681SAndroid Build Coastguard Worker %40 = fmul float %37, 6.553500e+04 ; <float> [#uses=1] 72*9880d681SAndroid Build Coastguard Worker %41 = fadd float %40, 5.000000e-01 ; <float> [#uses=1] 73*9880d681SAndroid Build Coastguard Worker %42 = fmul float %39, 6.553500e+04 ; <float> [#uses=1] 74*9880d681SAndroid Build Coastguard Worker %43 = fadd float %42, 5.000000e-01 ; <float> [#uses=3] 75*9880d681SAndroid Build Coastguard Worker %44 = fcmp olt float %41, 0.000000e+00 ; <i1> [#uses=0] 76*9880d681SAndroid Build Coastguard Worker %45 = fcmp olt float %43, 0.000000e+00 ; <i1> [#uses=1] 77*9880d681SAndroid Build Coastguard Worker br i1 %45, label %bb2277, label %bb2274 78*9880d681SAndroid Build Coastguard Worker 79*9880d681SAndroid Build Coastguard Workerbb2274: ; preds = %bb2265 80*9880d681SAndroid Build Coastguard Worker %46 = fcmp ogt float %43, 6.553500e+04 ; <i1> [#uses=0] 81*9880d681SAndroid Build Coastguard Worker br label %bb2277 82*9880d681SAndroid Build Coastguard Worker 83*9880d681SAndroid Build Coastguard Workerbb2277: ; preds = %bb2274, %bb2265 84*9880d681SAndroid Build Coastguard Worker %f1582.0 = phi float [ 0.000000e+00, %bb2265 ], [ %43, %bb2274 ] ; <float> [#uses=1] 85*9880d681SAndroid Build Coastguard Worker %47 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 86*9880d681SAndroid Build Coastguard Worker %48 = fptosi float %f1582.0 to i32 ; <i32> [#uses=1] 87*9880d681SAndroid Build Coastguard Worker %49 = getelementptr float, float* %36, i32 2 ; <float*> [#uses=1] 88*9880d681SAndroid Build Coastguard Worker %50 = load float, float* %49, align 4 ; <float> [#uses=1] 89*9880d681SAndroid Build Coastguard Worker %51 = getelementptr float, float* %36, i32 3 ; <float*> [#uses=1] 90*9880d681SAndroid Build Coastguard Worker %52 = load float, float* %51, align 4 ; <float> [#uses=1] 91*9880d681SAndroid Build Coastguard Worker %53 = fmul float %50, 6.553500e+04 ; <float> [#uses=1] 92*9880d681SAndroid Build Coastguard Worker %54 = fadd float %53, 5.000000e-01 ; <float> [#uses=1] 93*9880d681SAndroid Build Coastguard Worker %55 = fmul float %52, 6.553500e+04 ; <float> [#uses=1] 94*9880d681SAndroid Build Coastguard Worker %56 = fadd float %55, 5.000000e-01 ; <float> [#uses=1] 95*9880d681SAndroid Build Coastguard Worker %57 = fcmp olt float %54, 0.000000e+00 ; <i1> [#uses=0] 96*9880d681SAndroid Build Coastguard Worker %58 = fcmp olt float %56, 0.000000e+00 ; <i1> [#uses=0] 97*9880d681SAndroid Build Coastguard Worker %59 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 98*9880d681SAndroid Build Coastguard Worker %60 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 99*9880d681SAndroid Build Coastguard Worker %61 = zext i32 %47 to i64 ; <i64> [#uses=1] 100*9880d681SAndroid Build Coastguard Worker %62 = shl i64 %61, 48 ; <i64> [#uses=1] 101*9880d681SAndroid Build Coastguard Worker %63 = zext i32 %48 to i64 ; <i64> [#uses=1] 102*9880d681SAndroid Build Coastguard Worker %64 = shl i64 %63, 32 ; <i64> [#uses=1] 103*9880d681SAndroid Build Coastguard Worker %65 = sext i32 %59 to i64 ; <i64> [#uses=1] 104*9880d681SAndroid Build Coastguard Worker %66 = shl i64 %65, 16 ; <i64> [#uses=1] 105*9880d681SAndroid Build Coastguard Worker %67 = sext i32 %60 to i64 ; <i64> [#uses=1] 106*9880d681SAndroid Build Coastguard Worker %68 = or i64 %64, %62 ; <i64> [#uses=1] 107*9880d681SAndroid Build Coastguard Worker %69 = or i64 %68, %66 ; <i64> [#uses=1] 108*9880d681SAndroid Build Coastguard Worker %70 = or i64 %69, %67 ; <i64> [#uses=2] 109*9880d681SAndroid Build Coastguard Worker %71 = getelementptr i8, i8* null, i32 0 ; <i8*> [#uses=1] 110*9880d681SAndroid Build Coastguard Worker %72 = bitcast i8* %71 to float* ; <float*> [#uses=4] 111*9880d681SAndroid Build Coastguard Worker %73 = load float, float* %72, align 4 ; <float> [#uses=1] 112*9880d681SAndroid Build Coastguard Worker %74 = getelementptr float, float* %72, i32 1 ; <float*> [#uses=1] 113*9880d681SAndroid Build Coastguard Worker %75 = load float, float* %74, align 4 ; <float> [#uses=1] 114*9880d681SAndroid Build Coastguard Worker %76 = fmul float %73, 6.553500e+04 ; <float> [#uses=1] 115*9880d681SAndroid Build Coastguard Worker %77 = fadd float %76, 5.000000e-01 ; <float> [#uses=3] 116*9880d681SAndroid Build Coastguard Worker %78 = fmul float %75, 6.553500e+04 ; <float> [#uses=1] 117*9880d681SAndroid Build Coastguard Worker %79 = fadd float %78, 5.000000e-01 ; <float> [#uses=1] 118*9880d681SAndroid Build Coastguard Worker %80 = fcmp olt float %77, 0.000000e+00 ; <i1> [#uses=1] 119*9880d681SAndroid Build Coastguard Worker br i1 %80, label %bb2295, label %bb2292 120*9880d681SAndroid Build Coastguard Worker 121*9880d681SAndroid Build Coastguard Workerbb2292: ; preds = %bb2277 122*9880d681SAndroid Build Coastguard Worker %81 = fcmp ogt float %77, 6.553500e+04 ; <i1> [#uses=1] 123*9880d681SAndroid Build Coastguard Worker br i1 %81, label %bb2294, label %bb2295 124*9880d681SAndroid Build Coastguard Worker 125*9880d681SAndroid Build Coastguard Workerbb2294: ; preds = %bb2292 126*9880d681SAndroid Build Coastguard Worker br label %bb2295 127*9880d681SAndroid Build Coastguard Worker 128*9880d681SAndroid Build Coastguard Workerbb2295: ; preds = %bb2294, %bb2292, %bb2277 129*9880d681SAndroid Build Coastguard Worker %f0569.0 = phi float [ 6.553500e+04, %bb2294 ], [ 0.000000e+00, %bb2277 ], [ %77, %bb2292 ] ; <float> [#uses=1] 130*9880d681SAndroid Build Coastguard Worker %82 = fcmp olt float %79, 0.000000e+00 ; <i1> [#uses=0] 131*9880d681SAndroid Build Coastguard Worker %83 = fptosi float %f0569.0 to i32 ; <i32> [#uses=1] 132*9880d681SAndroid Build Coastguard Worker %84 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 133*9880d681SAndroid Build Coastguard Worker %85 = getelementptr float, float* %72, i32 2 ; <float*> [#uses=1] 134*9880d681SAndroid Build Coastguard Worker %86 = load float, float* %85, align 4 ; <float> [#uses=1] 135*9880d681SAndroid Build Coastguard Worker %87 = getelementptr float, float* %72, i32 3 ; <float*> [#uses=1] 136*9880d681SAndroid Build Coastguard Worker %88 = load float, float* %87, align 4 ; <float> [#uses=1] 137*9880d681SAndroid Build Coastguard Worker %89 = fmul float %86, 6.553500e+04 ; <float> [#uses=1] 138*9880d681SAndroid Build Coastguard Worker %90 = fadd float %89, 5.000000e-01 ; <float> [#uses=1] 139*9880d681SAndroid Build Coastguard Worker %91 = fmul float %88, 6.553500e+04 ; <float> [#uses=1] 140*9880d681SAndroid Build Coastguard Worker %92 = fadd float %91, 5.000000e-01 ; <float> [#uses=1] 141*9880d681SAndroid Build Coastguard Worker %93 = fcmp olt float %90, 0.000000e+00 ; <i1> [#uses=0] 142*9880d681SAndroid Build Coastguard Worker %94 = fcmp olt float %92, 0.000000e+00 ; <i1> [#uses=0] 143*9880d681SAndroid Build Coastguard Worker %95 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 144*9880d681SAndroid Build Coastguard Worker %96 = fptosi float 0.000000e+00 to i32 ; <i32> [#uses=1] 145*9880d681SAndroid Build Coastguard Worker %97 = zext i32 %83 to i64 ; <i64> [#uses=1] 146*9880d681SAndroid Build Coastguard Worker %98 = shl i64 %97, 48 ; <i64> [#uses=1] 147*9880d681SAndroid Build Coastguard Worker %99 = zext i32 %84 to i64 ; <i64> [#uses=1] 148*9880d681SAndroid Build Coastguard Worker %100 = shl i64 %99, 32 ; <i64> [#uses=1] 149*9880d681SAndroid Build Coastguard Worker %101 = sext i32 %95 to i64 ; <i64> [#uses=1] 150*9880d681SAndroid Build Coastguard Worker %102 = shl i64 %101, 16 ; <i64> [#uses=1] 151*9880d681SAndroid Build Coastguard Worker %103 = sext i32 %96 to i64 ; <i64> [#uses=1] 152*9880d681SAndroid Build Coastguard Worker %104 = or i64 %100, %98 ; <i64> [#uses=1] 153*9880d681SAndroid Build Coastguard Worker %105 = or i64 %104, %102 ; <i64> [#uses=1] 154*9880d681SAndroid Build Coastguard Worker %106 = or i64 %105, %103 ; <i64> [#uses=2] 155*9880d681SAndroid Build Coastguard Worker %107 = shl i64 %70, 16 ; <i64> [#uses=1] 156*9880d681SAndroid Build Coastguard Worker %108 = and i64 %107, 4294901760 ; <i64> [#uses=1] 157*9880d681SAndroid Build Coastguard Worker %109 = and i64 %106, 65535 ; <i64> [#uses=1] 158*9880d681SAndroid Build Coastguard Worker %110 = or i64 %34, %32 ; <i64> [#uses=1] 159*9880d681SAndroid Build Coastguard Worker %111 = or i64 %110, %108 ; <i64> [#uses=1] 160*9880d681SAndroid Build Coastguard Worker %112 = or i64 %111, %109 ; <i64> [#uses=1] 161*9880d681SAndroid Build Coastguard Worker store i64 %70, i64* %4, align 16 162*9880d681SAndroid Build Coastguard Worker store i64 %106, i64* %5, align 8 163*9880d681SAndroid Build Coastguard Worker %113 = icmp eq i64 %112, 0 ; <i1> [#uses=1] 164*9880d681SAndroid Build Coastguard Worker br i1 %113, label %bb2325, label %bb2315 165*9880d681SAndroid Build Coastguard Worker 166*9880d681SAndroid Build Coastguard Workerbb2315: ; preds = %bb2295 167*9880d681SAndroid Build Coastguard Worker %114 = icmp eq %struct.xx_t* %159, null ; <i1> [#uses=1] 168*9880d681SAndroid Build Coastguard Worker br i1 %114, label %bb2318, label %bb2317 169*9880d681SAndroid Build Coastguard Worker 170*9880d681SAndroid Build Coastguard Workerbb2317: ; preds = %bb2315 171*9880d681SAndroid Build Coastguard Worker %115 = load i64, i64* %2, align 16 ; <i64> [#uses=1] 172*9880d681SAndroid Build Coastguard Worker %116 = call i32 (...) @_u16a_cm( i64 %115, %struct.xx_t* %159, double 0.000000e+00, double 1.047551e+06 ) nounwind ; <i32> [#uses=1] 173*9880d681SAndroid Build Coastguard Worker %117 = sext i32 %116 to i64 ; <i64> [#uses=1] 174*9880d681SAndroid Build Coastguard Worker store i64 %117, i64* %2, align 16 175*9880d681SAndroid Build Coastguard Worker %118 = load i64, i64* %3, align 8 ; <i64> [#uses=1] 176*9880d681SAndroid Build Coastguard Worker %119 = call i32 (...) @_u16a_cm( i64 %118, %struct.xx_t* %159, double 0.000000e+00, double 1.047551e+06 ) nounwind ; <i32> [#uses=1] 177*9880d681SAndroid Build Coastguard Worker %120 = sext i32 %119 to i64 ; <i64> [#uses=1] 178*9880d681SAndroid Build Coastguard Worker store i64 %120, i64* %3, align 8 179*9880d681SAndroid Build Coastguard Worker %121 = load i64, i64* %4, align 16 ; <i64> [#uses=1] 180*9880d681SAndroid Build Coastguard Worker %122 = call i32 (...) @_u16a_cm( i64 %121, %struct.xx_t* %159, double 0.000000e+00, double 1.047551e+06 ) nounwind ; <i32> [#uses=1] 181*9880d681SAndroid Build Coastguard Worker %123 = sext i32 %122 to i64 ; <i64> [#uses=1] 182*9880d681SAndroid Build Coastguard Worker store i64 %123, i64* %4, align 16 183*9880d681SAndroid Build Coastguard Worker %124 = load i64, i64* %5, align 8 ; <i64> [#uses=1] 184*9880d681SAndroid Build Coastguard Worker %125 = call i32 (...) @_u16a_cm( i64 %124, %struct.xx_t* %159, double 0.000000e+00, double 1.047551e+06 ) nounwind ; <i32> [#uses=0] 185*9880d681SAndroid Build Coastguard Worker unreachable 186*9880d681SAndroid Build Coastguard Worker 187*9880d681SAndroid Build Coastguard Workerbb2318: ; preds = %bb2315 188*9880d681SAndroid Build Coastguard Worker %126 = getelementptr %struct.CGLSI, %struct.CGLSI* %src, i32 %indvar5021, i32 8 ; <%struct.vv_t*> [#uses=1] 189*9880d681SAndroid Build Coastguard Worker %127 = bitcast %struct.vv_t* %126 to i64* ; <i64*> [#uses=1] 190*9880d681SAndroid Build Coastguard Worker %128 = load i64, i64* %127, align 8 ; <i64> [#uses=1] 191*9880d681SAndroid Build Coastguard Worker %129 = trunc i64 %128 to i32 ; <i32> [#uses=4] 192*9880d681SAndroid Build Coastguard Worker %130 = load i64, i64* %2, align 16 ; <i64> [#uses=1] 193*9880d681SAndroid Build Coastguard Worker %131 = call i32 (...) @_u16_ff( i64 %130, i32 %129 ) nounwind ; <i32> [#uses=1] 194*9880d681SAndroid Build Coastguard Worker %132 = sext i32 %131 to i64 ; <i64> [#uses=1] 195*9880d681SAndroid Build Coastguard Worker store i64 %132, i64* %2, align 16 196*9880d681SAndroid Build Coastguard Worker %133 = load i64, i64* %3, align 8 ; <i64> [#uses=1] 197*9880d681SAndroid Build Coastguard Worker %134 = call i32 (...) @_u16_ff( i64 %133, i32 %129 ) nounwind ; <i32> [#uses=1] 198*9880d681SAndroid Build Coastguard Worker %135 = sext i32 %134 to i64 ; <i64> [#uses=1] 199*9880d681SAndroid Build Coastguard Worker store i64 %135, i64* %3, align 8 200*9880d681SAndroid Build Coastguard Worker %136 = load i64, i64* %4, align 16 ; <i64> [#uses=1] 201*9880d681SAndroid Build Coastguard Worker %137 = call i32 (...) @_u16_ff( i64 %136, i32 %129 ) nounwind ; <i32> [#uses=1] 202*9880d681SAndroid Build Coastguard Worker %138 = sext i32 %137 to i64 ; <i64> [#uses=1] 203*9880d681SAndroid Build Coastguard Worker store i64 %138, i64* %4, align 16 204*9880d681SAndroid Build Coastguard Worker %139 = load i64, i64* %5, align 8 ; <i64> [#uses=1] 205*9880d681SAndroid Build Coastguard Worker %140 = call i32 (...) @_u16_ff( i64 %139, i32 %129 ) nounwind ; <i32> [#uses=0] 206*9880d681SAndroid Build Coastguard Worker unreachable 207*9880d681SAndroid Build Coastguard Worker 208*9880d681SAndroid Build Coastguard Workerbb2319: ; preds = %bb2326 209*9880d681SAndroid Build Coastguard Worker %141 = getelementptr %struct.CGLSI, %struct.CGLSI* %src, i32 %indvar5021, i32 2 ; <i8**> [#uses=1] 210*9880d681SAndroid Build Coastguard Worker %142 = load i8*, i8** %141, align 4 ; <i8*> [#uses=4] 211*9880d681SAndroid Build Coastguard Worker %143 = getelementptr i8, i8* %142, i32 0 ; <i8*> [#uses=1] 212*9880d681SAndroid Build Coastguard Worker %144 = call i32 (...) @_u16_sf32( double 0.000000e+00, double 6.553500e+04, double 5.000000e-01, i8* %143 ) nounwind ; <i32> [#uses=1] 213*9880d681SAndroid Build Coastguard Worker %145 = sext i32 %144 to i64 ; <i64> [#uses=2] 214*9880d681SAndroid Build Coastguard Worker %146 = getelementptr i8, i8* %142, i32 0 ; <i8*> [#uses=1] 215*9880d681SAndroid Build Coastguard Worker %147 = call i32 (...) @_u16_sf32( double 0.000000e+00, double 6.553500e+04, double 5.000000e-01, i8* %146 ) nounwind ; <i32> [#uses=1] 216*9880d681SAndroid Build Coastguard Worker %148 = sext i32 %147 to i64 ; <i64> [#uses=2] 217*9880d681SAndroid Build Coastguard Worker %149 = shl i64 %145, 48 ; <i64> [#uses=0] 218*9880d681SAndroid Build Coastguard Worker %150 = shl i64 %148, 32 ; <i64> [#uses=1] 219*9880d681SAndroid Build Coastguard Worker %151 = and i64 %150, 281470681743360 ; <i64> [#uses=0] 220*9880d681SAndroid Build Coastguard Worker store i64 %145, i64* %2, align 16 221*9880d681SAndroid Build Coastguard Worker store i64 %148, i64* %3, align 8 222*9880d681SAndroid Build Coastguard Worker %152 = getelementptr i8, i8* %142, i32 0 ; <i8*> [#uses=1] 223*9880d681SAndroid Build Coastguard Worker %153 = call i32 (...) @_u16_sf32( double 0.000000e+00, double 6.553500e+04, double 5.000000e-01, i8* %152 ) nounwind ; <i32> [#uses=1] 224*9880d681SAndroid Build Coastguard Worker %154 = sext i32 %153 to i64 ; <i64> [#uses=0] 225*9880d681SAndroid Build Coastguard Worker %155 = getelementptr i8, i8* %142, i32 0 ; <i8*> [#uses=1] 226*9880d681SAndroid Build Coastguard Worker %156 = call i32 (...) @_u16_sf32( double 0.000000e+00, double 6.553500e+04, double 5.000000e-01, i8* %155 ) nounwind ; <i32> [#uses=0] 227*9880d681SAndroid Build Coastguard Worker unreachable 228*9880d681SAndroid Build Coastguard Worker 229*9880d681SAndroid Build Coastguard Workerbb2325: ; preds = %bb2326, %bb2295 230*9880d681SAndroid Build Coastguard Worker %indvar.next5145 = add i32 %indvar5021, 1 ; <i32> [#uses=1] 231*9880d681SAndroid Build Coastguard Worker br label %bb2326 232*9880d681SAndroid Build Coastguard Worker 233*9880d681SAndroid Build Coastguard Workerbb2326: ; preds = %bb2325, %bb.nph4945 234*9880d681SAndroid Build Coastguard Worker %indvar5021 = phi i32 [ 0, %bb.nph4945 ], [ %indvar.next5145, %bb2325 ] ; <i32> [#uses=6] 235*9880d681SAndroid Build Coastguard Worker %157 = icmp slt i32 %indvar5021, %n ; <i1> [#uses=0] 236*9880d681SAndroid Build Coastguard Worker %158 = getelementptr %struct.CGLSI, %struct.CGLSI* %src, i32 %indvar5021, i32 10 ; <%struct.xx_t**> [#uses=1] 237*9880d681SAndroid Build Coastguard Worker %159 = load %struct.xx_t*, %struct.xx_t** %158, align 4 ; <%struct.xx_t*> [#uses=5] 238*9880d681SAndroid Build Coastguard Worker %160 = getelementptr %struct.CGLSI, %struct.CGLSI* %src, i32 %indvar5021, i32 1 ; <i32*> [#uses=1] 239*9880d681SAndroid Build Coastguard Worker %161 = load i32, i32* %160, align 4 ; <i32> [#uses=1] 240*9880d681SAndroid Build Coastguard Worker %162 = and i32 %161, 255 ; <i32> [#uses=1] 241*9880d681SAndroid Build Coastguard Worker switch i32 %162, label %bb2325 [ 242*9880d681SAndroid Build Coastguard Worker i32 59, label %bb2217 243*9880d681SAndroid Build Coastguard Worker i32 60, label %bb2319 244*9880d681SAndroid Build Coastguard Worker ] 245*9880d681SAndroid Build Coastguard Worker 246*9880d681SAndroid Build Coastguard Workerreturn: ; preds = %entry 247*9880d681SAndroid Build Coastguard Worker ret void 248*9880d681SAndroid Build Coastguard Worker} 249*9880d681SAndroid Build Coastguard Worker 250*9880d681SAndroid Build Coastguard Workerdeclare i32 @_u16_ff(...) 251*9880d681SAndroid Build Coastguard Worker 252*9880d681SAndroid Build Coastguard Workerdeclare i32 @_u16a_cm(...) 253*9880d681SAndroid Build Coastguard Worker 254*9880d681SAndroid Build Coastguard Workerdeclare i32 @_u16_sf32(...) 255