intel/eu: Plumb header present bit to codegen helpers for HDC messages.
This makes sure that the header-present bit of the message descriptor is in sync with the IR instruction fields, which gives the optimizer more control to avoid the overhead of setting up a message header when it's possible to do so. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -444,7 +444,8 @@ brw_untyped_atomic(struct brw_codegen *p,
|
||||
struct brw_reg surface,
|
||||
unsigned atomic_op,
|
||||
unsigned msg_length,
|
||||
bool response_expected);
|
||||
bool response_expected,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_untyped_surface_read(struct brw_codegen *p,
|
||||
@@ -459,7 +460,8 @@ brw_untyped_surface_write(struct brw_codegen *p,
|
||||
struct brw_reg payload,
|
||||
struct brw_reg surface,
|
||||
unsigned msg_length,
|
||||
unsigned num_channels);
|
||||
unsigned num_channels,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_typed_atomic(struct brw_codegen *p,
|
||||
@@ -468,7 +470,8 @@ brw_typed_atomic(struct brw_codegen *p,
|
||||
struct brw_reg surface,
|
||||
unsigned atomic_op,
|
||||
unsigned msg_length,
|
||||
bool response_expected);
|
||||
bool response_expected,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_typed_surface_read(struct brw_codegen *p,
|
||||
@@ -476,14 +479,16 @@ brw_typed_surface_read(struct brw_codegen *p,
|
||||
struct brw_reg payload,
|
||||
struct brw_reg surface,
|
||||
unsigned msg_length,
|
||||
unsigned num_channels);
|
||||
unsigned num_channels,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_typed_surface_write(struct brw_codegen *p,
|
||||
struct brw_reg payload,
|
||||
struct brw_reg surface,
|
||||
unsigned msg_length,
|
||||
unsigned num_channels);
|
||||
unsigned num_channels,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_byte_scattered_read(struct brw_codegen *p,
|
||||
@@ -498,7 +503,8 @@ brw_byte_scattered_write(struct brw_codegen *p,
|
||||
struct brw_reg payload,
|
||||
struct brw_reg surface,
|
||||
unsigned msg_length,
|
||||
unsigned bit_size);
|
||||
unsigned bit_size,
|
||||
bool header_present);
|
||||
|
||||
void
|
||||
brw_memory_fence(struct brw_codegen *p,
|
||||
|
Reference in New Issue
Block a user