tl.where is the standard conditional-select intrinsic, used heavily for masking-as-arithmetic and for clamping patterns. Sema already lists it in the intrinsic table (TN_TLI_WHERE) but the lowerer falls through to the not-yet-lowered diagnostic. The natural BIR target is BIR_SELECT, which takes a predicate, a true value, and a false value, and which the existing optimisation passes already understand. The only mild complication is type promotion when the two values have different element types, which can defer to a later sitting.
tl.where is the standard conditional-select intrinsic, used heavily for masking-as-arithmetic and for clamping patterns. Sema already lists it in the intrinsic table (TN_TLI_WHERE) but the lowerer falls through to the not-yet-lowered diagnostic. The natural BIR target is BIR_SELECT, which takes a predicate, a true value, and a false value, and which the existing optimisation passes already understand. The only mild complication is type promotion when the two values have different element types, which can defer to a later sitting.