Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36fa5a42 authored by Jason Sams's avatar Jason Sams
Browse files

Fix aprox fs function names

bug b206696

Change-Id: I64c092c1f6b8d990783bf5d31db37e12a4dbdb82
parent d053554f
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -383,13 +383,12 @@ static void bench_fp_math() {
}

static void bench_approx_math() {
    BENCH_FN_FUNC_FN(approx_recip);
    BENCH_FN_FUNC_FN(approx_sqrt);
    BENCH_FN_FUNC_FN(approx_rsqrt);
    BENCH_FN_FUNC_FN(approx_length);
    BENCH_FN_FUNC_FN_FN(approx_distance);
    BENCH_FN_FUNC_FN(approx_normalize);
    BENCH_FN_FUNC_FN(approx_atan);
    BENCH_FN_FUNC_FN(half_recip);
    BENCH_FN_FUNC_FN(half_sqrt);
    BENCH_FN_FUNC_FN(half_rsqrt);
    BENCH_FN_FUNC_FN(fast_length);
    BENCH_FN_FUNC_FN_FN(fast_distance);
    BENCH_FN_FUNC_FN(fast_normalize);
}

void bench() {
+2 −2
Original line number Diff line number Diff line
@@ -48,8 +48,8 @@ void root(uchar4 *out, uint32_t x, uint32_t y) {
    const float2 coord = mad(inCoord, inv_dimensions, neg_center);
    const float2 scaledCoord = axis_scale * coord;
    const float dist2 = scaledCoord.x*scaledCoord.x + scaledCoord.y*scaledCoord.y;
    const float inv_dist = approx_rsqrt(dist2);
    const float radian = M_PI_2 - approx_atan((alpha * approx_sqrt(radius2 - dist2)) * inv_dist);
    const float inv_dist = half_rsqrt(dist2);
    const float radian = M_PI_2 - atan((alpha * half_sqrt(radius2 - dist2)) * inv_dist);
    const float scalar = radian * factor * inv_dist;
    const float2 new_coord = mad(coord, scalar, center);
    const float4 fout = rsSample(in_alloc, sampler, new_coord);
+3 −3
Original line number Diff line number Diff line
@@ -49,9 +49,9 @@ void root(const uchar4 *in, uchar4 *out, uint32_t x, uint32_t y) {
    const float4 fin = convert_float4(*in);
    const float2 inCoord = {(float)x, (float)y};
    const float2 coord = mad(inCoord, inv_dimensions, neg_center);
    const float sloped_dist_ratio = approx_length(axis_scale * coord)  * sloped_inv_max_dist;
    // TODO:  add approx_exp once implemented
    const float lumen = opp_shade + shade * approx_recip(1.f + sloped_neg_range * exp(sloped_dist_ratio));
    const float sloped_dist_ratio = fast_length(axis_scale * coord)  * sloped_inv_max_dist;
    // TODO:  add half_exp once implemented
    const float lumen = opp_shade + shade * half_recip(1.f + sloped_neg_range * exp(sloped_dist_ratio));
    float4 fout;
    fout.rgb = fin.rgb * lumen;
    fout.w = fin.w;