turnip: Handle struct varyings

For the moment, ir3 compiler doesn't handle struct varyings but turnip
at least needs to handle them. So we do scan varyings before ir3
compilation, get flattend(up to vec4) inouts and set this information
beforehand.

Presumably this could be shared with freedreno in the future.

Signed-off-by: Hyunjun Ko <zzoon@igalia.com>
Status Job ID Name Coverage
  Container
manual #2422651
aarch64 manual
arm_build
manual #2422653
aarch64 manual
arm_test
manual #2422655
windows shell 1809 mesa manual
windows_build_vs2019
manual #2422645
manual
x86_build
manual #2422650
manual
x86_build_old
manual #2422647
manual
x86_test-gl
manual #2422648
manual
x86_test-vk
 
  Meson X86 64
created #2422663
meson-clang
created #2422661
meson-classic
created #2422664
meson-clover
created #2422666
meson-clover-old-llvm
created #2422659
meson-gallium
created #2422658
meson-testing
created #2422667
meson-vulkan
 
  Scons
created #2422669
allowed to fail
scons-win64
 
  Meson Misc
created #2422672
aarch64
meson-arm64
created #2422674
aarch64
meson-arm64-build-test
created #2422671
aarch64
meson-armhf
created #2422679
meson-i386
created #2422683
meson-mingw32-x86_64
created #2422682
kvm
meson-ppc64el
created #2422681
kvm
meson-s390x
created #2422677
windows docker 1809 mesa
meson-windows-vs2019
 
  Llvmpipe
created #2422687
llvmpipe-gles2
created #2422688
llvmpipe-traces
created #2422685
piglit-glslparser
created #2422684
piglit-quick_gl
created #2422686
piglit-quick_shader
 
  Softpipe
created #2422689
softpipe-gles2
created #2422692
softpipe-gles31 1/4
created #2422690
softpipe-gles3 1/2
created #2422693
softpipe-gles31 2/4
created #2422694
softpipe-gles31 3/4
created #2422695
softpipe-gles31 4/4
created #2422691
softpipe-gles3 2/2
 
  Freedreno
created #2422699
google-freedreno-db410c
arm64_a306_gles2
created #2422700
google-freedreno-db820c
arm64_a530_gles2
created #2422696
mesa-cheza
arm64_a630_gles2
created #2422698
mesa-cheza
arm64_a630_gles3
created #2422697
mesa-cheza
arm64_a630_gles31
 
  Panfrost
created #2422701
mesa-ci-aarch64-lava-collabora
panfrost-t720-gles2:arm64
created #2422702
mesa-ci-aarch64-lava-collabora
panfrost-t760-gles2:armhf
created #2422703
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles2:arm64
created #2422704
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64
 
  Radv
created #2422705
radv-fossils
 
  Virgl
created #2422706
virgl-gles2
created #2422707
virgl-gles3