diff options
author | Glenn Kennard <[email protected]> | 2017-03-05 18:26:54 +0100 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2018-02-09 09:53:26 +1000 |
commit | 1d871aa6268159cdc63ef846599456d9ba567206 (patch) | |
tree | 4b31dd59b094cc53e6260ac2e5a5a6f2ef55cf2e /src/gallium/drivers/r600/r600_asm.h | |
parent | 22fc5eff803d14e99e9f86db223ceedcef1b9108 (diff) |
r600g: Implement spilling of temp arrays (v2)
Pessimistically spills arrays if GPR limit is exceeded.
v2: fix r600 support [airlied]
Signed-off-by: Glenn Kennard <[email protected]>
Reviewed-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_asm.h')
-rw-r--r-- | src/gallium/drivers/r600/r600_asm.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_asm.h b/src/gallium/drivers/r600/r600_asm.h index 93ac717fb8f..5841044bf81 100644 --- a/src/gallium/drivers/r600/r600_asm.h +++ b/src/gallium/drivers/r600/r600_asm.h @@ -276,6 +276,7 @@ struct r600_bytecode { struct r600_isa* isa; struct r600_bytecode_output pending_outputs[5]; int n_pending_outputs; + boolean need_wait_ack; /* emit a pending WAIT_ACK prior to control flow */ }; /* eg_asm.c */ @@ -304,6 +305,8 @@ int r600_bytecode_add_output(struct r600_bytecode *bc, const struct r600_bytecode_output *output); int r600_bytecode_add_pending_output(struct r600_bytecode *bc, const struct r600_bytecode_output *output); +void r600_bytecode_need_wait_ack(struct r600_bytecode *bc, boolean needed); +boolean r600_bytecode_get_need_wait_ack(struct r600_bytecode *bc); int r600_bytecode_build(struct r600_bytecode *bc); int r600_bytecode_add_cf(struct r600_bytecode *bc); int r600_bytecode_add_cfinst(struct r600_bytecode *bc, |