Sounds like you're doing something similar to nouveau's GlobalCSE
pass. On the off chance it's useful, you can have a look at how we do
it here:
https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp#n3118
On Fri, Jul 29, 2016 at 4:29 AM, Kenneth Grau
On Fri, 2016-07-29 at 01:29 -0700, Kenneth Graunke wrote:
> I found a shader in Tales of Maj'Eyal that contains:
>
> if ssa_21 {
> block block_1:
> /* preds: block_0 */
> ...instructions that prevent the select peephole...
> v
I found a shader in Tales of Maj'Eyal that contains:
if ssa_21 {
block block_1:
/* preds: block_0 */
...instructions that prevent the select peephole...
vec1 32 ssa_23 = imov ssa_4
vec1 32 ssa_24 = imov ssa_4.y