The registers in the architecture register file don't share much in common, so there's no point in grouping them together. Use the HW_REG class instead. The vec4 backend already does this. --- src/mesa/drivers/dri/i965/brw_fs.cpp | 6 ------ src/mesa/drivers/dri/i965/brw_fs.h | 8 ++++---- src/mesa/drivers/dri/i965/brw_fs_generator.cpp | 3 --- src/mesa/drivers/dri/i965/brw_shader.h | 1 - src/mesa/drivers/dri/i965/brw_vec4.h | 2 +- 5 files changed, 5 insertions(+), 15 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index 2ebadc8..c33c5c0 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -2782,12 +2782,6 @@ fs_visitor::dump_instruction(backend_instruction *be_inst) case UNIFORM: printf("***u%d***", inst->dst.reg); break; - case ARF: - if (inst->dst.reg == BRW_ARF_NULL) - printf("(null)"); - else - printf("arf%d", inst->dst.reg); - break; default: printf("???"); break; diff --git a/src/mesa/drivers/dri/i965/brw_fs.h b/src/mesa/drivers/dri/i965/brw_fs.h index b2aa041..ced099f 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.h +++ b/src/mesa/drivers/dri/i965/brw_fs.h @@ -75,10 +75,10 @@ public: bool is_one() const; bool is_valid_3src() const; - /** Register file: ARF, GRF, MRF, IMM. */ + /** Register file: GRF, MRF, IMM. */ enum register_file file; /** - * Register number. For ARF/MRF, it's the hardware register. For + * Register number. For MRF, it's the hardware register. For * GRF, it's a virtual register number until register allocation */ int reg; @@ -107,8 +107,8 @@ public: }; static const fs_reg reg_undef; -static const fs_reg reg_null_f(ARF, BRW_ARF_NULL, BRW_REGISTER_TYPE_F); -static const fs_reg reg_null_d(ARF, BRW_ARF_NULL, BRW_REGISTER_TYPE_D); +static const fs_reg reg_null_f(retype(brw_null_reg(), BRW_REGISTER_TYPE_F)); +static const fs_reg reg_null_d(retype(brw_null_reg(), BRW_REGISTER_TYPE_D)); class ip_record : public exec_node { public: diff --git a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp index 7ce42c4..8cd96c9 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_generator.cpp @@ -845,8 +845,6 @@ fs_generator::generate_mov_dispatch_to_flags(fs_inst *inst) static uint32_t brw_file_from_reg(fs_reg *reg) { switch (reg->file) { - case ARF: - return BRW_ARCHITECTURE_REGISTER_FILE; case GRF: return BRW_GENERAL_REGISTER_FILE; case MRF: @@ -866,7 +864,6 @@ brw_reg_from_fs_reg(fs_reg *reg) switch (reg->file) { case GRF: - case ARF: case MRF: if (reg->smear == -1) { brw_reg = brw_vec8_reg(brw_file_from_reg(reg), reg->reg, 0); diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h index 55769ff..4dbd38d 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.h +++ b/src/mesa/drivers/dri/i965/brw_shader.h @@ -29,7 +29,6 @@ enum register_file { BAD_FILE, - ARF, GRF, MRF, IMM, diff --git a/src/mesa/drivers/dri/i965/brw_vec4.h b/src/mesa/drivers/dri/i965/brw_vec4.h index 689040b..0fac100 100644 --- a/src/mesa/drivers/dri/i965/brw_vec4.h +++ b/src/mesa/drivers/dri/i965/brw_vec4.h @@ -97,7 +97,7 @@ swizzle_for_size(int size); class reg { public: - /** Register file: ARF, GRF, MRF, IMM. */ + /** Register file: GRF, MRF, IMM. */ enum register_file file; /** virtual register number. 0 = fixed hw reg */ int reg; -- 1.8.3.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev