select 32 apps/HelloAndroidGL/jni/halide_gl_filter.cpp select(c == 0, 32, select 33 apps/HelloAndroidGL/jni/halide_gl_filter.cpp select(c == 1, cos(pi * v), select 73 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp dR = select(dR > 0, dR*alpha, dR); select 85 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp new_state(x, y, c) = select(c == 0, R, select 105 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp new_state(clobber.x, clobber.y, c) = select(radius < 400.0f, select 197 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp Expr bgra = select(c == 0, cast<uint8_t>(B * 255), select 202 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp Expr rgba = select(c == 0, cast<uint8_t>(R * 255), select 207 apps/HelloiOS/HelloiOS/reaction_diffusion_2_generator.cpp render(x, y, c) = select(output_bgra == true, bgra, rgba); select 27 apps/bilateral_grid/bilateral_grid_generator.cpp histogram(x, y, zi, c) += select(c == 0, val, 1.0f); select 59 apps/camera_pipe/camera_pipe_generator.cpp out(x, y) = select((x%2)==0, a(x/2, y), b(x/2, y)); select 65 apps/camera_pipe/camera_pipe_generator.cpp out(x, y) = select((y%2)==0, a(x, y/2), b(x, y/2)); select 73 apps/camera_pipe/camera_pipe_generator.cpp deinterleaved(x, y, c) = select(c == 0, raw(2*x, 2*y), select 107 apps/camera_pipe/camera_pipe_generator.cpp g_r(x, y) = select(ghd_r < gvd_r, gh_r, gv_r); select 114 apps/camera_pipe/camera_pipe_generator.cpp g_b(x, y) = select(ghd_b < gvd_b, gh_b, gv_b); select 151 apps/camera_pipe/camera_pipe_generator.cpp r_b(x, y) = select(rpd_b < rnd_b, rp_b, rn_b); select 163 apps/camera_pipe/camera_pipe_generator.cpp b_r(x, y) = select(bpd_r < bnd_r, bp_r, bn_r); select 174 apps/camera_pipe/camera_pipe_generator.cpp output(x, y, c) = select(c == 0, r(x, y), select 234 apps/camera_pipe/camera_pipe_generator.cpp corrected(x, y, c) = select(c == 0, r, select 269 apps/camera_pipe/camera_pipe_generator.cpp Expr z = select(g > 0.5f, select 276 apps/camera_pipe/camera_pipe_generator.cpp curve(x) = select(x <= minRaw, 0, select(x > maxRaw, 255, val)); select 98 apps/fft/complex.h return ComplexExpr(Halide::select(c, re(t), re(f)), select 99 apps/fft/complex.h Halide::select(c, im(t), im(f))); select 104 apps/fft/complex.h return ComplexExpr(Halide::select(c1, re(t1), c2, re(t2), re(f)), select 105 apps/fft/complex.h Halide::select(c1, im(t1), c2, im(t2), im(f))); select 334 apps/fft/fft.cpp v(A({r, s, n0}, args)) = select(r > 0, likely(x_rs * W(r * (s % S))), x_rs * gain); select 739 apps/fft/fft.cpp select(n0 % (zip_width * 2) < zip_width, X, Y); select 745 apps/fft/fft.cpp select(n1 > 0, likely(unzipped(A({n0, n1}, args))), select 887 apps/fft/fft.cpp c_zipped(A({n0, n1}, args)) = select(n1 > 0, likely(c(A({n0, n1}, args))), X + j * Y); select 919 apps/fft/fft.cpp select(n1 <= 0, re(dft0(A({n0, 0}, args))), select 941 apps/fft/fft.cpp ComplexExpr X = select(n1 < N1 / 2, select 946 apps/fft/fft.cpp ComplexExpr Y = select(n1 < N1 / 2, select 969 apps/fft/fft.cpp select(n0 % (zip_width * 2) < zip_width, select 134 apps/fft/fft_generator.cpp output(x, y, c) = select(c == 0, select 27 apps/glsl/halide_ycc_glsl_generator.cpp out(x, y, c) = cast<uint8_t>(select(c == 0, Y(x,y), select 14 apps/opengl_demo/sample_filter.cpp filter(x, y, c) = select(c == 3, input(x,y,c), Halide::cast<uint8_t>(255.0f-input(x, y, c))); select 17 apps/resize/resize.cpp return select(xx <= 0.5f, 1.0f, 0.0f); select 22 apps/resize/resize.cpp return select(xx < 1.0f, 1.0f - xx, 0.0f); select 31 apps/resize/resize.cpp return select(xx < 1.0f, (a + 2.0f) * xx3 - (a + 3.0f) * xx2 + 1, select 32 apps/resize/resize.cpp select (xx < 2.0f, a * xx3 - 5 * a * xx2 + 8 * a * xx - 4.0f * a, select 42 apps/resize/resize.cpp value = select(x == 0.0f, 1.0f, value); // Take care of singularity at zero select 43 apps/resize/resize.cpp value = select(x > 3 || x < -3, 0.0f, value); // Clamp to zero out of bounds select 17 apps/wavelet/daubechies_x_generator.cpp out(x, y, c) = select(c == 0, select 17 apps/wavelet/haar_x_generator.cpp out(x, y, c) = select(c == 0, select 17 apps/wavelet/inverse_daubechies_x_generator.cpp out(x, y) = select(x%2 == 0, select 17 apps/wavelet/inverse_haar_x_generator.cpp out(x, y) = select(x%2 == 0, select 22 python_bindings/python/IROperator.cpp return h::select(condition, true_value, false_value); select 28 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 35 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 44 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 55 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 68 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 83 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 100 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 119 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 140 python_bindings/python/IROperator.cpp return h::select(c1, v1, select 266 src/AddImageChecks.cpp min_required = select(touched.used, min_required, actual_min); select 267 src/AddImageChecks.cpp extent_required = select(touched.used, extent_required, actual_extent); select 283 src/AddImageChecks.cpp max_required = select(touched.used, max_required, actual_max); select 175 src/AssociativeOpsTable.cpp {{max(x0, y0), select(y0 < x0, x1, y1)}, {tmin, zero}, true}, select 182 src/AssociativeOpsTable.cpp {{min(x0, y0), select(x0 < y0, x1, y1)}, {tmax, zero}, true}, select 228 src/AssociativeOpsTable.cpp {select(x0 > t.max() - y0, t.max(), y0), zero, true}, // Saturating add select 229 src/AssociativeOpsTable.cpp {select(x0 < -y0, y0, t.max()), zero, true}, // Saturating add select 246 src/AssociativeOpsTable.cpp {select(x0 > t.max() - y0, t.max(), y0), zero, true}, // Saturating add select 247 src/AssociativeOpsTable.cpp {select(x0 < -y0, y0, t.max()), zero, true}, // Saturating add select 262 src/AssociativeOpsTable.cpp {select(x0 > t.max() - y0, t.max(), y0), zero, true}, // Saturating add select 263 src/AssociativeOpsTable.cpp {select(x0 < -y0, y0, t.max()), zero, true}, // Saturating add select 554 src/Associativity.cpp check_associativity("f", {x_idx}, {select(f_call_0 > make_const(t, 255) - y, make_const(t, 255), y)}, select 556 src/Associativity.cpp AssociativePattern(select(x > make_const(t, 255) - y, make_const(t, 255), y), make_const(t, 0), true), select 563 src/Associativity.cpp check_associativity("f", {x_idx}, {select(f_call_0 >= -y, make_const(t, 255), y)}, select 565 src/Associativity.cpp AssociativePattern(select(x < -y, y, make_const(t, 255)), make_const(t, 0), true), select 712 src/Associativity.cpp check_associativity("f", {x}, {min(f_call_0, g_call_0), select(f_call_0 < g_call_0, f_call_1, rx)}, select 715 src/Associativity.cpp {min(xs[0], ys[0]), select(xs[0] < ys[0], xs[1], ys[1])}, select 748 src/Associativity.cpp select(f_xy_call_0 < g_xy_call_0, f_xy_call_2, rx), select 749 src/Associativity.cpp select(f_xy_call_0 < g_xy_call_0, f_xy_call_3, ry)}, select 752 src/Associativity.cpp {min(xs[0], ys[0]), ys[1] , select(xs[0] < ys[0], xs[2], ys[2]), select(xs[0] < ys[0], xs[3], ys[3])}, select 69 src/BoundaryConditions.cpp def.push_back(select(out_of_bounds, value[i], repeat_edge(source, bounds)(args)[i])); select 73 src/BoundaryConditions.cpp bounded(args) = select(out_of_bounds, value[0], repeat_edge(source, bounds)(args)); select 105 src/BoundaryConditions.cpp coord = select(arg_var < min || arg_var >= min + extent, coord, select 144 src/BoundaryConditions.cpp coord = select(coord >= extent, 2 * extent - 1 - coord, coord); // Range is -w+1, w select 147 src/BoundaryConditions.cpp coord = select(arg_var < min || arg_var >= min + extent, coord, select 192 src/BoundaryConditions.cpp coord = select(arg_var < min || arg_var >= min + extent, coord, select 330 src/Bounds.cpp interval = Interval(select(cmp, e1, e2), select(cmp, e2, e1)); select 384 src/Bounds.cpp interval = Interval(select(cmp, e1, e2), select(cmp, e2, e1)); select 534 src/Bounds.cpp interval.min = select(op->condition, a.min, b.min); select 542 src/Bounds.cpp interval.max = select(op->condition, a.max, b.max); select 839 src/Bounds.cpp a[i].min = select(a.used, a[i].min, b[i].min); select 841 src/Bounds.cpp a[i].min = select(a.used && b.used, Interval::make_min(a[i].min, b[i].min), select 846 src/Bounds.cpp a[i].min = select(a.used, Interval::make_min(a[i].min, b[i].min), b[i].min); select 848 src/Bounds.cpp a[i].min = select(b.used, Interval::make_min(a[i].min, b[i].min), a[i].min); select 861 src/Bounds.cpp a[i].max = select(a.used, a[i].max, b[i].max); select 863 src/Bounds.cpp a[i].max = select(a.used && b.used, Interval::make_max(a[i].max, b[i].max), select 868 src/Bounds.cpp a[i].max = select(a.used, Interval::make_max(a[i].max, b[i].max), b[i].max); select 870 src/Bounds.cpp a[i].max = select(b.used, Interval::make_max(a[i].max, b[i].max), a[i].max); select 1491 src/Bounds.cpp check(scope, x*y, select(y < 0, y*10, 0), select(y < 0, 0, y*10)); select 1504 src/Bounds.cpp check(scope, select(y == 5, 0, 3), select(y == 5, 0, 3), select(y == 5, 0, 3)); select 1505 src/Bounds.cpp check(scope, select(y == 5, x, -3*x + 8), select(y == 5, 0, -22), select(y == 5, 10, 8)); select 1506 src/Bounds.cpp check(scope, select(y == x, x, -3*x + 8), -22, 10); select 449 src/CSE.cpp Expr index = select(x*x + y*y > 0, x*x + y*y + 2, x*x + y*y + 10); select 452 src/CSE.cpp e = select(x*y > 10, x*y + 2, x*y + 3 + load) + pred_load; select 460 src/CSE.cpp select(t2, t[1] + 2, t[1] + 10), select 461 src/CSE.cpp select(t[0] > 10, t[0] + 2, t[0] + 3 + cse_load) + cse_pred_load}); select 468 src/CSE.cpp Expr index = select(x*x + y*y > 0, x*x + y*y + 2, x*x + y*y + 10); select 471 src/CSE.cpp e = select(x*y > 10, x*y + 2, x*y + 3 + pred_load) + pred_load; select 474 src/CSE.cpp Expr cse_load = Load::make(Int(32), "buf", select(t2, t[1] + 2, t[1] + 10), Buffer<>(), Parameter(), const_true()); select 475 src/CSE.cpp Expr cse_pred_load = Load::make(Int(32), "buf", select(t2, t[1] + 2, t[1] + 10), Buffer<>(), Parameter(), t2); select 480 src/CSE.cpp select(t[0] > 10, t[0] + 2, t[0] + 3 + t[3]) + t[3]}); select 935 src/CodeGen_C.cpp Expr e = select(a < b, b - a, a - b); select 972 src/CodeGen_C.cpp rhs << print_expr(cast(op->type, select(a0 > 0, a0, -a0))); select 1349 src/CodeGen_LLVM.cpp select(a < b, a, b)))); select 1359 src/CodeGen_LLVM.cpp select(a > b, a, b)))); select 2178 src/CodeGen_LLVM.cpp value = codegen(Let::make(x_name, op->args[0], select(x >= 0, x, -x))); select 202 src/FastIntegerDivide.cpp Expr xsign = select(numerator > 0, cast(t, 0), cast(t, -1)); select 223 src/FastIntegerDivide.cpp result = select(denominator == 1, numerator, result); select 470 src/IROperator.cpp Expr patched = select(exceptional, make_one(type), x_full); select 493 src/IROperator.cpp result = select(exceptional, select(use_nan, nan, neg_inf), result); select 539 src/IROperator.cpp result = select(biased < 255, result, inf); select 540 src/IROperator.cpp result = select(biased > 0, result, make_zero(type)); select 552 src/IROperator.cpp Expr sign = select(x_full < 0, -1.0f, 1.0f); select 581 src/IROperator.cpp Expr y = select(x > 1.0f, approx1, approx2); select 694 src/IROperator.cpp flags = select(host_dirty, select 699 src/IROperator.cpp flags = flags | select(device_dirty, select 859 src/IROperator.cpp e = select(e >= cast(e.type(), t.max()), t.max(), cast(t, e)); select 827 src/IROperator.h inline Expr select(Expr condition, Expr true_value, Expr false_value) { select 860 src/IROperator.h inline Expr select(const Expr &c0, const Expr &v0, const Expr &c1, const Expr &v1, Args&&... args) { select 861 src/IROperator.h return select(c0, v0, select(c1, v1, std::forward<Args>(args)...)); select 1202 src/IROperator.h return select(x == 0.0f, 0.0f, fast_exp(fast_log(x) * y)); select 47 src/Lerp.cpp result = select(weight > half_weight, one_val, zero_val); select 138 src/Lerp.cpp result = select(typed_weight, one_val, zero_val); select 444 src/Monotonic.cpp check_increasing(select(y == 2, x, x+4)); select 445 src/Monotonic.cpp check_decreasing(select(y == 2, -x, x*-4)); select 447 src/Monotonic.cpp check_increasing(select(x > 2, x+1, x)); select 448 src/Monotonic.cpp check_increasing(select(x < 2, x, x+1)); select 449 src/Monotonic.cpp check_decreasing(select(x > 2, -x-1, -x)); select 450 src/Monotonic.cpp check_decreasing(select(x < 2, -x, -x-1)); select 452 src/Monotonic.cpp check_unknown(select(x < 2, x, x-5)); select 453 src/Monotonic.cpp check_unknown(select(x > 2, x-5, x)); select 457 src/Monotonic.cpp check_increasing(select(x < 17, y, y+1)); select 458 src/Monotonic.cpp check_increasing(select(x > 17, y, y-1)); select 459 src/Monotonic.cpp check_decreasing(select(x < 17, y, y-1)); select 460 src/Monotonic.cpp check_decreasing(select(x > 17, y, y+1)); select 462 src/Monotonic.cpp check_increasing(select(x % 2 == 0, x+3, x+3)); select 464 src/Monotonic.cpp check_constant(select(y > 3, y + 23, y - 65)); select 850 src/PartitionLoops.cpp inner = LetStmt::make(let_a->name, select(condition, let_a->value, let_b->value), inner); select 936 src/PartitionLoops.cpp expr = mutate(select(op->condition && t->condition, t->true_value, op->false_value)); select 939 src/PartitionLoops.cpp expr = mutate(select(op->condition || f->condition, op->true_value, f->false_value)); select 356 src/Prefetch.cpp new_offset += outer_var * simplify(select(is_negative_stride, -max_byte_size, max_byte_size)); select 1653 src/Simplify.cpp expr = mutate(select(b < make_zero(op->type), select 2490 src/Simplify.cpp expr = mutate(select(select_a->condition, select 2852 src/Simplify.cpp expr = mutate(select(select_a->condition, select 5222 src/Simplify.cpp check((-1)/x, select(x < 0, 1, -1)); select 5369 src/Simplify.cpp Expr test = select(ramp(const_true(), const_true(), 2), select 5379 src/Simplify.cpp Expr test = select(ramp(const_true(), const_true(), 2), select 5519 src/Simplify.cpp check(select(x > y, likely(x), x), likely(x)); select 5520 src/Simplify.cpp check(select(x > y, x, likely(x)), likely(x)); select 5727 src/Simplify.cpp check(select(x < 3, 2, 2), 2); select 5728 src/Simplify.cpp check(select(x < (x+1), 9, 2), 9); select 5729 src/Simplify.cpp check(select(x > (x+1), 9, 2), 2); select 5731 src/Simplify.cpp check(select(x != 5, 2, 3), select(x == 5, 3, 2)); select 5732 src/Simplify.cpp check(select(x >= 5, 2, 3), select(x < 5, 3, 2)); select 5733 src/Simplify.cpp check(select(x <= 5, 2, 3), select(5 < x, 3, 2)); select 5734 src/Simplify.cpp check(select(x > 5, 2, 3), select(5 < x, 2, 3)); select 5736 src/Simplify.cpp check(select(x > 5, 2, 3) + select(x > 5, 6, 2), select(5 < x, 8, 5)); select 5737 src/Simplify.cpp check(select(x > 5, 8, 3) - select(x > 5, 6, 2), select(5 < x, 2, 1)); select 5879 src/Simplify.cpp check(select(ramp((x/16)*16, 1, 8) < broadcast((y/8)*8, 8), broadcast(1, 8), broadcast(3, 8)), select 5880 src/Simplify.cpp select((x/16)*2 < y/8, broadcast(1, 8), broadcast(3, 8))); select 5899 src/Simplify.cpp Evaluate::make(select(b1, x+3, y+4) + select(b2, x+5, y+7)), select 5900 src/Simplify.cpp Evaluate::make(select(b1, x+3, y+8) - select(b2, x+5, y+7))), select 5902 src/Simplify.cpp Evaluate::make(select(b1, x+3, y+4) + select(b2, x+5, y+7)), select 5907 src/Simplify.cpp Evaluate::make(select(b1, x, y)), select 5908 src/Simplify.cpp Evaluate::make(select(b1, z, w))), select 5968 src/Simplify.cpp check(select(x == 3, 5, 7) + 7, select(x == 3, 12, 14)); select 5969 src/Simplify.cpp check(select(x == 3, 5, 7) - 7, select(x == 3, -2, 0)); select 5970 src/Simplify.cpp check(select(x == 3, 5, y) - y, select(x == 3, 5 - y, 0)); select 5971 src/Simplify.cpp check(select(x == 3, y, 5) - y, select(x == 3, 0, 5 - y)); select 5972 src/Simplify.cpp check(y - select(x == 3, 5, y), select(x == 3, y + (-5), 0)); select 5973 src/Simplify.cpp check(y - select(x == 3, y, 5), select(x == 3, 0, y + (-5))); select 5975 src/Simplify.cpp check(select(x == 3, 5, 7) == 7, x != 3); select 5976 src/Simplify.cpp check(select(x == 3, z, y) == z, (x == 3) || (y == z)); select 5978 src/Simplify.cpp check(select(x == 3, 4, 2) == 0, const_false()); select 5979 src/Simplify.cpp check(select(x == 3, y, 2) == 4, (x == 3) && (y == 4)); select 5980 src/Simplify.cpp check(select(x == 3, 2, y) == 4, (x != 3) && (y == 4)); select 5982 src/Simplify.cpp check(min(select(x == 2, y*3, 8), select(x == 2, y+8, y*7)), select 5983 src/Simplify.cpp select(x == 2, min(y*3, y+8), min(y*7, 8))); select 5985 src/Simplify.cpp check(max(select(x == 2, y*3, 8), select(x == 2, y+8, y*7)), select 5986 src/Simplify.cpp select(x == 2, max(y*3, y+8), max(y*7, 8))); select 5988 src/Simplify.cpp check(select(x == 2, x+1, x+5), x + select(x == 2, 1, 5)); select 5989 src/Simplify.cpp check(select(x == 2, x+y, x+z), x + select(x == 2, y, z)); select 5990 src/Simplify.cpp check(select(x == 2, y+x, x+z), x + select(x == 2, y, z)); select 5991 src/Simplify.cpp check(select(x == 2, y+x, z+x), select(x == 2, y, z) + x); select 5992 src/Simplify.cpp check(select(x == 2, x+y, z+x), x + select(x == 2, y, z)); select 5993 src/Simplify.cpp check(select(x == 2, x*2, x*5), x * select(x == 2, 2, 5)); select 5994 src/Simplify.cpp check(select(x == 2, x*y, x*z), x * select(x == 2, y, z)); select 5995 src/Simplify.cpp check(select(x == 2, y*x, x*z), x * select(x == 2, y, z)); select 5996 src/Simplify.cpp check(select(x == 2, y*x, z*x), select(x == 2, y, z) * x); select 5997 src/Simplify.cpp check(select(x == 2, x*y, z*x), x * select(x == 2, y, z)); select 5998 src/Simplify.cpp check(select(x == 2, x-y, x-z), x - select(x == 2, y, z)); select 5999 src/Simplify.cpp check(select(x == 2, y-x, z-x), select(x == 2, y, z) - x); select 6000 src/Simplify.cpp check(select(x == 2, x+y, x-z), x + select(x == 2, y, 0-z)); select 6001 src/Simplify.cpp check(select(x == 2, y+x, x-z), x + select(x == 2, y, 0-z)); select 6002 src/Simplify.cpp check(select(x == 2, x-z, x+y), x + select(x == 2, 0-z, y)); select 6003 src/Simplify.cpp check(select(x == 2, x-z, y+x), x + select(x == 2, 0-z, y)); select 6014 src/Simplify.cpp check(select(b[0], x, select(b[1], x, y)), select 6015 src/Simplify.cpp select(b[0] || b[1], x, y)); select 6016 src/Simplify.cpp check(select(b[0], x, select(b[1], y, x)), select 6017 src/Simplify.cpp select(b[0] || !b[1], x, y)); select 6018 src/Simplify.cpp check(select(b[0], select(b[1], x, y), x), select 6019 src/Simplify.cpp select(b[0] && !b[1], y, x)); select 6020 src/Simplify.cpp check(select(b[0], select(b[1], y, x), x), select 6021 src/Simplify.cpp select(b[0] && b[1], y, x)); select 6147 src/Simplify.cpp check_ind_expr(select(b, one, zero), e_is_indeterminate); select 6148 src/Simplify.cpp check_ind_expr(select(t, e, zero), e_is_indeterminate); select 6149 src/Simplify.cpp check_ind_expr(select(f, zero, e), e_is_indeterminate); select 162 src/SkipStages.cpp return select(a, b, c); select 229 src/SlidingWindow.cpp new_min = select(loop_var_expr <= loop_min, min_required, likely(prev_max_plus_one)); select 233 src/SlidingWindow.cpp new_max = select(loop_var_expr <= loop_min, max_required, likely(prev_min_minus_one)); select 117 src/Tuple.h result[i] = select(condition[i], true_value[i], false_value[i]); select 125 src/Tuple.h result[i] = select(condition, true_value[i], false_value[i]); select 1014 src/VaryingAttributes.cpp Expr coord_expr = select(loop_variable == 0, dim[0], dim[1]); select 32 test/correctness/align_bounds.cpp g(x) = select(x % 2 == 0, f(x+1), f(x-1)+8); select 95 test/correctness/align_bounds.cpp g(x) = select(x % 2 == 0, f(x+1), f(x-1)+8); select 20 test/correctness/argmax.cpp arg_max_f() = select(f(r) > best_so_far, r, arg_max_f()); select 16 test/correctness/autotune_bug_5.cpp upsampledx(x, y) = select((x % 2) == 0, select 10 test/correctness/bad_likely.cpp f(x) = select(x < 10 || x > 20, likely(1), 2); select 13 test/correctness/bool_compute_root_vectorize.cpp selector(x, y) = select(pred(x, y), 1, 0); select 9 test/correctness/compare_vars.cpp f(x, y) = select(x == y, 1, 0); select 29 test/correctness/gameoflife.cpp output(x, y) = select(livingNeighbors == 3 || (alive && livingNeighbors == 2), u8(1), u8(0)); select 106 test/correctness/gameoflife.cpp life(t.x, t.y, t.z%2) = select(livingNeighbors == 3 || (alive && livingNeighbors == 2), u8(1), u8(0)); select 24 test/correctness/gpu_cpu_simultaneous_read.cpp h(x, y) = select(table(0) == 0, f(x, y), g(x, y)); select 55 test/correctness/gpu_non_contiguous_copy.cpp Expr change_out_of_subregion = select(test, undef<int>(), 4*x + 3*y + 2*z + w); select 59 test/correctness/in_place.cpp h(x) = select(x % 2 == 0, 1.0f, undef<float>()); select 99 test/correctness/interleave.cpp h_def.push_back(select(x % 2 == 0, 1.0f/element(f(x/2), i), element(g(x/2), i)*17.0f)); select 180 test/correctness/interleave.cpp output4(x, y) = select(y == 0, f1(x), select 219 test/correctness/interleave.cpp output5(x, y) = select(y == 0, f1(x), select 270 test/correctness/interleave.cpp unrolled(x, y) = select(x % 2 == 0, f1(x), f2(x)) + y; select 11 test/correctness/interleave_x.cpp interleaved(x, y) = select(x%2 == 0, cast<uint16_t>(3), cast<uint16_t>(7)); select 12 test/correctness/isnan.cpp f(x, y) = select(is_nan(e), 0.0f, 1.0f); select 28 test/correctness/iterate_over_circle.cpp f(x, y) += select(x > -t && x < t, in(x, y), 0); select 31 test/correctness/lazy_convolution.cpp blur(x, y) = select(f(x, y) > 0, sum(f(x+r.x, y+r.y)), 0); select 148 test/correctness/likely.cpp g(x) = select(x < 10, sin(x), likely(1.0f)); select 159 test/correctness/likely.cpp g(x) = select(x < 10 || x > 100, sin(x), likely(1.0f)); select 205 test/correctness/likely.cpp g(c, x, y) = sum(select(nasty, likely(10), c + r)); select 218 test/correctness/likely.cpp g(x) = select(x > limit, likely(3), 2); select 27 test/correctness/logical.cpp f(x, y) = select(((input(x, y) > 10) && (input(x, y) < 20)) || select 60 test/correctness/logical.cpp f(x, y) = select((common_cond && (input(x, y) < 20)) || select 92 test/correctness/logical.cpp f(x, y) = select(x < 10 || x > 20 || y < 10 || y > 20, 0, input(x, y)); select 122 test/correctness/logical.cpp f(x, y) = select(input(x, y) > ten, u8(255), u8(0)); select 162 test/correctness/logical.cpp f(x, y) = select(in_narrow(x, y) > 10, in_wide(x, y*2), in_wide(x, y*2+1)); select 16 test/correctness/min_extent.cpp factor = select(x < in.left(), -10, select 17 test/correctness/min_extent.cpp select(x > in.right(), 10, 1)); select 12 test/correctness/multi_way_select.cpp f(x) = select(x == 0, cases[0], select 21 test/correctness/multipass_constraints.cpp o.dim(0).set_bounds(0, select(o.dim(0).extent() < 22, o.dim(0).extent() + 1, o.dim(0).extent())); select 47 test/correctness/newtons_method.cpp x0 = select(baseline > 0, x0, x1); select 29 test/correctness/partition_loops.cpp f(x, y, c) = select(h(x, y) < x + y, x + y, y + c); select 124 test/correctness/predicated_store_load.cpp ref(x, y) = select(x < 23, g(size-x, y) * 2 + g(20-x, y), undef<int>()); select 127 test/correctness/predicated_store_load.cpp f(x, y) = select(x < 23, g(size-x, y) * 2 + g(20-x, y), undef<int>()); select 135 test/correctness/print.cpp e = select(x == 0, 0.0f, select 142 test/correctness/print.cpp e = select(x == 5, std::numeric_limits<float>::denorm_min(), select 43 test/correctness/process_some_tiles.cpp output_tiles(xi, yi, x, y) = select(bitmap(x, y), brighter(xi, yi, x, y), tiled(xi, yi, x, y)); select 816 test/correctness/rfactor.cpp select(ref()[0] < f(r.x, r.y), ref()[1], r.x), select 817 test/correctness/rfactor.cpp select(ref()[0] < f(r.x, r.y), ref()[2], r.y)); select 821 test/correctness/rfactor.cpp select(g()[0] < f(r.x, r.y), g()[1], r.x), select 822 test/correctness/rfactor.cpp select(g()[0] < f(r.x, r.y), g()[2], r.y)); select 98 test/correctness/side_effects.cpp count(x, y) = select(escape[1], 0, escape[0]); select 328 test/correctness/simd_op_check.cpp check("pmulhw", 4*w, select(in_u8(0) == 0, select 335 test/correctness/simd_op_check.cpp check("pcmp*b", 8*w, select(u8_1 == u8_2, u8(1), u8(2))); select 336 test/correctness/simd_op_check.cpp check("pcmp*b", 8*w, select(u8_1 > u8_2, u8(1), u8(2))); select 337 test/correctness/simd_op_check.cpp check("pcmp*w", 4*w, select(u16_1 == u16_2, u16(1), u16(2))); select 338 test/correctness/simd_op_check.cpp check("pcmp*w", 4*w, select(u16_1 > u16_2, u16(1), u16(2))); select 339 test/correctness/simd_op_check.cpp check("pcmp*d", 2*w, select(u32_1 == u32_2, u32(1), u32(2))); select 340 test/correctness/simd_op_check.cpp check("pcmp*d", 2*w, select(u32_1 > u32_2, u32(1), u32(2))); select 375 test/correctness/simd_op_check.cpp check("cmpeqps", 2*w, select(f32_1 == f32_2, 1.0f, 2.0f)); select 376 test/correctness/simd_op_check.cpp check("cmpltps", 2*w, select(f32_1 < f32_2, 1.0f, 2.0f)); select 413 test/correctness/simd_op_check.cpp check("cmpeqpd", w, select(f64_1 == f64_2, 1.0f, 2.0f)); select 416 test/correctness/simd_op_check.cpp check("cmpltpd", w, select(f64_1 < f64_2, 1.0f, 2.0f)); select 475 test/correctness/simd_op_check.cpp check((use_avx512_skylake && w > 2) ? "vinsertf32x8" : "blend*ps", 2*w, select(f32_1 > 0.7f, f32_1, f32_2)); select 476 test/correctness/simd_op_check.cpp check((use_avx512 && w > 2) ? "vinsertf64x4" : "blend*pd", w, select(f64_1 > cast<double>(0.7f), f64_1, f64_2)); select 477 test/correctness/simd_op_check.cpp check("pblend*b", 8*w, select(u8_1 > 7, u8_1, u8_2)); select 478 test/correctness/simd_op_check.cpp check("pblend*b", 8*w, select(u8_1 == 7, u8_1, u8_2)); select 479 test/correctness/simd_op_check.cpp check("pblend*b", 8*w, select(u8_1 <= 7, i8_1, i8_2)); select 497 test/correctness/simd_op_check.cpp check("pcmpeqq", w, select(i64_1 == i64_2, i64(1), i64(2))); select 504 test/correctness/simd_op_check.cpp check("pcmpgtq", 2, select(i64_1 > i64_2, i64(1), i64(2))); select 538 test/correctness/simd_op_check.cpp check("vcmpeqpd" YMM, 4, select(f64_1 == f64_2, 1.0f, 2.0f)); select 541 test/correctness/simd_op_check.cpp check("vcmpltpd" YMM, 4, select(f64_1 < f64_2, 1.0f, 2.0f)); select 542 test/correctness/simd_op_check.cpp check("vcmpeqps" YMM, 8, select(f32_1 == f32_2, 1.0f, 2.0f)); select 545 test/correctness/simd_op_check.cpp check("vcmpltps" YMM, 8, select(f32_1 < f32_2, 1.0f, 2.0f)); select 548 test/correctness/simd_op_check.cpp check(use_avx512_skylake ? "vinsertf32x8" : "vblend*ps" YMM, 8, select(f32_1 > 0.7f, f32_1, f32_2)); select 549 test/correctness/simd_op_check.cpp check(use_avx512 ? "vinsertf64x4" : "vblend*pd" YMM, 4, select(f64_1 > cast<double>(0.7f), f64_1, f64_2)); select 583 test/correctness/simd_op_check.cpp check("vpcmp*b" YMM, 32, select(u8_1 == u8_2, u8(1), u8(2))); select 584 test/correctness/simd_op_check.cpp check("vpcmp*b" YMM, 32, select(u8_1 > u8_2, u8(1), u8(2))); select 585 test/correctness/simd_op_check.cpp check("vpcmp*w" YMM, 16, select(u16_1 == u16_2, u16(1), u16(2))); select 586 test/correctness/simd_op_check.cpp check("vpcmp*w" YMM, 16, select(u16_1 > u16_2, u16(1), u16(2))); select 587 test/correctness/simd_op_check.cpp check("vpcmp*d" YMM, 8, select(u32_1 == u32_2, u32(1), u32(2))); select 588 test/correctness/simd_op_check.cpp check("vpcmp*d" YMM, 8, select(u32_1 > u32_2, u32(1), u32(2))); select 619 test/correctness/simd_op_check.cpp check("vpblend*b" YMM, 32, select(u8_1 > 7, u8_1, u8_2)); select 630 test/correctness/simd_op_check.cpp check("vpcmpeqq" YMM, 4, select(i64_1 == i64_2, i64(1), i64(2))); select 632 test/correctness/simd_op_check.cpp check("vpcmpgtq" YMM, 4, select(i64_1 > i64_2, i64(1), i64(2))); select 788 test/correctness/simd_op_check.cpp check(arm32 ? "vbsl" : "bsl", 2*w, select(f32_1 > f32_2, 1.0f, 2.0f)); select 791 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i8" : "cmeq", 8*w, select(i8_1 == i8_2, i8(1), i8(2))); select 792 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i8" : "cmeq", 8*w, select(u8_1 == u8_2, u8(1), u8(2))); select 793 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i16" : "cmeq", 4*w, select(i16_1 == i16_2, i16(1), i16(2))); select 794 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i16" : "cmeq", 4*w, select(u16_1 == u16_2, u16(1), u16(2))); select 795 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i32" : "cmeq", 2*w, select(i32_1 == i32_2, i32(1), i32(2))); select 796 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.i32" : "cmeq", 2*w, select(u32_1 == u32_2, u32(1), u32(2))); select 797 test/correctness/simd_op_check.cpp check(arm32 ? "vceq.f32" : "fcmeq", 2*w, select(f32_1 == f32_2, 1.0f, 2.0f)); select 803 test/correctness/simd_op_check.cpp check("vcge.s8", 16, select(i8_1 >= i8_2, i8(1), i8(2))); select 804 test/correctness/simd_op_check.cpp check("vcge.u8", 16, select(u8_1 >= u8_2, u8(1), u8(2))); select 805 test/correctness/simd_op_check.cpp check("vcge.s16", 8, select(i16_1 >= i16_2, i16(1), i16(2))); select 806 test/correctness/simd_op_check.cpp check("vcge.u16", 8, select(u16_1 >= u16_2, u16(1), u16(2))); select 807 test/correctness/simd_op_check.cpp check("vcge.s32", 4, select(i32_1 >= i32_2, i32(1), i32(2))); select 808 test/correctness/simd_op_check.cpp check("vcge.u32", 4, select(u32_1 >= u32_2, u32(1), u32(2))); select 809 test/correctness/simd_op_check.cpp check("vcge.f32", 4, select(f32_1 >= f32_2, 1.0f, 2.0f)); select 810 test/correctness/simd_op_check.cpp check("vcge.s8", 8, select(i8_1 >= i8_2, i8(1), i8(2))); select 811 test/correctness/simd_op_check.cpp check("vcge.u8", 8, select(u8_1 >= u8_2, u8(1), u8(2))); select 812 test/correctness/simd_op_check.cpp check("vcge.s16", 4, select(i16_1 >= i16_2, i16(1), i16(2))); select 813 test/correctness/simd_op_check.cpp check("vcge.u16", 4, select(u16_1 >= u16_2, u16(1), u16(2))); select 814 test/correctness/simd_op_check.cpp check("vcge.s32", 2, select(i32_1 >= i32_2, i32(1), i32(2))); select 815 test/correctness/simd_op_check.cpp check("vcge.u32", 2, select(u32_1 >= u32_2, u32(1), u32(2))); select 816 test/correctness/simd_op_check.cpp check("vcge.f32", 2, select(f32_1 >= f32_2, 1.0f, 2.0f)); select 820 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.s8" : "cmgt", 8*w, select(i8_1 > i8_2, i8(1), i8(2))); select 821 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.u8" : "cmhi", 8*w, select(u8_1 > u8_2, u8(1), u8(2))); select 822 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.s16" : "cmgt", 4*w, select(i16_1 > i16_2, i16(1), i16(2))); select 823 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.u16" : "cmhi", 4*w, select(u16_1 > u16_2, u16(1), u16(2))); select 824 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.s32" : "cmgt", 2*w, select(i32_1 > i32_2, i32(1), i32(2))); select 825 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.u32" : "cmhi", 2*w, select(u32_1 > u32_2, u32(1), u32(2))); select 826 test/correctness/simd_op_check.cpp check(arm32 ? "vcgt.f32" : "fcmgt", 2*w, select(f32_1 > f32_2, 1.0f, 2.0f)); select 1338 test/correctness/simd_op_check.cpp tmp2(x, y) = select(x%2 == 0, tmp1(x/2), tmp1(x/2 + 16)); select 1356 test/correctness/simd_op_check.cpp tmp2(x, y) = select(x%2 == 0, e*3, e + 17); select 1372 test/correctness/simd_op_check.cpp tmp2(x, y) = select(x%3 == 0, tmp1(x/3), select 1390 test/correctness/simd_op_check.cpp tmp2(x, y) = select(x%4 == 0, tmp1(x/4), select 1686 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", hvx_width*2, select((x%2) == 0, in_u8(x/2), in_u8((x+16)/2))); select 1687 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", hvx_width*2, select((x%2) == 0, in_i8(x/2), in_i8((x+16)/2))); select 1688 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/2, select((x%2) == 0, in_u16(x/2), in_u16((x+16)/2))); select 1689 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/2, select((x%2) == 0, in_i16(x/2), in_i16((x+16)/2))); select 1690 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/4, select((x%2) == 0, in_u32(x/2), in_u32((x+16)/2))); select 1691 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/4, select((x%2) == 0, in_i32(x/2), in_i32((x+16)/2))); select 1693 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", hvx_width*2, select((x%2) == 0, u8(x/2), u8(x/2))); select 1694 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", hvx_width*2, select((x%2) == 0, i8(x/2), i8(x/2))); select 1695 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/2, select((x%2) == 0, u16(x/2), u16(x/2))); select 1696 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/2, select((x%2) == 0, i16(x/2), i16(x/2))); select 1697 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/4, select((x%2) == 0, u32(x/2), u32(x/2))); select 1698 test/correctness/simd_op_check.cpp check("vshuff(v*,v*,r*)", (hvx_width*2)/4, select((x%2) == 0, i32(x/2), i32(x/2))); select 1710 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.b,v*.b)", hvx_width/1, select(i8_1 < i8_2, i8_1, i8_2)); select 1711 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.ub,v*.ub)", hvx_width/1, select(u8_1 < u8_2, u8_1, u8_2)); select 1712 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.h,v*.h)", hvx_width/2, select(i16_1 < i16_2, i16_1, i16_2)); select 1713 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uh,v*.uh)", hvx_width/2, select(u16_1 < u16_2, u16_1, u16_2)); select 1714 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.w,v*.w)", hvx_width/4, select(i32_1 < i32_2, i32_1, i32_2)); select 1715 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uw,v*.uw)", hvx_width/4, select(u32_1 < u32_2, u32_1, u32_2)); select 1717 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.b,v*.b)", hvx_width/1, select(i8_1 > i8_2, i8_1, i8_2)); select 1718 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.ub,v*.ub)", hvx_width/1, select(u8_1 > u8_2, u8_1, u8_2)); select 1719 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.h,v*.h)", hvx_width/2, select(i16_1 > i16_2, i16_1, i16_2)); select 1720 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uh,v*.uh)", hvx_width/2, select(u16_1 > u16_2, u16_1, u16_2)); select 1721 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.w,v*.w)", hvx_width/4, select(i32_1 > i32_2, i32_1, i32_2)); select 1722 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uw,v*.uw)", hvx_width/4, select(u32_1 > u32_2, u32_1, u32_2)); select 1724 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.b,v*.b)", hvx_width/1, select(i8_1 <= i8_2, i8_1, i8_2)); select 1725 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.ub,v*.ub)", hvx_width/1, select(u8_1 <= u8_2, u8_1, u8_2)); select 1726 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.h,v*.h)", hvx_width/2, select(i16_1 <= i16_2, i16_1, i16_2)); select 1727 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uh,v*.uh)", hvx_width/2, select(u16_1 <= u16_2, u16_1, u16_2)); select 1728 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.w,v*.w)", hvx_width/4, select(i32_1 <= i32_2, i32_1, i32_2)); select 1729 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uw,v*.uw)", hvx_width/4, select(u32_1 <= u32_2, u32_1, u32_2)); select 1731 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.b,v*.b)", hvx_width/1, select(i8_1 >= i8_2, i8_1, i8_2)); select 1732 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.ub,v*.ub)", hvx_width/1, select(u8_1 >= u8_2, u8_1, u8_2)); select 1733 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.h,v*.h)", hvx_width/2, select(i16_1 >= i16_2, i16_1, i16_2)); select 1734 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uh,v*.uh)", hvx_width/2, select(u16_1 >= u16_2, u16_1, u16_2)); select 1735 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.w,v*.w)", hvx_width/4, select(i32_1 >= i32_2, i32_1, i32_2)); select 1736 test/correctness/simd_op_check.cpp check("vcmp.gt(v*.uw,v*.uw)", hvx_width/4, select(u32_1 >= u32_2, u32_1, u32_2)); select 1738 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.b,v*.b)", hvx_width/1, select(i8_1 == i8_2, i8_1, i8_2)); select 1739 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.b,v*.b)", hvx_width/1, select(u8_1 == u8_2, u8_1, u8_2)); select 1740 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.h,v*.h)", hvx_width/2, select(i16_1 == i16_2, i16_1, i16_2)); select 1741 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.h,v*.h)", hvx_width/2, select(u16_1 == u16_2, u16_1, u16_2)); select 1742 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.w,v*.w)", hvx_width/4, select(i32_1 == i32_2, i32_1, i32_2)); select 1743 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.w,v*.w)", hvx_width/4, select(u32_1 == u32_2, u32_1, u32_2)); select 1745 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.b,v*.b)", hvx_width/1, select(i8_1 != i8_2, i8_1, i8_2)); select 1746 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.b,v*.b)", hvx_width/1, select(u8_1 != u8_2, u8_1, u8_2)); select 1747 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.h,v*.h)", hvx_width/2, select(i16_1 != i16_2, i16_1, i16_2)); select 1748 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.h,v*.h)", hvx_width/2, select(u16_1 != u16_2, u16_1, u16_2)); select 1749 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.w,v*.w)", hvx_width/4, select(i32_1 != i32_2, i32_1, i32_2)); select 1750 test/correctness/simd_op_check.cpp check("vcmp.eq(v*.w,v*.w)", hvx_width/4, select(u32_1 != u32_2, u32_1, u32_2)); select 1780 test/correctness/simd_op_check.cpp check("vmux(q*,v*,v*)", hvx_width/1, select(i8_1 == i8_2, i8_1, i8_2)); select 1781 test/correctness/simd_op_check.cpp check("vmux(q*,v*,v*)", hvx_width/2, select(i16_1 == i16_2, i16_1, i16_2)); select 1782 test/correctness/simd_op_check.cpp check("vmux(q*,v*,v*)", hvx_width/4, select(i32_1 == i32_2, i32_1, i32_2)); select 48 test/correctness/skip_stages.cpp f4(x) = select(toggle1, f2(x), f3(x)); select 75 test/correctness/skip_stages.cpp f4(x) = select(toggle1, f2(x), 0) + select(toggle2, f3(x), 0); select 117 test/correctness/skip_stages.cpp f2(x) = select(toggle1, f1(x)[0], 0) + f1(x)[1]; select 138 test/correctness/skip_stages.cpp f2(x) = select(toggle1, f1(x)[0], 0); select 162 test/correctness/skip_stages.cpp f4(x) = select(toggle1, f2(x), 0) + select(toggle2, f3(x), 0); select 66 test/correctness/skip_stages_external_array_functions.cpp f4(x) = select(toggle1, f2(x), f3(x)); select 113 test/correctness/skip_stages_external_array_functions.cpp f4(x) = select(toggle1, f2(x), 0) + select(toggle2, f3(x), 0); select 171 test/correctness/skip_stages_external_array_functions.cpp f2(x) = select(toggle1, f1(x)[0], 0) + f1(x)[1]; select 209 test/correctness/skip_stages_external_array_functions.cpp f2(x) = select(toggle1, f1(x)[0], 0); select 252 test/correctness/skip_stages_external_array_functions.cpp f4(x) = select(toggle1, f2(x), 0) + select(toggle2, f3(x), 0); select 86 test/correctness/skip_stages_memoize.cpp f2(x) = select(toggle, f1(x), 1); select 114 test/correctness/skip_stages_memoize.cpp f2(x) = Tuple(select(toggle, f1(x)[0], 1), select 115 test/correctness/skip_stages_memoize.cpp select(toggle, f1(x)[1], 1)); select 151 test/correctness/skip_stages_memoize.cpp f2(x) = select(toggle, f1(x), 1); select 152 test/correctness/skip_stages_memoize.cpp f3(x) = select(toggle, f2(x), 1); select 185 test/correctness/skip_stages_memoize.cpp f3(x) = select(toggle1, f1(x), 1) + select(toggle2, f2(x), 0); select 81 test/correctness/specialize.cpp f(x) = select(param, x*3, x*17); select 174 test/correctness/specialize.cpp out(x) = select(param, g1(x), g2(x)); select 263 test/correctness/specialize.cpp f(x) = select(param, im(x + 10), im(x - 10)); select 315 test/correctness/specialize.cpp f(x) = select(param, im(x), 0.0f); select 456 test/correctness/specialize.cpp f(x) = select(test, im(x, 0), im(0, x)); select 494 test/correctness/specialize.cpp f(x) = select(p > 50, im(x, 0), im(0, x)); select 11 test/correctness/stream_compaction.cpp f(x) = select((x % 7 == 0) || (x % 5 == 0), 1, 0); select 30 test/correctness/stream_compaction.cpp ones(bin) = select(f(r) == 1, r, undef<int>()); select 49 test/correctness/trim_no_ops.cpp f(x) += select(x > 10 && x < 20, 1, 0); select 50 test/correctness/trim_no_ops.cpp f(x) += select(x < 10, 0, 1); select 51 test/correctness/trim_no_ops.cpp f(x) *= select(x > 20 && x < 30, 2, 1); select 52 test/correctness/trim_no_ops.cpp f(x) = select(x >= 60 && x <= 100, 100 - f(x), f(x)); select 86 test/correctness/trim_no_ops.cpp f(x, y) += select((x == 10) && (x < y), 1, 0); select 126 test/correctness/trim_no_ops.cpp select(xi >= 0 && xi <= 73 && yi >= 0 && yi <= 73, 1, 0); select 162 test/correctness/trim_no_ops.cpp f(x, y) = select(2*x < y, 5, undef<int>()); select 192 test/correctness/trim_no_ops.cpp f(r.x, r.y) += select((r.x < r.y) && (r.x == 10), 3, undef<int>()); select 36 test/correctness/truncated_pyramid.cpp pyr_down[i](x, y) = select(max(sizes[i].first, sizes[i].second) > 5, select 54 test/correctness/truncated_pyramid.cpp pyr_up[i](x, y) = select(max(sizes[i].first, sizes[i].second) > 5, select 39 test/correctness/tuple_partial_update.cpp f(x, y)[1] += select(x < 20, 20*x, undef<int>()); select 79 test/correctness/tuple_undef.cpp f(x, y) = Tuple(undef<int>(), select(x < 20, 20*f(x, y)[0], undef<int>())); select 109 test/correctness/tuple_undef.cpp Expr arg_0 = clamp(select(r.x < 2, 13, undef<int>()), 0, 100); select 110 test/correctness/tuple_undef.cpp Expr arg_1 = clamp(select(r.x < 2, 23, undef<int>()), 0, 100); select 197 test/correctness/vector_math.cpp f4(x, y) = select(input(x, y) > input(x+1, y), input(x+2, y), input(x+3, y)); select 365 test/correctness/vector_math.cpp f11(x, y) = select((x%2)==0, input(x/2, y), input(x/2, y+1)); select 16 test/correctness/vectorized_reduction_bug.cpp foo(x, y, c) = select(c == 3, 255, sum(x, y)); select 14 test/error/tuple_arg_select_undef.cpp Expr arg_0 = clamp(select(r.x < 2, 13, undef<int>()), 0, 20); select 15 test/error/tuple_arg_select_undef.cpp Expr arg_1 = clamp(select(r.x < 5, 23, undef<int>()), 0, 20); select 12 test/error/tuple_val_select_undef.cpp f(x) = {x, select(x < 20, 20*x, undef<int>())}; select 73 test/generator/cxx_mangling_generator.cpp f(x) = select(scale_direction, (input(x) * scale_f + offset) / scale_d, select 63 test/generator/mandelbrot_generator.cpp count(x, y) = select(escape[1], 0, escape[0]); select 16 test/generator/matlab_generator.cpp f(x, y) = input(x, y) * scale * select(negate, -1.0f, 1.0f); select 66 test/generator/memory_profiler_mandelbrot_generator.cpp count(x, y) = select(escape[1], 0, escape[0]); select 29 test/opengl/conv_select.cpp Expr R = select(f(x, y, c) > 9.0f, 1.0f, 0.0f); select 30 test/opengl/conv_select.cpp Expr G = select(f(x, y, c) > 9.0f, 0.f, 1.0f); select 31 test/opengl/conv_select.cpp g(x, y, c) = select(c == 0, R, G); select 16 test/opengl/copy_to_host.cpp gpu(x, y, c) = cast<uint8_t>(select(c == 0, 10 * x + y, select 18 test/opengl/select.cpp gpu(x, y, c) = cast<uint8_t>(select(c == 0, 128, select 60 test/opengl/select.cpp gpu(x, y, c) = cast<uint8_t>(select(flag != 0, 128, select 106 test/opengl/select.cpp gpu(x, y, c) = cast<uint8_t>(select(flag != 0, image(x, y, c), select 138 test/opengl/select.cpp Expr temp = cast<uint8_t>(select(x == 0, 1, 2)); select 139 test/opengl/select.cpp f(x, y, c) = select(y == 0, temp, 255 - temp); select 174 test/opengl/select.cpp Expr temp = cast<uint8_t>(select(x - c > 0, 1, 2)); select 175 test/opengl/select.cpp f(x, y, c) = select(y == 0, temp, 255 - temp); select 33 test/opengl/special_funcs.cpp Expr e = cast<T>(select(c == T(0), r, select 64 test/opengl/special_funcs.cpp Expr e = cast<T>(select(c == 0, r, c == 1, g, b)); select 90 test/opengl/varying.cpp f0(x, y, c) = select(c == 0, 4.0f, // Constant term select 128 test/opengl/varying.cpp f1(x, y, c) = select(c == 0, m.m0 * x + m.m1 * y + m.m2, select 149 test/opengl/varying.cpp f2(x, y, c) = select(c == 0, sqrt(m.m0 * x + m.m1 * y + m.m2), select 181 test/opengl/varying.cpp f3(x, y, c) = select(c == 0, foo, select 157 test/performance/memory_profiler.cpp f3(x, y) = select(1 == 2, g3(x-1, y), 0); select 174 test/performance/memory_profiler.cpp f3(x, y) = select(1 == 2, g3((x-1)%10, y%10), 0); select 198 test/performance/memory_profiler.cpp f6(x) = select(toggle1, f4(x), 0) + select(toggle2, f5(x), 0); select 140 test/performance/rfactor.cpp select(ref()[0] < input(r.x, r.y, r.y, r.z), ref()[1], r.x), select 141 test/performance/rfactor.cpp select(ref()[0] < input(r.x, r.y, r.y, r.z), ref()[2], r.y), select 142 test/performance/rfactor.cpp select(ref()[0] < input(r.x, r.y, r.z, r.w), ref()[3], r.z), select 143 test/performance/rfactor.cpp select(ref()[0] < input(r.x, r.y, r.z, r.w), ref()[4], r.w)); select 147 test/performance/rfactor.cpp select(amin()[0] < input(r.x, r.y, r.z, r.w), amin()[1], r.x), select 148 test/performance/rfactor.cpp select(amin()[0] < input(r.x, r.y, r.z, r.w), amin()[2], r.y), select 149 test/performance/rfactor.cpp select(amin()[0] < input(r.x, r.y, r.z, r.w), amin()[3], r.z), select 150 test/performance/rfactor.cpp select(amin()[0] < input(r.x, r.y, r.z, r.w), amin()[4], r.w)); select 350 test/performance/rfactor.cpp select(sink_ref()[2] > A(r), sink_ref()[3], r), // Argmax select 352 test/performance/rfactor.cpp select(sink_ref()[4] < A(r), sink_ref()[5], r), // Argmin select 354 test/performance/rfactor.cpp sink_ref()[7] + select(A(r) % 2 == 0, 1, 0) // Number of even items select 362 test/performance/rfactor.cpp select(sink()[2] > A(r), sink()[3], r), // Argmax select 364 test/performance/rfactor.cpp select(sink()[4] < A(r), sink()[5], r), // Argmin select 366 test/performance/rfactor.cpp sink()[7] + select(A(r) % 2 == 0, 1, 0) // Number of even items select 28 test/performance/sort.cpp next(x) = select(x < chunk_middle, select 36 test/performance/sort.cpp next(x) = select(x < chunk_middle, select 90 test/performance/sort.cpp result(x, y) = select(x == 0, b0, select 91 test/performance/sort.cpp select(x == 1, b1, select 92 test/performance/sort.cpp select(x == 2, b2, b3))); select 43 test/performance/wrap.cpp stencil += staged(select(prev > 0, x, x+dx), select 44 test/performance/wrap.cpp select(prev > 0, y, y+dy)); select 87 test/performance/wrap.cpp stencil += host(select(prev > 0, x, x+dx), select 88 test/performance/wrap.cpp select(prev > 0, y, y+dy)); select 40 tutorial/lesson_13_tuples.cpp color_image(x, y, c) = select(c == 0, 245, // Red value select 158 tutorial/lesson_13_tuples.cpp Expr new_index = select(old_max < input(r), r, old_index);