isaspec: De-duplicate bitset encoding

bitset encoding tends to have a lot of duplication, for ex. many
instructions with the same encoding modulo the fixed pattern.  Now that
encode_bitset is split out into it's own template, so that we can
capture the result, use a hash table to de-duplicate the bitset encoding
into "snippet" functions so that bitset cases with identical encoding
can re-use the same generated code.

Signed-off-by: Rob Clark <robdclark@chromium.org>
190 jobs for isaspec/sizeopt
Status Name Job ID Coverage
  Container
created debian/android_build #14007184
manual debian/arm_build #14007188
aarch64 manual
created debian/arm_test #14007193
created debian/i386_build #14007181
created debian/ppc64el_build #14007182
created debian/s390x_build #14007183
created debian/x86_build #14007180
manual debian/x86_build-base #14007179
manual
manual debian/x86_test-base #14007185
manual
created debian/x86_test-gl #14007186
created debian/x86_test-vk #14007187
manual fedora/x86_build #14007189
manual
created kernel+rootfs_amd64 #14007190
created kernel+rootfs_arm64 #14007191
aarch64
created kernel+rootfs_armhf #14007192
aarch64
manual windows_build_vs2019 #14007194
windows shell 1809 mesa manual
 
  Build X86 64
created debian-clang #14007201
created debian-clover #14007202
created debian-clover-testing #14007197
created debian-gallium #14007198
created debian-release #14007199
created debian-testing #14007195
created debian-testing-asan #14007196
created debian-vulkan #14007203
created fedora-release #14007200
 
  Build Misc
created debian-android #14007204
created debian-arm64 #14007206
aarch64
created debian-arm64-asan #14007207
aarch64
created debian-arm64-build-test #14007208
aarch64
created debian-armhf #14007205
aarch64
created debian-i386 #14007210
created debian-mingw32-x86_64 #14007213
created debian-ppc64el #14007212
created debian-s390x #14007211
kvm
created windows-vs2019 #14007209
windows docker 1809 mesa
 
  Amd
created radeonsi-stoney-gles2:amd64 #14007222
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-gles31:amd64 1/2 #14007225
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-gles31:amd64 2/2 #14007226
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-gles3:amd64 1/2 #14007223
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-gles3:amd64 2/2 #14007224
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-piglit-gl:amd64 #14007228
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radeonsi-stoney-traces:amd64 #14007227
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radv-fossils #14007221
created radv-navy_flounder-traces #14007215
amdgpu:codename:NAVY_FLOUNDER manual
created radv-navy_flounder-vkd3d-proton #14007214
amdgpu:codename:NAVY_FLOUNDER manual
created radv_polaris10_vkcts #14007217
polaris10 manual
created radv-raven-traces #14007216
amdgpu:codename:RAVEN manual
created radv_stoney_vkcts:amd64 1/3 #14007218
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radv_stoney_vkcts:amd64 2/3 #14007219
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
created radv_stoney_vkcts:amd64 3/3 #14007220
mesa-ci-x86-64-lava-hp-11A-G6-EE-grunt
 
  Intel
created i915-g33-deqp #14007229
anholt-g33 manual
created i915-g33-piglit #14007230
anholt-g33 manual
created i915-g33-traces #14007231
anholt-g33 manual
created iris-amly-deqp 1/3 #14007239
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-deqp 2/3 #14007240
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-deqp 3/3 #14007241
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-egl #14007248
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-piglit 1/3 #14007249
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-piglit 2/3 #14007250
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-piglit 3/3 #14007251
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-amly-traces #14007254
mesa-ci-x86-64-lava-asus-C433TA-AJ0005-rammus manual
created iris-apl-deqp 1/3 #14007232
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
created iris-apl-deqp 2/3 #14007233
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
created iris-apl-deqp 3/3 #14007234
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
created iris-apl-egl #14007235
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
created iris-apl-traces #14007252
mesa-ci-x86-64-lava-asus-C523NA-A20057-coral
created iris-cml-deqp 1/2 #14007246
mesa-ci-x86-64-lava-asus-C436FA-flip-hatch manual
created iris-cml-deqp 2/2 #14007247
mesa-ci-x86-64-lava-asus-C436FA-flip-hatch manual
created iris-cml-traces #14007257
mesa-ci-x86-64-lava-asus-C436FA-flip-hatch manual
created iris-glk-deqp 1/2 #14007236
mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus manual
created iris-glk-deqp 2/2 #14007237
mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus manual
created iris-glk-egl #14007238
mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus manual
created iris-glk-traces #14007253
mesa-ci-x86-64-lava-hp-x360-12b-ca0010nr-n4020-octopus manual
created iris-kbl-deqp 1/3 #14007242
mesa-ci-x86-64-lava-hp-x360-14-G1-sona manual
created iris-kbl-deqp 2/3 #14007243
mesa-ci-x86-64-lava-hp-x360-14-G1-sona manual
created iris-kbl-deqp 3/3 #14007244
mesa-ci-x86-64-lava-hp-x360-14-G1-sona manual
created iris-kbl-traces #14007255
mesa-ci-x86-64-lava-hp-x360-14-G1-sona manual
created iris-whl-deqp #14007245
mesa-ci-x86-64-lava-dell-latitude-5400-4305U-sarien manual
created iris-whl-traces #14007256
mesa-ci-x86-64-lava-dell-latitude-5400-4305U-sarien manual
 
  Arm
created lima-mali450-test:arm64 #14007258
mesa-ci-x86-64-lava-lima
created panfrost-g52-gl:arm64 1/3 #14007266
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
created panfrost-g52-gl:arm64 2/3 #14007267
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
created panfrost-g52-gl:arm64 3/3 #14007268
mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
created panfrost-g72-gl:arm64 1/3 #14007269
mesa-ci-x86-64-lava-mt8183-kukui-jacuzzi-juniper-sku16
created panfrost-g72-gl:arm64 2/3 #14007270
mesa-ci-x86-64-lava-mt8183-kukui-jacuzzi-juniper-sku16
created panfrost-g72-gl:arm64 3/3 #14007271
mesa-ci-x86-64-lava-mt8183-kukui-jacuzzi-juniper-sku16
created panfrost-t720-gles2:arm64 #14007259
mesa-ci-x86-64-lava-sun50i-h6-pine-h64
created panfrost-t760-gles2:armhf #14007260
mesa-ci-x86-64-lava-rk3288-veyron-jaq
created panfrost-t760-traces:armhf #14007261
mesa-ci-x86-64-lava-rk3288-veyron-jaq
created panfrost-t860-gl:arm64 1/3 #14007262
mesa-ci-x86-64-lava-rk3399-gru-kevin
created panfrost-t860-gl:arm64 2/3 #14007263
mesa-ci-x86-64-lava-rk3399-gru-kevin
created panfrost-t860-gl:arm64 3/3 #14007264
mesa-ci-x86-64-lava-rk3399-gru-kevin
created panfrost-t860-traces:arm64 #14007265
mesa-ci-x86-64-lava-rk3399-gru-kevin
 
  Broadcom
created v3d-rpi4-egl:armhf #14007289
igalia-rpi4
created v3d-rpi4-gles:armhf 1/8 #14007281
igalia-rpi4
created v3d-rpi4-gles:armhf 2/8 #14007282
igalia-rpi4
created v3d-rpi4-gles:armhf 3/8 #14007283
igalia-rpi4
created v3d-rpi4-gles:armhf 4/8 #14007284
igalia-rpi4
created v3d-rpi4-gles:armhf 5/8 #14007285
igalia-rpi4
created v3d-rpi4-gles:armhf 6/8 #14007286
igalia-rpi4
created v3d-rpi4-gles:armhf 7/8 #14007287
igalia-rpi4
created v3d-rpi4-gles:armhf 8/8 #14007288
igalia-rpi4
created v3d-rpi4-piglit:armhf 1/4 #14007290
igalia-rpi4
created v3d-rpi4-piglit:armhf 2/4 #14007291
igalia-rpi4
created v3d-rpi4-piglit:armhf 3/4 #14007292
igalia-rpi4
created v3d-rpi4-piglit:armhf 4/4 #14007293
igalia-rpi4
created v3dv-rpi4-vk:arm64 1/8 #14007294
igalia-rpi4
created v3dv-rpi4-vk:arm64 2/8 #14007295
igalia-rpi4
created v3dv-rpi4-vk:arm64 3/8 #14007296
igalia-rpi4
created v3dv-rpi4-vk:arm64 4/8 #14007297
igalia-rpi4
created v3dv-rpi4-vk:arm64 5/8 #14007298
igalia-rpi4
created v3dv-rpi4-vk:arm64 6/8 #14007299
igalia-rpi4
created v3dv-rpi4-vk:arm64 7/8 #14007300
igalia-rpi4
created v3dv-rpi4-vk:arm64 8/8 #14007301
igalia-rpi4
created vc4-rpi3-egl:armhf #14007274
igalia-rpi3
created vc4-rpi3-gles:armhf 1/2 #14007272
igalia-rpi3
created vc4-rpi3-gles:armhf 2/2 #14007273
igalia-rpi3
created vc4-rpi3-piglit-quick_gl:armhf 1/4 #14007275
igalia-rpi3 manual
created vc4-rpi3-piglit-quick_gl:armhf 2/4 #14007276
igalia-rpi3 manual
created vc4-rpi3-piglit-quick_gl:armhf 3/4 #14007277
igalia-rpi3 manual
created vc4-rpi3-piglit-quick_gl:armhf 4/4 #14007278
igalia-rpi3 manual
created vc4-rpi3-piglit-quick_shader:armhf 1/2 #14007279
igalia-rpi3 manual
created vc4-rpi3-piglit-quick_shader:armhf 2/2 #14007280
igalia-rpi3 manual
 
  Freedreno
created a306_gl 1/5 #14007302
google-freedreno-db410c
created a306_gl 2/5 #14007303
google-freedreno-db410c
created a306_gl 3/5 #14007304
google-freedreno-db410c
created a306_gl 4/5 #14007305
google-freedreno-db410c
created a306_gl 5/5 #14007306
google-freedreno-db410c
created a306-traces #14007307
google-freedreno-db410c
created a530_gl 1/5 #14007308
google-freedreno-db820c
created a530_gl 2/5 #14007309
google-freedreno-db820c
created a530_gl 3/5 #14007310
google-freedreno-db820c
created a530_gl 4/5 #14007311
google-freedreno-db820c
created a530_gl 5/5 #14007312
google-freedreno-db820c
created a530_piglit_gl #14007313
google-freedreno-db820c manual
created a530_piglit_shader 1/2 #14007314
google-freedreno-db820c
created a530_piglit_shader 2/2 #14007315
google-freedreno-db820c
created a530-traces #14007316
google-freedreno-db820c
created a630_egl #14007321
google-freedreno-cheza
created a630_gl 1/4 #14007317
google-freedreno-cheza
created a630_gl 2/4 #14007318
google-freedreno-cheza
created a630_gl 3/4 #14007319
google-freedreno-cheza
created a630_gl 4/4 #14007320
google-freedreno-cheza
created a630_gles_asan #14007322
google-freedreno-cheza manual
created a630_piglit #14007329
google-freedreno-cheza
created a630-traces #14007330
google-freedreno-cheza
created a630-traces-restricted #14007331
google-freedreno-cheza allowed to fail
created a630_vk 1/3 #14007323
google-freedreno-cheza
created a630_vk 2/3 #14007324
google-freedreno-cheza
created a630_vk 3/3 #14007325
google-freedreno-cheza
created a630_vk_asan #14007328
google-freedreno-cheza manual
created a630_vk_full 1/2 #14007326
google-freedreno-cheza manual
created a630_vk_full 2/2 #14007327
google-freedreno-cheza manual
 
  Etnaviv
created gc2000_gles2 #14007332
etnaviv-gc2000 manual
 
  Software Renderer
created lavapipe-nir-stress #14007347
created lavapipe-vk #14007346
created lavapipe-vk-asan #14007348
created llvmpipe-deqp 1/2 #14007338
created llvmpipe-deqp 2/2 #14007339
created llvmpipe-deqp-asan #14007340
created llvmpipe-egl #14007341
created llvmpipe-piglit-cl #14007333
created llvmpipe-piglit-glslparser #14007335
created llvmpipe-piglit-quick_gl #14007334
created llvmpipe-piglit-quick_shader #14007336
created llvmpipe-traces #14007337
created softpipe-asan-gles31 #14007344
created softpipe-deqp 1/2 #14007342
created softpipe-deqp 2/2 #14007343
created softpipe-piglit-quick #14007345
 
  Layered Backends
created test-d3d12-windows #14007367
windows docker 1809 mesa
created virgl-on-gl 1/6 #14007349
kvm
created virgl-on-gl 2/6 #14007350
kvm
created virgl-on-gl 3/6 #14007351
kvm
created virgl-on-gl 4/6 #14007352
kvm
created virgl-on-gl 5/6 #14007353
kvm
created virgl-on-gl 6/6 #14007354
kvm
created virgl-on-gles 1/6 #14007355
kvm manual
created virgl-on-gles 2/6 #14007356
kvm manual
created virgl-on-gles 3/6 #14007357
kvm manual
created virgl-on-gles 4/6 #14007358
kvm manual
created virgl-on-gles 5/6 #14007359
kvm manual
created virgl-on-gles 6/6 #14007360
kvm manual
created virgl-traces #14007361
kvm
created zink-lvp-deqp 1/2 #14007365
created zink-lvp-deqp 2/2 #14007366
created zink-piglit-lazy #14007364
created zink-piglit-no_timelines #14007363
created zink-piglit-timelines #14007362
 
  Deploy
manual test-docs #14007368
manual