Lines Matching refs:nir_builder

37 typedef struct nir_builder {
49 } nir_builder;
51 void nir_builder_init(nir_builder *build, nir_function_impl *impl);
53 nir_builder MUST_CHECK PRINTFLIKE(3, 4)
58 typedef bool (*nir_instr_pass_cb)(struct nir_builder *, nir_instr *, void *);
83 nir_builder b;
103 void nir_builder_instr_insert(nir_builder *build, nir_instr *instr);
106 nir_builder_last_instr(nir_builder *build)
114 nir_build_alu(nir_builder *build, nir_op op, nir_ssa_def *src0,
119 nir_build_alu1(nir_builder *build, nir_op op, nir_ssa_def *src0);
121 nir_build_alu2(nir_builder *build, nir_op op, nir_ssa_def *src0,
124 nir_build_alu3(nir_builder *build, nir_op op, nir_ssa_def *src0,
127 nir_build_alu4(nir_builder *build, nir_op op, nir_ssa_def *src0,
130 nir_ssa_def *nir_build_alu_src_arr(nir_builder *build, nir_op op, nir_ssa_def **srcs);
132 nir_instr *nir_builder_last_instr(nir_builder *build);
134 void nir_builder_cf_insert(nir_builder *build, nir_cf_node *cf);
136 bool nir_builder_is_inside_cf(nir_builder *build, nir_cf_node *cf_node);
139 nir_push_if_src(nir_builder *build, nir_src condition);
142 nir_push_if(nir_builder *build, nir_ssa_def *condition);
145 nir_push_else(nir_builder *build, nir_if *nif);
147 void nir_pop_if(nir_builder *build, nir_if *nif);
150 nir_if_phi(nir_builder *build, nir_ssa_def *then_def, nir_ssa_def *else_def);
153 nir_push_loop(nir_builder *build);
155 void nir_pop_loop(nir_builder *build, nir_loop *loop);
158 nir_ssa_undef(nir_builder *build, unsigned num_components, unsigned bit_size)
173 nir_build_imm(nir_builder *build, unsigned num_components,
189 nir_imm_zero(nir_builder *build, unsigned num_components, unsigned bit_size)
202 nir_imm_boolN_t(nir_builder *build, bool x, unsigned bit_size)
209 nir_imm_bool(nir_builder *build, bool x)
215 nir_imm_true(nir_builder *build)
221 nir_imm_false(nir_builder *build)
227 nir_imm_floatN_t(nir_builder *build, double x, unsigned bit_size)
234 nir_imm_float16(nir_builder *build, float x)
240 nir_imm_float(nir_builder *build, float x)
246 nir_imm_double(nir_builder *build, double x)
252 nir_imm_vec2(nir_builder *build, float x, float y)
262 nir_imm_vec3(nir_builder *build, float x, float y, float z)
273 nir_imm_vec4(nir_builder *build, float x, float y, float z, float w)
286 nir_imm_vec4_16(nir_builder *build, float x, float y, float z, float w)
299 nir_imm_intN_t(nir_builder *build, uint64_t x, unsigned bit_size)
306 nir_imm_int(nir_builder *build, int x)
312 nir_imm_int64(nir_builder *build, int64_t x)
318 nir_imm_ivec2(nir_builder *build, int x, int y)
329 nir_imm_ivec3(nir_builder *build, int x, int y, int z)
341 nir_imm_ivec4(nir_builder *build, int x, int y, int z, int w)
354 nir_builder_alu_instr_finish_and_insert(nir_builder *build, nir_alu_instr *instr);
358 nir_build_alu_src_arr(nir_builder *build, nir_op op, nir_ssa_def **srcs);
362 nir_load_system_value(nir_builder *build, nir_intrinsic_op op, int index,
369 nir_vec(nir_builder *build, nir_ssa_def **comp, unsigned num_components)
375 nir_vec_scalars(nir_builder *build, nir_ssa_scalar *comp, unsigned num_components);
378 nir_mov_alu(nir_builder *build, nir_alu_src src, unsigned num_components)
406 nir_swizzle(nir_builder *build, nir_ssa_def *src, const unsigned *swiz,
428 nir_fdot(nir_builder *build, nir_ssa_def *src0, nir_ssa_def *src1)
447 nir_ball_iequal(nir_builder *b, nir_ssa_def *src0, nir_ssa_def *src1)
463 nir_ball(nir_builder *b, nir_ssa_def *src)
469 nir_bany_inequal(nir_builder *b, nir_ssa_def *src0, nir_ssa_def *src1)
485 nir_bany(nir_builder *b, nir_ssa_def *src)
491 nir_channel(nir_builder *b, nir_ssa_def *def, unsigned c)
497 nir_channels(nir_builder *b, nir_ssa_def *def, nir_component_mask_t mask)
511 _nir_select_from_array_helper(nir_builder *b, nir_ssa_def **arr,
526 nir_select_from_ssa_def_array(nir_builder *b, nir_ssa_def **arr,
533 nir_vector_extract(nir_builder *b, nir_ssa_def *vec, nir_ssa_def *c)
552 nir_vector_insert_imm(nir_builder *b, nir_ssa_def *vec,
576 nir_vector_insert(nir_builder *b, nir_ssa_def *vec, nir_ssa_def *scalar,
597 /* nir_builder will automatically splat out scalars to vectors so an
606 nir_i2i(nir_builder *build, nir_ssa_def *x, unsigned dest_bit_size)
621 nir_u2u(nir_builder *build, nir_ssa_def *x, unsigned dest_bit_size)
636 nir_iadd_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
649 nir_iadd_imm_nuw(nir_builder *b, nir_ssa_def *x, uint64_t y)
658 nir_iadd_nuw(nir_builder *b, nir_ssa_def *x, nir_ssa_def *y)
666 nir_ieq_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
672 nir_ine_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
679 nir_isub_imm(nir_builder *build, uint64_t y, nir_ssa_def *x)
685 _nir_mul_imm(nir_builder *build, nir_ssa_def *x, uint64_t y, bool amul)
705 nir_imul_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
711 nir_amul_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
717 nir_fadd_imm(nir_builder *build, nir_ssa_def *x, double y)
723 nir_fmul_imm(nir_builder *build, nir_ssa_def *x, double y)
729 nir_iand_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
744 nir_test_mask(nir_builder *build, nir_ssa_def *x, uint64_t mask)
751 nir_ior_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
765 nir_ishl_imm(nir_builder *build, nir_ssa_def *x, uint32_t y)
777 nir_ishr_imm(nir_builder *build, nir_ssa_def *x, uint32_t y)
787 nir_ushr_imm(nir_builder *build, nir_ssa_def *x, uint32_t y)
797 nir_udiv_imm(nir_builder *build, nir_ssa_def *x, uint64_t y)
812 nir_ibfe_imm(nir_builder *build, nir_ssa_def *x, uint32_t offset, uint32_t size)
818 nir_ubfe_imm(nir_builder *build, nir_ssa_def *x, uint32_t offset, uint32_t size)
824 nir_fclamp(nir_builder *b,
831 nir_iclamp(nir_builder *b,
838 nir_uclamp(nir_builder *b,
845 nir_ffma_imm12(nir_builder *build, nir_ssa_def *src0, double src1, double src2)
855 nir_ffma_imm1(nir_builder *build, nir_ssa_def *src0, double src1, nir_ssa_def *src2)
861 nir_ffma_imm2(nir_builder *build, nir_ssa_def *src0, nir_ssa_def *src1, double src2)
867 nir_a_minus_bc(nir_builder *build, nir_ssa_def *src0, nir_ssa_def *src1,
874 nir_pack_bits(nir_builder *b, nir_ssa_def *src, unsigned dest_bit_size)
907 nir_unpack_bits(nir_builder *b, nir_ssa_def *src, unsigned dest_bit_size)
955 nir_extract_bits(nir_builder *b, nir_ssa_def **srcs, unsigned num_srcs,
1021 nir_bitcast_vector(nir_builder *b, nir_ssa_def *src, unsigned dest_bit_size)
1032 nir_trim_vector(nir_builder *b, nir_ssa_def *src, unsigned num_components)
1046 nir_pad_vector(nir_builder *b, nir_ssa_def *src, unsigned num_components)
1069 nir_pad_vector_imm_int(nir_builder *b, nir_ssa_def *src, uint64_t imm_val,
1092 nir_pad_vec4(nir_builder *b, nir_ssa_def *src)
1104 nir_resize_vector(nir_builder *b, nir_ssa_def *src, unsigned num_components)
1113 nir_ssa_for_src(nir_builder *build, nir_src src, int num_components);
1116 nir_ssa_for_alu_src(nir_builder *build, nir_alu_instr *instr, unsigned srcn);
1127 nir_build_deref_var(nir_builder *build, nir_variable *var)
1145 nir_build_deref_array(nir_builder *build, nir_deref_instr *parent,
1172 nir_build_deref_array_imm(nir_builder *build, nir_deref_instr *parent,
1183 nir_build_deref_ptr_as_array(nir_builder *build, nir_deref_instr *parent,
1210 nir_build_deref_array_wildcard(nir_builder *build, nir_deref_instr *parent)
1232 nir_build_deref_struct(nir_builder *build, nir_deref_instr *parent,
1255 nir_build_deref_cast(nir_builder *build, nir_ssa_def *parent,
1276 nir_alignment_deref_cast(nir_builder *build, nir_deref_instr *parent,
1305 nir_build_deref_follower(nir_builder *b, nir_deref_instr *parent,
1351 nir_load_reg(nir_builder *build, nir_register *reg)
1357 nir_store_reg(nir_builder *build, nir_register *reg,
1371 nir_load_deref_with_access(nir_builder *build, nir_deref_instr *deref,
1381 nir_load_deref(nir_builder *build, nir_deref_instr *deref)
1387 nir_store_deref_with_access(nir_builder *build, nir_deref_instr *deref,
1397 nir_store_deref(nir_builder *build, nir_deref_instr *deref,
1405 nir_copy_deref_with_access(nir_builder *build, nir_deref_instr *dest,
1415 nir_copy_deref(nir_builder *build, nir_deref_instr *dest, nir_deref_instr *src)
1423 nir_memcpy_deref_with_access(nir_builder *build, nir_deref_instr *dest,
1434 nir_memcpy_deref(nir_builder *build, nir_deref_instr *dest,
1443 nir_load_var(nir_builder *build, nir_variable *var)
1449 nir_store_var(nir_builder *build, nir_variable *var, nir_ssa_def *value,
1456 nir_copy_var(nir_builder *build, nir_variable *dest, nir_variable *src)
1463 nir_load_array_var(nir_builder *build, nir_variable *var, nir_ssa_def *index)
1471 nir_load_array_var_imm(nir_builder *build, nir_variable *var, int64_t index)
1479 nir_store_array_var(nir_builder *build, nir_variable *var, nir_ssa_def *index,
1488 nir_store_array_var_imm(nir_builder *build, nir_variable *var, int64_t index,
1498 nir_load_global(nir_builder *build, nir_ssa_def *addr, unsigned align,
1514 nir_store_global(nir_builder *build, nir_ssa_def *addr, unsigned align,
1530 nir_load_global_constant(nir_builder *build, nir_ssa_def *addr, unsigned align,
1546 nir_load_param(nir_builder *build, uint32_t param_idx)
1555 nir_mask(nir_builder *b, nir_ssa_def *bits, unsigned dst_bit_size)
1562 nir_f2b(nir_builder *build, nir_ssa_def *f)
1568 nir_i2b(nir_builder *build, nir_ssa_def *i)
1574 nir_b2f(nir_builder *build, nir_ssa_def *b, uint32_t bit_size)
1586 nir_b2i(nir_builder *build, nir_ssa_def *b, uint32_t bit_size)
1598 nir_load_barycentric(nir_builder *build, nir_intrinsic_op op,
1610 nir_jump(nir_builder *build, nir_jump_type jump_type)
1618 nir_goto(nir_builder *build, struct nir_block *target)
1627 nir_goto_if(nir_builder *build, struct nir_block *target, nir_src cond,
1639 nir_compare_func(nir_builder *b, enum compare_func func,
1643 nir_scoped_memory_barrier(nir_builder *b,
1652 nir_type_convert(nir_builder *b,
1659 nir_convert_to_bit_size(nir_builder *b,
1668 nir_i2iN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1674 nir_u2uN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1680 nir_b2bN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1686 nir_f2fN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1692 nir_i2fN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1699 nir_u2fN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1706 nir_f2uN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1713 nir_f2iN(nir_builder *b, nir_ssa_def *src, unsigned bit_size)
1720 nir_gen_rect_vertices(nir_builder *b, nir_ssa_def *z, nir_ssa_def *w);