summaryrefslogtreecommitdiffstats
path: root/src/intel/compiler/brw_eu.h
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2017-12-12 12:05:03 -0800
committerFrancisco Jerez <[email protected]>2018-03-02 11:28:56 -0800
commite7c9adca5726a8c96de20ae7c5f21a30061db392 (patch)
tree0fc5f36bfcafaf9db3c6e076ee85b0d5038461a2 /src/intel/compiler/brw_eu.h
parent6edb332b44b2570abac8fea2123050ea0f84e1e6 (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.h18
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,