diff options
author | Francisco Jerez <[email protected]> | 2017-12-12 12:05:03 -0800 |
---|---|---|
committer | Francisco Jerez <[email protected]> | 2018-03-02 11:28:56 -0800 |
commit | e7c9adca5726a8c96de20ae7c5f21a30061db392 (patch) | |
tree | 0fc5f36bfcafaf9db3c6e076ee85b0d5038461a2 /src/intel/compiler/brw_eu.h | |
parent | 6edb332b44b2570abac8fea2123050ea0f84e1e6 (diff) |
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 <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_eu.h')
-rw-r--r-- | src/intel/compiler/brw_eu.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/intel/compiler/brw_eu.h b/src/intel/compiler/brw_eu.h index 2d0f56f7938..a5f28d8fc65 100644 --- a/src/intel/compiler/brw_eu.h +++ b/src/intel/compiler/brw_eu.h @@ -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, |