mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-27 23:30:10 +01:00
i965: Pass nir_src/nir_dest by reference.
Cuts 6K of .text.
text data bss dec hex filename
5772372 264648 29320 6066340 5c90a4 lib/i965_dri.so before
5766074 264648 29320 6060042 5c780a lib/i965_dri.so after
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
9ca5ec2a31
commit
fb5dcb81cc
4 changed files with 18 additions and 18 deletions
|
|
@ -256,9 +256,9 @@ public:
|
|||
nir_tex_instr *instr);
|
||||
void nir_emit_jump(const brw::fs_builder &bld,
|
||||
nir_jump_instr *instr);
|
||||
fs_reg get_nir_src(nir_src src);
|
||||
fs_reg get_nir_src_imm(nir_src src);
|
||||
fs_reg get_nir_dest(nir_dest dest);
|
||||
fs_reg get_nir_src(const nir_src &src);
|
||||
fs_reg get_nir_src_imm(const nir_src &src);
|
||||
fs_reg get_nir_dest(const nir_dest &dest);
|
||||
fs_reg get_nir_image_deref(const nir_deref_var *deref);
|
||||
fs_reg get_indirect_offset(nir_intrinsic_instr *instr);
|
||||
void emit_percomp(const brw::fs_builder &bld, const fs_inst &inst,
|
||||
|
|
|
|||
|
|
@ -1451,7 +1451,7 @@ fs_visitor::nir_emit_undef(const fs_builder &bld, nir_ssa_undef_instr *instr)
|
|||
}
|
||||
|
||||
fs_reg
|
||||
fs_visitor::get_nir_src(nir_src src)
|
||||
fs_visitor::get_nir_src(const nir_src &src)
|
||||
{
|
||||
fs_reg reg;
|
||||
if (src.is_ssa) {
|
||||
|
|
@ -1474,14 +1474,14 @@ fs_visitor::get_nir_src(nir_src src)
|
|||
* Return an IMM for constants; otherwise call get_nir_src() as normal.
|
||||
*/
|
||||
fs_reg
|
||||
fs_visitor::get_nir_src_imm(nir_src src)
|
||||
fs_visitor::get_nir_src_imm(const nir_src &src)
|
||||
{
|
||||
nir_const_value *val = nir_src_as_const_value(src);
|
||||
return val ? fs_reg(brw_imm_d(val->i32[0])) : get_nir_src(src);
|
||||
}
|
||||
|
||||
fs_reg
|
||||
fs_visitor::get_nir_dest(nir_dest dest)
|
||||
fs_visitor::get_nir_dest(const nir_dest &dest)
|
||||
{
|
||||
if (dest.is_ssa) {
|
||||
const brw_reg_type reg_type =
|
||||
|
|
|
|||
|
|
@ -326,14 +326,14 @@ public:
|
|||
virtual void nir_emit_undef(nir_ssa_undef_instr *instr);
|
||||
virtual void nir_emit_ssbo_atomic(int op, nir_intrinsic_instr *instr);
|
||||
|
||||
dst_reg get_nir_dest(nir_dest dest, enum brw_reg_type type);
|
||||
dst_reg get_nir_dest(nir_dest dest, nir_alu_type type);
|
||||
dst_reg get_nir_dest(nir_dest dest);
|
||||
src_reg get_nir_src(nir_src src, enum brw_reg_type type,
|
||||
dst_reg get_nir_dest(const nir_dest &dest, enum brw_reg_type type);
|
||||
dst_reg get_nir_dest(const nir_dest &dest, nir_alu_type type);
|
||||
dst_reg get_nir_dest(const nir_dest &dest);
|
||||
src_reg get_nir_src(const nir_src &src, enum brw_reg_type type,
|
||||
unsigned num_components = 4);
|
||||
src_reg get_nir_src(nir_src src, nir_alu_type type,
|
||||
src_reg get_nir_src(const nir_src &src, nir_alu_type type,
|
||||
unsigned num_components = 4);
|
||||
src_reg get_nir_src(nir_src src,
|
||||
src_reg get_nir_src(const nir_src &src,
|
||||
unsigned num_components = 4);
|
||||
src_reg get_indirect_offset(nir_intrinsic_instr *instr);
|
||||
|
||||
|
|
|
|||
|
|
@ -267,7 +267,7 @@ dst_reg_for_nir_reg(vec4_visitor *v, nir_register *nir_reg,
|
|||
}
|
||||
|
||||
dst_reg
|
||||
vec4_visitor::get_nir_dest(nir_dest dest)
|
||||
vec4_visitor::get_nir_dest(const nir_dest &dest)
|
||||
{
|
||||
if (dest.is_ssa) {
|
||||
dst_reg dst = dst_reg(VGRF, alloc.allocate(1));
|
||||
|
|
@ -280,19 +280,19 @@ vec4_visitor::get_nir_dest(nir_dest dest)
|
|||
}
|
||||
|
||||
dst_reg
|
||||
vec4_visitor::get_nir_dest(nir_dest dest, enum brw_reg_type type)
|
||||
vec4_visitor::get_nir_dest(const nir_dest &dest, enum brw_reg_type type)
|
||||
{
|
||||
return retype(get_nir_dest(dest), type);
|
||||
}
|
||||
|
||||
dst_reg
|
||||
vec4_visitor::get_nir_dest(nir_dest dest, nir_alu_type type)
|
||||
vec4_visitor::get_nir_dest(const nir_dest &dest, nir_alu_type type)
|
||||
{
|
||||
return get_nir_dest(dest, brw_type_for_nir_type(type));
|
||||
}
|
||||
|
||||
src_reg
|
||||
vec4_visitor::get_nir_src(nir_src src, enum brw_reg_type type,
|
||||
vec4_visitor::get_nir_src(const nir_src &src, enum brw_reg_type type,
|
||||
unsigned num_components)
|
||||
{
|
||||
dst_reg reg;
|
||||
|
|
@ -314,14 +314,14 @@ vec4_visitor::get_nir_src(nir_src src, enum brw_reg_type type,
|
|||
}
|
||||
|
||||
src_reg
|
||||
vec4_visitor::get_nir_src(nir_src src, nir_alu_type type,
|
||||
vec4_visitor::get_nir_src(const nir_src &src, nir_alu_type type,
|
||||
unsigned num_components)
|
||||
{
|
||||
return get_nir_src(src, brw_type_for_nir_type(type), num_components);
|
||||
}
|
||||
|
||||
src_reg
|
||||
vec4_visitor::get_nir_src(nir_src src, unsigned num_components)
|
||||
vec4_visitor::get_nir_src(const nir_src &src, unsigned num_components)
|
||||
{
|
||||
/* if type is not specified, default to signed int */
|
||||
return get_nir_src(src, nir_type_int, num_components);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue