nir: look through bcsel in is_only_used_as_float and is_created_as_float

fossil-db (GFX10.3):
Totals from 1 (0.00% of 146267) affected shaders:
CodeSize: 1740 -> 1736 (-0.23%)
Instrs: 313 -> 312 (-0.32%)

fossil-db (GFX10.3, dxvk float controls):
Totals from 143 (0.10% of 146267) affected shaders:
CodeSize: 1492300 -> 1491152 (-0.08%)
Instrs: 300391 -> 300101 (-0.10%)

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <!9254>
143 jobs for !9254 with nir_fcanon_dxvk_float_control in 63 minutes and 58 seconds (queued for 12 seconds)
latest detached
Status Name Job ID Coverage
  Sanity
passed sanity #12728440

00:00:11

 
  Container
passed debian/arm_build #12728443
aarch64

00:00:18

passed debian/x86_build-base #12728441

00:00:12

passed debian/x86_test-base #12728442

00:00:14

passed fedora/x86_build #12728444

00:00:12

passed windows_build_vs2019 #12728445
windows shell 1809 mesa

00:00:09

 
  Container 2
passed debian/android_build #12728450

00:00:15

passed debian/i386_build #12728447

00:00:14

passed debian/ppc64el_build #12728448

00:00:16

passed debian/s390x_build #12728449

00:00:16

passed debian/x86_build #12728446

00:00:16

passed debian/x86_test-gl #12728451

00:00:16

passed debian/x86_test-vk #12728452

00:00:11

passed kernel+rootfs_amd64 #12728453

00:00:10

passed kernel+rootfs_arm64 #12728454
aarch64

00:01:00

passed kernel+rootfs_armhf #12728455
aarch64

00:00:11

 
  Build X86 64
passed debian-clang #12728462

00:11:32

passed debian-clover #12728463

00:01:53

passed debian-clover-testing #12728458

00:03:34

passed debian-gallium #12728459

00:03:14

passed debian-release #12728460

00:08:25

passed debian-testing #12728456

00:05:01

passed debian-testing-asan #12728457

00:10:03

passed debian-vulkan #12728464

00:03:48

passed fedora-release #12728461

00:08:27

 
  Build Misc
failed debian-android #12728586

00:00:55

passed debian-arm64 #12728468
aarch64

00:03:06

passed debian-arm64-asan #12728469
aarch64

00:06:23

passed debian-arm64-build-test #12728470
aarch64

00:02:54

passed debian-armhf #12728467
aarch64

00:03:38

passed debian/arm_test #12728465

00:00:19

passed debian-i386 #12728472

00:03:38

passed debian-mingw32-x86_64 #12728475

00:03:00

passed debian-ppc64el #12728474

00:01:40

passed debian-s390x #12728473
kvm

00:03:55

passed windows-vs2019 #12728471
windows docker 1809 mesa

00:04:37

failed debian-android #12728466

00:01:59

 
  Amd
passed radeonsi-stoney-gles2:amd64 #12728480
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:05:24

passed radeonsi-stoney-gles31:amd64 1/2 #12728483
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:11:03

passed radeonsi-stoney-gles31:amd64 2/2 #12728484
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:10:21

passed radeonsi-stoney-gles3:amd64 1/2 #12728481
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:08:13

passed radeonsi-stoney-gles3:amd64 2/2 #12728482
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:12:35

passed radeonsi-stoney-piglit-gl:amd64 #12728486
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:12:17

passed radeonsi-stoney-traces:amd64 #12728485
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:05:53

passed radv-fossils #12728479

00:08:52

passed radv_stoney_vkcts:amd64 1/3 #12728476
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:13:48

passed radv_stoney_vkcts:amd64 2/3 #12728477
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:13:48

passed radv_stoney_vkcts:amd64 3/3 #12728478
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt

00:13:37

 
  Intel
passed iris-apl-egl #12728490
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:05:55

passed iris-apl-gles2 #12728487
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:04:20

passed iris-apl-gles3 #12728488
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:05:20

passed iris-apl-gles31 #12728489
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:06:29

passed iris-apl-traces #12728491
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral

00:07:47

 
  Arm
passed panfrost-g52-gles31:arm64 #12728501
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:10:16

passed panfrost-g52-gles3:arm64 1/2 #12728499
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:09:35

passed panfrost-g52-gles3:arm64 2/2 #12728500
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

00:09:54

passed panfrost-t720-gles2:arm64 #12728492
mesa-ci-x86-64-lava-sun50i-h6-pine-h64

00:08:46

passed panfrost-t760-gles2:armhf #12728493
mesa-ci-x86-64-lava-rk3288-veyron-jaq

00:05:47

passed panfrost-t760-traces:armhf #12728494
mesa-ci-x86-64-lava-rk3288-veyron-jaq

00:03:12

passed panfrost-t860-gles31:arm64 #12728497
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:06:44

passed panfrost-t860-gles3:arm64 1/2 #12728495
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:06:49

passed panfrost-t860-gles3:arm64 2/2 #12728496
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:07:21

passed panfrost-t860-traces:arm64 #12728498
mesa-ci-x86-64-lava-rk3399-gru-kevin

00:04:52

 
  Broadcom
passed v3d-rpi4-egl:armhf #12728518
igalia-rpi4

00:06:52

passed v3d-rpi4-gles2:armhf #12728514
igalia-rpi4

00:07:11

passed v3d-rpi4-gles31:armhf 1/2 #12728508
igalia-rpi4

00:10:01

passed v3d-rpi4-gles31:armhf 2/2 #12728509
igalia-rpi4

00:10:05

passed v3d-rpi4-gles3:armhf 1/4 #12728510
igalia-rpi4

00:09:41

passed v3d-rpi4-gles3:armhf 2/4 #12728511
igalia-rpi4

00:10:03

passed v3d-rpi4-gles3:armhf 3/4 #12728512
igalia-rpi4

00:08:06

passed v3d-rpi4-gles3:armhf 4/4 #12728513
igalia-rpi4

00:08:37

passed v3d-rpi4-khr-gles2:armhf #12728517
igalia-rpi4

00:02:05

passed v3d-rpi4-khr-gles31:armhf #12728515
igalia-rpi4

00:02:59

passed v3d-rpi4-khr-gles3:armhf #12728516
igalia-rpi4

00:03:45

passed v3d-rpi4-piglit:armhf 1/3 #12728519
igalia-rpi4

00:11:30

failed v3d-rpi4-piglit:armhf 2/3 #12728614
igalia-rpi4

00:11:19

passed v3d-rpi4-piglit:armhf 3/3 #12728521
igalia-rpi4

00:11:43

passed v3dv-rpi4-vk:arm64 1/6 #12728522
igalia-rpi4

00:07:32

passed v3dv-rpi4-vk:arm64 2/6 #12728523
igalia-rpi4

00:07:31

passed v3dv-rpi4-vk:arm64 3/6 #12728524
igalia-rpi4

00:07:18

passed v3dv-rpi4-vk:arm64 4/6 #12728525
igalia-rpi4

00:07:39

passed v3dv-rpi4-vk:arm64 5/6 #12728526
igalia-rpi4

00:07:25

passed v3dv-rpi4-vk:arm64 6/6 #12728527
igalia-rpi4

00:07:52

passed vc4-rpi3-egl:armhf #12728507
igalia-rpi3

00:07:01

passed vc4-rpi3-gles2:armhf 1/4 #12728502
igalia-rpi3

00:04:22

passed vc4-rpi3-gles2:armhf 2/4 #12728503
igalia-rpi3

00:04:17

passed vc4-rpi3-gles2:armhf 3/4 #12728504
igalia-rpi3

00:03:57

passed vc4-rpi3-gles2:armhf 4/4 #12728505
igalia-rpi3

00:04:17

passed vc4-rpi3-khr-gles2:armhf #12728506
igalia-rpi3

00:02:07

failed v3d-rpi4-piglit:armhf 2/3 #12728520
igalia-rpi4

00:11:36

 
  Freedreno
passed a306_gles2 #12728528
google-freedreno-db410c

00:04:51

passed a306_gles3 1/3 #12728529
google-freedreno-db410c

00:08:55

passed a306_gles3 2/3 #12728530
google-freedreno-db410c

00:08:54

passed a306_gles3 3/3 #12728531
google-freedreno-db410c

00:08:52

passed a306_gles3_options #12728532
google-freedreno-db410c

00:03:42

passed a306-traces #12728533
google-freedreno-db410c

00:02:39

passed a530_gles2 #12728534
google-freedreno-db820c

00:05:57

passed a530_gles31 1/2 #12728537
google-freedreno-db820c

00:05:26

passed a530_gles3 1/2 #12728535
google-freedreno-db820c

00:08:06

passed a530_gles31 2/2 #12728538
google-freedreno-db820c

00:06:19

passed a530_gles3 2/2 #12728536
google-freedreno-db820c

00:07:21

passed a530_piglit_shader 1/2 #12728539
google-freedreno-db820c

00:08:15

failed a530_piglit_shader 2/2 #12728540
google-freedreno-db820c

01:00:02

passed a530-traces #12728541
google-freedreno-db820c

00:07:55

passed a630_egl #12728546
google-freedreno-cheza

00:02:17

passed a630_gl #12728545
google-freedreno-cheza

00:01:21

passed a630_gles2 #12728542
google-freedreno-cheza

00:01:41

passed a630_gles3 #12728544
google-freedreno-cheza

00:04:40

passed a630_gles31 #12728543
google-freedreno-cheza

00:09:27

passed a630_gles_others #12728547
google-freedreno-cheza

00:05:29

failed a630_piglit #12728551
google-freedreno-cheza

00:08:19

passed a630-traces #12728552
google-freedreno-cheza

00:04:09

passed a630-traces-performance #12728554
google-freedreno-cheza manual

00:07:15

passed a630-traces-restricted #12728553
google-freedreno-cheza

00:03:12

failed a630_vk 1/2 #12728548
google-freedreno-cheza

00:09:54

failed a630_vk 2/2 #12728549
google-freedreno-cheza

00:10:17

passed a630_vk_sysmem #12728550
google-freedreno-cheza

00:02:12

 
  Software Renderer
passed lavapipe-nir-stress #12728568

00:01:48

passed lavapipe-vk #12728567

00:07:20

passed llvmpipe-deqp 1/2 #12728560

00:08:44

passed llvmpipe-deqp 2/2 #12728561

00:09:05

passed llvmpipe-egl #12728562

00:01:08

failed llvmpipe-piglit-cl #12728555

00:01:38

passed llvmpipe-piglit-glslparser #12728557

00:04:17

passed llvmpipe-piglit-quick_gl #12728556

00:07:34

failed llvmpipe-piglit-quick_shader #12728558

00:07:16

failed llvmpipe-traces #12728559

00:02:21

passed softpipe-asan-gles31 #12728565

00:03:02

passed softpipe-deqp 1/2 #12728563

00:08:32

passed softpipe-deqp 2/2 #12728564

00:09:47

failed softpipe-piglit-quick #12728566

00:08:08

 
  Layered Backends
passed test-d3d12-windows #12728580
windows docker 1809 mesa

00:03:17

passed virgl-on-gl 1/6 #12728569
kvm

00:13:37

passed virgl-on-gl 2/6 #12728570
kvm

00:13:59

failed virgl-on-gl 3/6 #12728571
kvm

00:15:00

failed virgl-on-gl 4/6 #12728572
kvm

00:15:18

failed virgl-on-gl 5/6 #12728573
kvm

00:15:11

failed virgl-on-gl 6/6 #12728574
kvm

00:16:08

passed virgl-traces #12728575
kvm

00:03:22

passed zink-lvp-deqp 1/2 #12728578

00:02:32

passed zink-lvp-deqp 2/2 #12728579

00:02:40

passed zink-piglit-no_timelines #12728577

00:04:31

passed zink-piglit-timelines #12728576

00:04:32

 
Name Stage Failure
failed
a630_vk 1/2 Freedreno
results/: found 28 matching files and directories  
WARNING: serial*.txt: no matching files
results/*.shader_cache: excluded 10 files

Uploading artifacts as "archive" to coordinator... ok
id=12728548 responseStatus=201 Created token=wrGF3XUF
Uploading artifacts...
WARNING: results/junit.xml: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
a530_piglit_shader 2/2 Freedreno The script exceeded the maximum execution time set for the job
Failed to get to fastboot prompt, restarting run...
21-08-12 18:57:35 R SERIAL> Serial thread reading from /dev/ttyDB820c7
Running 'google-power-up.sh 7'
Failed to get to fastboot prompt, restarting run...
21-08-12 19:07:35 R SERIAL> Serial thread reading from /dev/ttyDB820c7
Running 'google-power-up.sh 7'
Failed to get to fastboot prompt, restarting run...
21-08-12 19:17:35 R SERIAL> Serial thread reading from /dev/ttyDB820c7
ERROR: Job failed: execution took longer than 1h0m0s seconds
failed
llvmpipe-piglit-cl Software Renderer
 program/execute/builtin/builtin-float-tan-1.0.generated: timeout
Uploading artifacts for failed job
Uploading artifacts...
results/summary/: found 103 matching files and directories

WARNING: results/*.txt: no matching files
Uploading artifacts as "archive" to coordinator... ok
id=12728555 responseStatus=201 Created token=KVkaVgys
Cleaning up file based variables
ERROR: Failed to cleanup volumes
ERROR: Job failed: exit code 1
failed
llvmpipe-piglit-quick_shader Software Renderer
 spec/glsl-1.50/execution/compatibility/clipping/gs-clip-vertex-const-reject: skip
spec/glsl-1.50/execution/compatibility/clipping/gs-clip-vertex-different-from-position: skip
Uploading artifacts for failed job
Uploading artifacts...
results/summary/: found 358 matching files and directories

results/*.txt: found 1 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728558 responseStatus=201 Created token=ymjyBVs5
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
a630_piglit Freedreno
Uploading artifacts...
results/: found 10 matching files and directories

WARNING: serial*.txt: no matching files
Uploading artifacts as "archive" to coordinator... ok
id=12728551 responseStatus=201 Created token=geoQQ8WT
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728551 responseStatus=201 Created token=geoQQ8WT
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
a630_vk 2/2 Freedreno
results/: found 41 matching files and directories  
WARNING: serial*.txt: no matching files
results/*.shader_cache: excluded 10 files

Uploading artifacts as "archive" to coordinator... ok
id=12728549 responseStatus=201 Created token=zqrWzDxM
Uploading artifacts...
WARNING: results/junit.xml: no matching files
ERROR: No files to upload
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
debian-android Build Misc
max cache size                       5.0 GB
Uploading artifacts for failed job
Uploading artifacts...
_build/meson-logs/*.txt: found 2 matching files and directories

WARNING: _build/meson-logs/strace: no matching files
WARNING: shader-db: no matching files
Uploading artifacts as "archive" to coordinator... ok
id=12728586 responseStatus=201 Created token=HDzrfs2g
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
softpipe-piglit-quick Software Renderer
 spec/glsl-1.10/preprocessor/extension-if-1: skip
spec/glsl-1.30/execution/tex-miplevel-selection texturegrad 1d: fail
Uploading artifacts for failed job
Uploading artifacts...
results/summary/: found 2668 matching files and directories

results/*.txt: found 1 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728566 responseStatus=201 Created token=nGezgsh7
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
virgl-on-gl 3/6 Layered Backends
Uploading artifacts for failed job
Uploading artifacts...
results/: found 30 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728571 responseStatus=201 Created token=pXLbeNjQ
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728571 responseStatus=201 Created token=pXLbeNjQ
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
virgl-on-gl 5/6 Layered Backends
Uploading artifacts for failed job
Uploading artifacts...
results/: found 20 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728573 responseStatus=201 Created token=qSgaSg6u
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728573 responseStatus=201 Created token=qSgaSg6u
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
llvmpipe-traces Software Renderer
Uploading artifacts...
results/summary/: found 14 matching files and directories

results/*.txt: found 1 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728559 responseStatus=201 Created token=Y13y7Lhu
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728559 responseStatus=201 Created token=Y13y7Lhu
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
virgl-on-gl 4/6 Layered Backends
Uploading artifacts for failed job
Uploading artifacts...
results/: found 29 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728572 responseStatus=201 Created token=xAHRJsCi
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728572 responseStatus=201 Created token=xAHRJsCi
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
virgl-on-gl 6/6 Layered Backends
Uploading artifacts for failed job
Uploading artifacts...
results/: found 25 matching files and directories

Uploading artifacts as "archive" to coordinator... ok
id=12728574 responseStatus=201 Created token=sfcSp_rB
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728574 responseStatus=201 Created token=sfcSp_rB
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
v3d-rpi4-piglit:armhf 2/3 Broadcom
results/: found 7 matching files and directories   
WARNING: serial*.txt: no matching files
Uploading artifacts as "archive" to coordinator... ok
id=12728614 responseStatus=201 Created token=G2Q9LS9b
Uploading artifacts...
results/junit.xml: found 1 matching files and directories

Uploading artifacts as "junit" to coordinator... ok
id=12728614 responseStatus=201 Created token=G2Q9LS9b
Cleaning up file based variables
ERROR: Failed to cleanup volumes
ERROR: Job failed: exit code 1