i965/vec4: Convert src_reg/dst_reg to brw_reg at the end of the visitor.
authorKenneth Graunke <kenneth@whitecape.org>
Thu, 22 Oct 2015 23:04:15 +0000 (16:04 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 29 Oct 2015 23:56:41 +0000 (16:56 -0700)
commit73ff0ead3688519eb76ea8bc32eabb9004e6f37b
treea75403e5a18f523e7ac7c23e785bf21aafc18fd1
parentf75f21a24ae2dd83507f3d4d8007f0fcfe6db802
i965/vec4: Convert src_reg/dst_reg to brw_reg at the end of the visitor.

This patch makes the visitor convert registers to the HW_REG file at the
very end, after register allocation, post-RA scheduling, and dependency
control flagging.  After that, everything is in fixed brw_regs.

This simplifies the code generator, as it can just use the hardware
registers rather than having to interpret our abstract files.  In
particular, interpreting the UNIFORM file meant reading prog_data
to figure out where push constants are supposed to start.

Having the part of the code that performs register allocation also
translate everything to hardware registers seems sensible.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Matt Turner <mattst88@gmail.com>
src/mesa/drivers/dri/i965/brw_ir_vec4.h
src/mesa/drivers/dri/i965/brw_vec4.cpp
src/mesa/drivers/dri/i965/brw_vec4.h
src/mesa/drivers/dri/i965/brw_vec4_generator.cpp