Lines Matching defs:nb

104    case 2: return build_mat2_det(&b->nb, cols);
105 case 3: return build_mat3_det(&b->nb, cols);
106 case 4: return build_mat4_det(&b->nb, cols);
156 elem[r] = build_mat_subdet(&b->nb, src, size, c, r);
159 elem[r] = nir_fneg(&b->nb, elem[r]);
162 adj_col[c] = nir_vec(&b->nb, elem, size);
165 nir_ssa_def *det_inv = nir_frcp(&b->nb, build_mat_det(b, src));
169 val->elems[i]->def = nir_fmul(&b->nb, adj_col[i], det_inv);
307 struct nir_builder *nb = &b->nb;
325 dest->def = nir_radians(nb, src[0]);
328 dest->def = nir_degrees(nb, src[0]);
331 dest->def = nir_ftan(nb, src[0]);
335 nir_ssa_def *inf = nir_imm_floatN_t(&b->nb, INFINITY, src[0]->bit_size);
337 nir_imm_intN_t(&b->nb, (uint64_t)1 << (src[0]->bit_size - 1),
339 nir_ssa_def *sign = nir_fsign(nb, src[0]);
340 nir_ssa_def *abs = nir_fabs(nb, src[0]);
347 dest->def = nir_bcsel(nb,
348 nir_ieq(nb, abs, inf),
349 nir_iand(nb, src[0], sign_bit),
350 nir_fmul(nb, sign, nir_ffract(nb, abs)));
354 whole->def = nir_fmul(nb, sign, nir_ffloor(nb, abs));
360 nir_ssa_def *inf = nir_imm_floatN_t(&b->nb, INFINITY, src[0]->bit_size);
362 nir_imm_intN_t(&b->nb, (uint64_t)1 << (src[0]->bit_size - 1),
364 nir_ssa_def *sign = nir_fsign(nb, src[0]);
365 nir_ssa_def *abs = nir_fabs(nb, src[0]);
369 dest->elems[0]->def = nir_bcsel(nb,
370 nir_ieq(nb, abs, inf),
371 nir_iand(nb, src[0], sign_bit),
372 nir_fmul(nb, sign, nir_ffract(nb, abs)));
373 dest->elems[1]->def = nir_fmul(nb, sign, nir_ffloor(nb, abs));
390 const bool exact = nb->exact;
391 nb->exact = true;
393 nir_ssa_def *cmp = nir_slt(nb, src[1], src[0]);
395 nb->exact = exact;
396 dest->def = nir_fsub(nb, nir_imm_floatN_t(nb, 1.0f, cmp->bit_size), cmp);
401 dest->def = nir_fast_length(nb, src[0]);
404 dest->def = nir_fast_distance(nb, src[0], src[1]);
407 dest->def = nir_fast_normalize(nb, src[0]);
411 dest->def = nir_fexp(nb, src[0]);
415 dest->def = nir_flog(nb, src[0]);
419 dest->def = nir_fclamp(nb, src[0], src[1], src[2]);
422 nb->exact = true;
423 dest->def = nir_fclamp(nb, src[0], src[1], src[2]);
424 nb->exact = false;
427 dest->def = nir_uclamp(nb, src[0], src[1], src[2]);
430 dest->def = nir_iclamp(nb, src[0], src[1], src[2]);
434 dest->def = nir_cross3(nb, src[0], src[1]);
439 dest->def = nir_smoothstep(nb, src[0], src[1], src[2]);
445 nir_bcsel(nb, nir_flt(nb, nir_fdot(nb, src[2], src[1]),
446 NIR_IMM_FP(nb, 0.0)),
447 src[0], nir_fneg(nb, src[0]));
453 nir_a_minus_bc(nb, src[0],
455 nir_fmul(nb, nir_fdot(nb, src[0], src[1]),
456 NIR_IMM_FP(nb, 2.0)));
463 nir_ssa_def *n_dot_i = nir_fdot(nb, N, I);
464 nir_ssa_def *one = NIR_IMM_FP(nb, 1.0);
465 nir_ssa_def *zero = NIR_IMM_FP(nb, 0.0);
478 eta = nir_build_alu(nb, conversion_op, eta, NULL, NULL, NULL);
482 nir_a_minus_bc(nb, one, eta,
483 nir_fmul(nb, eta, nir_a_minus_bc(nb, one, n_dot_i, n_dot_i)));
485 nir_a_minus_bc(nb, nir_fmul(nb, eta, I),
486 nir_ffma(nb, eta, n_dot_i, nir_fsqrt(nb, k)),
489 dest->def = nir_bcsel(nb, nir_flt(nb, k, zero), zero, result);
496 nir_fmul_imm(nb, nir_fsub(nb, nir_fexp(nb, src[0]),
497 nir_fexp(nb, nir_fneg(nb, src[0]))),
504 nir_fmul_imm(nb, nir_fadd(nb, nir_fexp(nb, src[0]),
505 nir_fexp(nb, nir_fneg(nb, src[0]))),
520 nir_ssa_def *x = nir_fclamp(nb, src[0],
521 nir_imm_floatN_t(nb, -clamped_x, bit_size),
522 nir_imm_floatN_t(nb, clamped_x, bit_size));
530 const bool exact = nb->exact;
532 nb->exact = true;
533 nir_ssa_def *is_regular = nir_flt(nb,
534 nir_imm_floatN_t(nb, 0, bit_size),
535 nir_fabs(nb, src[0]));
540 nir_ssa_def *flushed = nir_fmul(nb,
542 nir_imm_floatN_t(nb, 1.0, bit_size));
543 nb->exact = exact;
545 dest->def = nir_bcsel(nb,
547 nir_fdiv(nb, nir_fsub(nb, nir_fexp(nb, x),
548 nir_fexp(nb, nir_fneg(nb, x))),
549 nir_fadd(nb, nir_fexp(nb, x),
550 nir_fexp(nb, nir_fneg(nb, x)))),
556 dest->def = nir_fmul(nb, nir_fsign(nb, src[0]),
557 nir_flog(nb, nir_fadd(nb, nir_fabs(nb, src[0]),
558 nir_fsqrt(nb, nir_ffma_imm2(nb, src[0], src[0], 1.0f)))));
561 dest->def = nir_flog(nb, nir_fadd(nb, src[0],
562 nir_fsqrt(nb, nir_ffma_imm2(nb, src[0], src[0], -1.0f))));
565 nir_ssa_def *one = nir_imm_floatN_t(nb, 1.0, src[0]->bit_size);
567 nir_fmul_imm(nb, nir_flog(nb, nir_fdiv(nb, nir_fadd(nb, src[0], one),
568 nir_fsub(nb, one, src[0]))),
574 dest->def = build_asin(nb, src[0], 0.086566724, -0.03102955, true);
579 nir_fsub(nb, nir_imm_floatN_t(nb, M_PI_2f, src[0]->bit_size),
580 build_asin(nb, src[0], 0.08132463, -0.02363318, false));
584 dest->def = nir_atan(nb, src[0]);
588 dest->def = nir_atan2(nb, src[0], src[1]);
592 dest->def = nir_frexp_sig(nb, src[0]);
596 exp->def = nir_frexp_exp(nb, src[0]);
603 dest->elems[0]->def = nir_frexp_sig(nb, src[0]);
604 dest->elems[1]->def = nir_frexp_exp(nb, src[0]);
614 b->nb.exact |= exact;
615 dest->def = nir_build_alu(&b->nb, op, src[0], src[1], src[2], NULL);
619 b->nb.exact = false;
643 nir_intrinsic_instr *intrin = nir_intrinsic_instr_create(b->nb.shader, op);
680 nir_builder_instr_insert(&b->nb, &intrin->instr);
684 def = nir_vector_extract(&b->nb, def, vec_deref->arr.index.ssa);