On Monday, December 12, 2016 4:35:46 PM PST Marek Olšák wrote:
[snip]
> Yeah, the GLSL compiler can't really do anything if it sees a bitcast.
> I tried to write a pass that removes bitcasts, but it's a PITA because
> you can have a vec4 where xzw are used as float and y as int.
> 
> I just gave up and figured that unrolling in LLVM IR would be simpler.
> 
> Marek

Yeah, this is one reason we need to get away from GLSL IR.  Programs
ported from DX11 have bitcasts out the wazoo.  NIR handles this much
better - since the types are part of the instruction, it magically sees
through all this rubbish.  You don't even need to think about it when
writing passes.  I suppose that's one thing that TGSI got right, and in
retrospect we got wrong.

--Ken

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to