[Mesa-dev] [v2] Blorp blit compiler to use FS LIR

Topi Pohjolainen topi.pohjolainen at intel.com
Wed Jan 22 09:16:52 PST 2014


Here are the remaining patches rebased on top of the two small
fixes submitted earlier. Even though I included the entire
remaining series, I have revised only patches 1, 3, 4, 7, 19,
20, 21 and 23. These consist of manual changes due to the
aforementioned fixes, similar patching of gen8 as gen6/7
(earlier the gen8 generators were not upstreamed yet) and
finally the fixes and improvements suggested by Paul.

Topi Pohjolainen (23):
  i965/blorp: introduce separate eu-emitter for blit compiler
  i965/blorp: move emission of pixel kill into eu-emitter
  i965: rename tex_ms to tex_cms
  i965/fs: introduce non-compressed equivalent of tex_cms
  i965/blorp: move emission of texture lookup into eu-emitter
  i965/blorp: move emission of rt-write into eu-emitter
  i965/blorp: move emission of sample combining into eu-emitter
  i965/blorp: wrap emission of conditional assignment
  i965/blorp: wrap emission of if-equal-assignment
  i965/blorp: wrap MOV (/brw_MOV(&func, /emit_mov(/)
  i965/blorp: wrap AND (/brw_AND(&func, /emit_and(/)
  i965/blorp: wrap ADD (/brw_ADD(&func, /emit_add(/)
  i965/blorp: wrap SHR (/brw_SHR(&func, /emit_shr(/)
  i965/blorp: wrap SHL (/brw_SHL(&func, /emit_shl(/)
  i965/blorp: wrap OR (/brw_OR(&func, /emit_or(/)
  i965/blorp: wrap MUL (/brw_MUL(&func, /emit_mul(/)
  i965/blorp: wrap FRC (/brw_FRC(&func, /emit_frc(/)
  i965/blorp: wrap RNDD (/brw_RNDD(&func, /emit_rndd(/)
  i965/blorp: wrap brw_IF/ELSE/ENDIF() into eu-emitter
  i965/fs: allow unit tests to dump the final patched assembly
  i965/fs: introduce blorp specific rt-write for fs_generator
  i965/fs: add support for BRW_OPCODE_AVG in fs_generator
  i965/blorp: switch eu-emitter to use FS IR and fs_generator

 src/mesa/drivers/dri/i965/Makefile.sources        |   1 +
 src/mesa/drivers/dri/i965/brw_blorp_blit.cpp      | 523 ++++++++--------------
 src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp   | 136 ++++++
 src/mesa/drivers/dri/i965/brw_blorp_blit_eu.h     | 190 ++++++++
 src/mesa/drivers/dri/i965/brw_defines.h           |   4 +-
 src/mesa/drivers/dri/i965/brw_fs.cpp              |   2 +-
 src/mesa/drivers/dri/i965/brw_fs.h                |   6 +-
 src/mesa/drivers/dri/i965/brw_fs_generator.cpp    |  44 +-
 src/mesa/drivers/dri/i965/brw_fs_visitor.cpp      |   4 +-
 src/mesa/drivers/dri/i965/brw_shader.cpp          |  11 +-
 src/mesa/drivers/dri/i965/brw_vec4.cpp            |   2 +-
 src/mesa/drivers/dri/i965/brw_vec4_generator.cpp  |   4 +-
 src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp    |   2 +-
 src/mesa/drivers/dri/i965/gen8_fs_generator.cpp   |   8 +-
 src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp |   4 +-
 15 files changed, 589 insertions(+), 352 deletions(-)
 create mode 100644 src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp
 create mode 100644 src/mesa/drivers/dri/i965/brw_blorp_blit_eu.h

-- 
1.8.3.1



More information about the mesa-dev mailing list