intel/fs: Allow scheduling to re-order unused flag writes

One unfortunate aspect of our hardware is that the CMP instruction
always writes the flag regardless of whether or not we actually use the
flag result.  This means, WaW dependencies in the scheduler which
completely prevent re-ordering of CMP instructions.  This commit loosens
those restrictions so we can now re-order CMP instructions whose flag
result is unused.

Shader-db results on ICL:

    total instructions in shared programs: 17087421 -> 17087354 (<.01%)
    instructions in affected programs: 163152 -> 163085 (-0.04%)
    helped: 117
    HURT: 78
    helped stats (abs) min: 1 max: 295 x̄: 8.43 x̃: 1
    helped stats (rel) min: 0.09% max: 15.70% x̄: 1.10% x̃: 0.46%
    HURT stats (abs)   min: 1 max: 84 x̄: 11.78 x̃: 1
    HURT stats (rel)   min: 0.27% max: 6.21% x̄: 1.73% x̃: 1.11%
    95% mean confidence interval for instructions value: -4.69 4.00
    95% mean confidence interval for instructions %-change: -0.30% 0.37%
    Inconclusive result (value mean confidence interval includes 0).

    total cycles in shared programs: 359307716 -> 359237028 (-0.02%)
    cycles in affected programs: 238330130 -> 238259442 (-0.03%)
    helped: 6326
    HURT: 6192
    helped stats (abs) min: 1 max: 27380 x̄: 96.67 x̃: 13
    helped stats (rel) min: <.01% max: 76.86% x̄: 2.59% x̃: 0.72%
    HURT stats (abs)   min: 1 max: 12686 x̄: 87.35 x̃: 12
    HURT stats (rel)   min: <.01% max: 43.58% x̄: 1.60% x̃: 0.60%
    95% mean confidence interval for cycles value: -15.76 4.47
    95% mean confidence interval for cycles %-change: -0.59% -0.44%
    Inconclusive result (value mean confidence interval includes 0).

    total spills in shared programs: 11149 -> 11201 (0.47%)
    spills in affected programs: 2784 -> 2836 (1.87%)
    helped: 8
    HURT: 38

    total fills in shared programs: 12978 -> 12927 (-0.39%)
    fills in affected programs: 4092 -> 4041 (-1.25%)
    helped: 12
    HURT: 30

    LOST:   9
    GAINED: 7
47 jobs for !4617 with review/fs-csel-trivial
latest detached
Status Job ID Name Coverage
  Container
manual arm_build #2397696
aarch64 manual
manual arm_test #2397698
aarch64 manual
manual windows_build_vs2019 #2397700
windows shell 1809 mesa manual
manual x86_build #2397689
manual
manual x86_build_old #2397694
manual
manual x86_test-gl #2397691
manual
manual x86_test-vk #2397693
manual
 
  Meson X86 64
created meson-clang #2397709
created meson-classic #2397707
created meson-clover #2397710
created meson-clover-old-llvm #2397712
created meson-gallium #2397705
created meson-testing #2397703
created meson-vulkan #2397714
 
  Scons
created scons-win64 #2397715
allowed to fail
 
  Meson Misc
created meson-arm64 #2397719
aarch64
created meson-arm64-build-test #2397721
aarch64
created meson-armhf #2397717
aarch64
created meson-i386 #2397726
created meson-mingw32-x86_64 #2397731
created meson-ppc64el #2397729
kvm
created meson-s390x #2397727
kvm
created meson-windows-vs2019 #2397723
windows docker 1809 mesa
 
  Llvmpipe
created llvmpipe-gles2 #2397738
created llvmpipe-traces #2397740
created piglit-glslparser #2397735
created piglit-quick_gl #2397733
created piglit-quick_shader #2397737
 
  Softpipe
created softpipe-gles2 #2397742
created softpipe-gles31 1/4 #2397747
created softpipe-gles3 1/2 #2397744
created softpipe-gles31 2/4 #2397749
created softpipe-gles31 3/4 #2397751
created softpipe-gles31 4/4 #2397753
created softpipe-gles3 2/2 #2397746
 
  Freedreno
created arm64_a306_gles2 #2397760
google-freedreno-db410c
created arm64_a530_gles2 #2397762
google-freedreno-db820c
created arm64_a630_gles2 #2397754
mesa-cheza
created arm64_a630_gles3 #2397758
mesa-cheza
created arm64_a630_gles31 #2397756
mesa-cheza
 
  Panfrost
created panfrost-t720-gles2:arm64 #2397764
mesa-ci-aarch64-lava-collabora
created panfrost-t760-gles2:armhf #2397767
mesa-ci-aarch64-lava-collabora
created panfrost-t860-gles2:arm64 #2397768
mesa-ci-aarch64-lava-collabora
created panfrost-t860-gles3:arm64 #2397769
mesa-ci-aarch64-lava-collabora
 
  Radv
created radv-fossils #2397770
 
  Virgl
created virgl-gles2 #2397771
created virgl-gles3 #2397772