Lines Matching refs:srcs

92    nir_alu_instr *emit(nir_op op, unsigned dest_size, nir_ssa_def **srcs);
1411 nir_ssa_def *srcs[4];
1415 srcs[i] = nir_channel(&b, src_addr, i);
1417 srcs[i] = nir_ssa_undef(&b, 1, 32);
1420 instr->src[1] = nir_src_for_ssa(nir_vec(&b, srcs, 4));
1960 nir_ssa_def *srcs[4];
1962 srcs[i] = evaluate_rvalue(ir->operands[i]);
1971 case ir_unop_bit_not: result = nir_inot(&b, srcs[0]); break;
1973 result = nir_inot(&b, srcs[0]);
1976 result = type_is_float(types[0]) ? nir_fneg(&b, srcs[0])
1977 : nir_ineg(&b, srcs[0]);
1980 result = type_is_float(types[0]) ? nir_fabs(&b, srcs[0])
1981 : nir_iabs(&b, srcs[0]);
1984 result = nir_uclz(&b, srcs[0]);
1988 result = nir_fsat(&b, srcs[0]);
1991 result = type_is_float(types[0]) ? nir_fsign(&b, srcs[0])
1992 : nir_isign(&b, srcs[0]);
1994 case ir_unop_rcp: result = nir_frcp(&b, srcs[0]); break;
1995 case ir_unop_rsq: result = nir_frsq(&b, srcs[0]); break;
1996 case ir_unop_sqrt: result = nir_fsqrt(&b, srcs[0]); break;
1997 case ir_unop_exp: result = nir_fexp2(&b, nir_fmul_imm(&b, srcs[0], M_LOG2E)); break;
1998 case ir_unop_log: result = nir_fmul_imm(&b, nir_flog2(&b, srcs[0]), 1.0 / M_LOG2E); break;
1999 case ir_unop_exp2: result = nir_fexp2(&b, srcs[0]); break;
2000 case ir_unop_log2: result = nir_flog2(&b, srcs[0]); break;
2048 srcs[0], NULL, NULL, NULL);
2057 result = nir_build_alu(&b, nir_op_f2fmp, srcs[0], NULL, NULL, NULL);
2062 result = nir_build_alu(&b, nir_op_i2imp, srcs[0], NULL, NULL, NULL);
2067 result = nir_build_alu(&b, nir_op_i2imp, srcs[0], NULL, NULL, NULL);
2081 result = nir_mov(&b, srcs[0]);
2083 case ir_unop_trunc: result = nir_ftrunc(&b, srcs[0]); break;
2084 case ir_unop_ceil: result = nir_fceil(&b, srcs[0]); break;
2085 case ir_unop_floor: result = nir_ffloor(&b, srcs[0]); break;
2086 case ir_unop_fract: result = nir_ffract(&b, srcs[0]); break;
2087 case ir_unop_frexp_exp: result = nir_frexp_exp(&b, srcs[0]); break;
2088 case ir_unop_frexp_sig: result = nir_frexp_sig(&b, srcs[0]); break;
2089 case ir_unop_round_even: result = nir_fround_even(&b, srcs[0]); break;
2090 case ir_unop_sin: result = nir_fsin(&b, srcs[0]); break;
2091 case ir_unop_cos: result = nir_fcos(&b, srcs[0]); break;
2092 case ir_unop_dFdx: result = nir_fddx(&b, srcs[0]); break;
2093 case ir_unop_dFdy: result = nir_fddy(&b, srcs[0]); break;
2094 case ir_unop_dFdx_fine: result = nir_fddx_fine(&b, srcs[0]); break;
2095 case ir_unop_dFdy_fine: result = nir_fddy_fine(&b, srcs[0]); break;
2096 case ir_unop_dFdx_coarse: result = nir_fddx_coarse(&b, srcs[0]); break;
2097 case ir_unop_dFdy_coarse: result = nir_fddy_coarse(&b, srcs[0]); break;
2099 result = nir_pack_snorm_2x16(&b, srcs[0]);
2102 result = nir_pack_snorm_4x8(&b, srcs[0]);
2105 result = nir_pack_unorm_2x16(&b, srcs[0]);
2108 result = nir_pack_unorm_4x8(&b, srcs[0]);
2111 result = nir_pack_half_2x16(&b, srcs[0]);
2114 result = nir_unpack_snorm_2x16(&b, srcs[0]);
2117 result = nir_unpack_snorm_4x8(&b, srcs[0]);
2120 result = nir_unpack_unorm_2x16(&b, srcs[0]);
2123 result = nir_unpack_unorm_4x8(&b, srcs[0]);
2126 result = nir_unpack_half_2x16(&b, srcs[0]);
2133 result = nir_pack_64_2x32(&b, srcs[0]);
2140 result = nir_unpack_64_2x32(&b, srcs[0]);
2143 result = nir_bitfield_reverse(&b, srcs[0]);
2146 result = nir_bit_count(&b, srcs[0]);
2151 result = nir_ufind_msb(&b, srcs[0]);
2154 result = nir_ifind_msb(&b, srcs[0]);
2161 result = nir_find_lsb(&b, srcs[0]);
2176 result = nir_atan(&b, srcs[0]);
2180 result = type_is_float(out_type) ? nir_fadd(&b, srcs[0], srcs[1])
2181 : nir_iadd(&b, srcs[0], srcs[1]);
2184 result = type_is_signed(out_type) ? nir_iadd_sat(&b, srcs[0], srcs[1])
2185 : nir_uadd_sat(&b, srcs[0], srcs[1]);
2188 result = type_is_float(out_type) ? nir_fsub(&b, srcs[0], srcs[1])
2189 : nir_isub(&b, srcs[0], srcs[1]);
2192 result = type_is_signed(out_type) ? nir_isub_sat(&b, srcs[0], srcs[1])
2193 : nir_usub_sat(&b, srcs[0], srcs[1]);
2199 result = type_is_signed(types[0]) ? nir_uabs_isub(&b, srcs[0], srcs[1])
2200 : nir_uabs_usub(&b, srcs[0], srcs[1]);
2203 result = type_is_signed(out_type) ? nir_ihadd(&b, srcs[0], srcs[1])
2204 : nir_uhadd(&b, srcs[0], srcs[1]);
2207 result = type_is_signed(out_type) ? nir_irhadd(&b, srcs[0], srcs[1])
2208 : nir_urhadd(&b, srcs[0], srcs[1]);
2211 result = type_is_signed(out_type) ? nir_imul_32x16(&b, srcs[0], srcs[1])
2212 : nir_umul_32x16(&b, srcs[0], srcs[1]);
2216 result = nir_fmul(&b, srcs[0], srcs[1]);
2220 result = nir_imul_2x32_64(&b, srcs[0], srcs[1]);
2224 result = nir_umul_2x32_64(&b, srcs[0], srcs[1]);
2226 result = nir_imul(&b, srcs[0], srcs[1]);
2230 result = nir_fdiv(&b, srcs[0], srcs[1]);
2232 result = nir_idiv(&b, srcs[0], srcs[1]);
2234 result = nir_udiv(&b, srcs[0], srcs[1]);
2237 result = type_is_float(out_type) ? nir_fmod(&b, srcs[0], srcs[1])
2238 : nir_umod(&b, srcs[0], srcs[1]);
2242 result = nir_fmin(&b, srcs[0], srcs[1]);
2244 result = nir_imin(&b, srcs[0], srcs[1]);
2246 result = nir_umin(&b, srcs[0], srcs[1]);
2250 result = nir_fmax(&b, srcs[0], srcs[1]);
2252 result = nir_imax(&b, srcs[0], srcs[1]);
2254 result = nir_umax(&b, srcs[0], srcs[1]);
2256 case ir_binop_pow: result = nir_fpow(&b, srcs[0], srcs[1]); break;
2257 case ir_binop_bit_and: result = nir_iand(&b, srcs[0], srcs[1]); break;
2258 case ir_binop_bit_or: result = nir_ior(&b, srcs[0], srcs[1]); break;
2259 case ir_binop_bit_xor: result = nir_ixor(&b, srcs[0], srcs[1]); break;
2261 result = nir_iand(&b, srcs[0], srcs[1]);
2264 result = nir_ior(&b, srcs[0], srcs[1]);
2267 result = nir_ixor(&b, srcs[0], srcs[1]);
2269 case ir_binop_lshift: result = nir_ishl(&b, srcs[0], nir_u2u32(&b, srcs[1])); break;
2271 result = (type_is_signed(out_type)) ? nir_ishr(&b, srcs[0], nir_u2u32(&b, srcs[1]))
2272 : nir_ushr(&b, srcs[0], nir_u2u32(&b, srcs[1]));
2275 result = (out_type == GLSL_TYPE_INT) ? nir_imul_high(&b, srcs[0], srcs[1])
2276 : nir_umul_high(&b, srcs[0], srcs[1]);
2278 case ir_binop_carry: result = nir_uadd_carry(&b, srcs[0], srcs[1]); break;
2279 case ir_binop_borrow: result = nir_usub_borrow(&b, srcs[0], srcs[1]); break;
2282 result = nir_flt(&b, srcs[0], srcs[1]);
2284 result = nir_ilt(&b, srcs[0], srcs[1]);
2286 result = nir_ult(&b, srcs[0], srcs[1]);
2290 result = nir_fge(&b, srcs[0], srcs[1]);
2292 result = nir_ige(&b, srcs[0], srcs[1]);
2294 result = nir_uge(&b, srcs[0], srcs[1]);
2298 result = nir_feq(&b, srcs[0], srcs[1]);
2300 result = nir_ieq(&b, srcs[0], srcs[1]);
2304 result = nir_fneu(&b, srcs[0], srcs[1]);
2306 result = nir_ine(&b, srcs[0], srcs[1]);
2311 case 1: result = nir_feq(&b, srcs[0], srcs[1]); break;
2312 case 2: result = nir_ball_fequal2(&b, srcs[0], srcs[1]); break;
2313 case 3: result = nir_ball_fequal3(&b, srcs[0], srcs[1]); break;
2314 case 4: result = nir_ball_fequal4(&b, srcs[0], srcs[1]); break;
2320 case 1: result = nir_ieq(&b, srcs[0], srcs[1]); break;
2321 case 2: result = nir_ball_iequal2(&b, srcs[0], srcs[1]); break;
2322 case 3: result = nir_ball_iequal3(&b, srcs[0], srcs[1]); break;
2323 case 4: result = nir_ball_iequal4(&b, srcs[0], srcs[1]); break;
2332 case 1: result = nir_fneu(&b, srcs[0], srcs[1]); break;
2333 case 2: result = nir_bany_fnequal2(&b, srcs[0], srcs[1]); break;
2334 case 3: result = nir_bany_fnequal3(&b, srcs[0], srcs[1]); break;
2335 case 4: result = nir_bany_fnequal4(&b, srcs[0], srcs[1]); break;
2341 case 1: result = nir_ine(&b, srcs[0], srcs[1]); break;
2342 case 2: result = nir_bany_inequal2(&b, srcs[0], srcs[1]); break;
2343 case 3: result = nir_bany_inequal3(&b, srcs[0], srcs[1]); break;
2344 case 4: result = nir_bany_inequal4(&b, srcs[0], srcs[1]); break;
2351 result = nir_fdot(&b, srcs[0], srcs[1]);
2354 result = nir_vector_extract(&b, srcs[0], srcs[1]);
2358 result = nir_atan2(&b, srcs[0], srcs[1]);
2361 case ir_binop_ldexp: result = nir_ldexp(&b, srcs[0], srcs[1]); break;
2363 result = nir_ffma(&b, srcs[0], srcs[1], srcs[2]);
2366 result = nir_flrp(&b, srcs[0], srcs[1], srcs[2]);
2369 result = nir_bcsel(&b, srcs[0], srcs[1], srcs[2]);
2373 nir_ibitfield_extract(&b, nir_i2i32(&b, srcs[0]), nir_i2i32(&b, srcs[1]), nir_i2i32(&b, srcs[2])) :
2374 nir_ubitfield_extract(&b, nir_u2u32(&b, srcs[0]), nir_i2i32(&b, srcs[1]), nir_i2i32(&b, srcs[2]));
2378 nir_u2u32(&b, srcs[0]), nir_u2u32(&b, srcs[1]),
2379 nir_i2i32(&b, srcs[2]), nir_i2i32(&b, srcs[3]));
2382 result = nir_vec(&b, srcs, ir->type->vector_elements);