To reproduce: /home/tstellar/piglit/bin/texsubimage cube_map_array pbo -auto
-fbo
I've spent some time debugging this and it appears the result from the
v_cubeid_f32
instruction is causing the shader to access memory outside the bounds of the
texture.
If I replace v_cubeid_f32 $dst, $src0, $src1, $src2 instructions with v_mov_f32
$dst, 0.0 or v_mov_f32 $dst, 1.0
I no longer see vm protection faults.
However, if I replace the v_cubeid_f32 instructions with v_mov_f32 $dst, 2.0
then the vm protection faults return. So, it seems the bad case is whenever
the face id is computed as >= 2.0f.