diff options
author | Kenneth Graunke <[email protected]> | 2017-09-24 12:42:52 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2017-09-26 15:35:14 -0700 |
commit | a553eb0fdfbf62a904abe28acc0339815fc3217a (patch) | |
tree | 6816b7c760e0d37e31fc8d4f987f909b6898ed32 /src/intel | |
parent | 66342c997fb7892034e537d1456c37e6981c2fdb (diff) |
i965: Support copy propagating of untyped atomic surface indexes.
In the vec4 backend, SHADER_OPCODE_UNTYPED_ATOMIC's src[1] is the
surface index. We want to copy propagate so we can use an immediate
message descriptor, rather than an indirect send.
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/compiler/brw_vec4_copy_propagation.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/intel/compiler/brw_vec4_copy_propagation.cpp b/src/intel/compiler/brw_vec4_copy_propagation.cpp index c1ae32a2936..63155ecdfb0 100644 --- a/src/intel/compiler/brw_vec4_copy_propagation.cpp +++ b/src/intel/compiler/brw_vec4_copy_propagation.cpp @@ -190,6 +190,13 @@ try_constant_propagate(const struct gen_device_info *devinfo, inst->src[arg] = value; return true; + case SHADER_OPCODE_UNTYPED_ATOMIC: + if (arg == 1) { + inst->src[arg] = value; + return true; + } + break; + case SHADER_OPCODE_POW: case SHADER_OPCODE_INT_QUOTIENT: case SHADER_OPCODE_INT_REMAINDER: |