spirv: parse unstructured CFG

v2 (Boris Brezillon): handle functions with return values
v3: call structurizer
v4: entire rewrite
v5: fix handling of already visited default branches

Signed-off-by: Karol Herbst <kherbst@redhat.com>

squash! spirv: parse unstructured CFG

fixup! spirv: parse unstructured CFG
42 jobs for !245 with structurizer-v2 in 9 minutes and 36 seconds (queued for 13 seconds)
detached
Status Job ID Name Coverage
  Container
passed #3846530
aarch64
arm_build

00:00:20

passed #3846531
aarch64
arm_test

00:00:19

passed #3846533
mesa 1809 shell windows
windows_build_vs2019

00:00:07

passed #3846523
x86_build

00:00:29

passed #3846528
x86_build_old

00:00:20

passed #3846525
x86_test-gl

00:00:20

passed #3846526
x86_test-vk

00:00:19

 
  Meson X86 64
passed #3846542
meson-clang

00:06:12

passed #3846540
meson-classic

00:03:31

passed #3846545
meson-clover

00:06:48

passed #3846547
meson-clover-old-llvm

00:04:28

passed #3846539
meson-gallium

00:04:47

failed #3846537
meson-testing

00:01:09

passed #3846549
meson-vulkan

00:01:56

 
  Scons
passed #3846551
scons-win64

00:08:04

 
  Meson Misc
passed #3846555
aarch64
meson-arm64

00:01:55

passed #3846557
aarch64
meson-arm64-build-test

00:01:47

passed #3846553
aarch64
meson-armhf

00:01:39

passed #3846562
meson-i386

00:05:08

passed #3846568
meson-mingw32-x86_64

00:06:46

passed #3846565
kvm
meson-ppc64el

00:03:06

passed #3846563
kvm
meson-s390x

00:02:58

failed #3846559
mesa 1809 docker windows
meson-windows-vs2019

00:01:25

 
  Llvmpipe
skipped #3846574
llvmpipe-gles2
skipped #3846575
llvmpipe-traces
skipped #3846572
piglit-glslparser
skipped #3846570
piglit-quick_gl
skipped #3846573
piglit-quick_shader
 
  Softpipe
skipped #3846576
softpipe-gles2
skipped #3846579
softpipe-gles31 1/4
skipped #3846577
softpipe-gles3 1/2
skipped #3846580
softpipe-gles31 2/4
skipped #3846581
softpipe-gles31 3/4
skipped #3846582
softpipe-gles31 4/4
skipped #3846578
softpipe-gles3 2/2
 
  Panfrost
passed #3846583
mesa-ci-aarch64-lava-collabora
panfrost-t720-gles2:arm64

00:07:07

passed #3846584
mesa-ci-aarch64-lava-collabora
panfrost-t760-gles2:armhf

00:04:30

passed #3846585
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles2:arm64

00:03:55

passed #3846586
mesa-ci-aarch64-lava-collabora
panfrost-t860-gles3:arm64

00:04:00

 
  Radv
skipped #3846588
radv-fossils
 
  Virgl
skipped #3846590
virgl-gles2
skipped #3846592
virgl-gles3
 
Name Stage Failure
failed
meson-testing Meson X86 64
cleanups performed                 18439
files in cache 166128
cache size 4.5 GB
max cache size 5.0 GB
Uploading artifacts for failed job
Uploading artifacts...
WARNING: artifacts: no matching files
ERROR: No files to upload
ERROR: Job failed: exit code 1
failed
meson-windows-vs2019 Meson Misc
GO version:   go1.13.8
Built: 2020-06-19T20:36:38+0000
OS/Arch: windows/amd64
Uploading artifacts...
WARNING: _build/meson-logs/*.txt: no matching files
WARNING: build/*/config.log: no matching files
WARNING: shader-db: no matching files
ERROR: No files to upload
ERROR: Job failed: exit code 128