mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 17:10:11 +01:00
i965/fs: Constant propagate into 2-src math instructions on Gen8.
total instructions in shared programs: 1878133 -> 1876986 (-0.06%) instructions in affected programs: 153007 -> 151860 (-0.75%) Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
aca4a951ea
commit
038eb649b3
1 changed files with 9 additions and 2 deletions
|
|
@ -368,7 +368,8 @@ fs_visitor::try_copy_propagate(fs_inst *inst, int arg, acp_entry *entry)
|
|||
|
||||
|
||||
static bool
|
||||
try_constant_propagate(fs_inst *inst, acp_entry *entry)
|
||||
try_constant_propagate(struct brw_context *brw, fs_inst *inst,
|
||||
acp_entry *entry)
|
||||
{
|
||||
bool progress = false;
|
||||
|
||||
|
|
@ -396,6 +397,12 @@ try_constant_propagate(fs_inst *inst, acp_entry *entry)
|
|||
progress = true;
|
||||
break;
|
||||
|
||||
case SHADER_OPCODE_POW:
|
||||
case SHADER_OPCODE_INT_QUOTIENT:
|
||||
case SHADER_OPCODE_INT_REMAINDER:
|
||||
if (brw->gen < 8)
|
||||
break;
|
||||
/* fallthrough */
|
||||
case BRW_OPCODE_BFI1:
|
||||
case BRW_OPCODE_ASR:
|
||||
case BRW_OPCODE_SHL:
|
||||
|
|
@ -537,7 +544,7 @@ fs_visitor::opt_copy_propagate_local(void *copy_prop_ctx, bblock_t *block,
|
|||
foreach_list(entry_node, &acp[inst->src[i].reg % ACP_HASH_SIZE]) {
|
||||
acp_entry *entry = (acp_entry *)entry_node;
|
||||
|
||||
if (try_constant_propagate(inst, entry))
|
||||
if (try_constant_propagate(brw, inst, entry))
|
||||
progress = true;
|
||||
|
||||
if (try_copy_propagate(inst, i, entry))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue