Merge branch 'pan/nir-fold-cvt' into 'main'

pan/bi: Vectorize f2f16 and fold conversions in loads

See merge request mesa/mesa!41304
This commit is contained in:
Lorenzo Rossi 2026-05-08 02:10:53 +02:00
commit 4144d969b2
9 changed files with 196 additions and 802 deletions

View file

@ -7,765 +7,3 @@ angle-KHR-GLES31.core.texture_cube_map_array.sampling,Fail
# ANGLE now exposes paletted textures to ES2+, and there's a CTS bug caught by this
# https://gitlab.khronos.org/opengl/API/-/issues/278
angle-dEQP-GLES2.functional.negative_api.texture.generatemipmap_zero_level_array_compressed,Fail
# These fail when we enable mediump
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x10_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x5_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x6_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_10x8_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x10_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_12x12_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_4x4_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x4_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_5x5_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x5_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_6x6_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x5_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x6_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.clamp_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.mirror_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_mirror_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_mirror_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_mirror_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_mirror_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_linear_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_linear_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_nearest_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.astc_8x8_srgb.repeat_repeat_nearest_not_divisible,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_r11.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_rg11.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_r11.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.eac_signed_rg11.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc1.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_rgba8.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_eac_srgb8_alpha8.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_rgb8_punchthrough_alpha1.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.clamp_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.mirror_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_mirror_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_mirror_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_mirror_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_repeat_linear_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_repeat_linear_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.etc2_srgb8_punchthrough_alpha1.repeat_repeat_nearest_pot,Fail
angle-dEQP-GLES3.functional.texture.wrap.rgba8.clamp_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.rgba8.mirror_repeat_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.rgba8.repeat_mirror_nearest_npot,Fail
angle-dEQP-GLES3.functional.texture.wrap.rgba8.repeat_repeat_nearest_npot,Fail

View file

@ -124,7 +124,8 @@ bi_vectorize_filter(const nir_instr *instr, const void *data)
case nir_op_ball_iequal4:
case nir_op_bany_inequal2:
case nir_op_bany_inequal3:
case nir_op_bany_inequal4: return 1;
case nir_op_bany_inequal4:
return 1;
case nir_op_pack_uvec2_to_uint:
case nir_op_pack_uvec4_to_uint:
return 0;
@ -137,12 +138,16 @@ bi_vectorize_filter(const nir_instr *instr, const void *data)
case nir_op_extract_i16:
case nir_op_insert_u16:
return 1;
/* On v11+, we lost all packed F16 conversions */
case nir_op_f2f16:
case nir_op_f2f16_rtz:
case nir_op_f2f16_rtne:
case nir_op_u2f16:
case nir_op_i2f16:
/* On v10 and earlier we can take 2 32-bit floats as srcs, while on v11+
* we lost all packed F16 conversions.
*/
return (pan_arch(gpu_id) >= 11) ? 1 : 2;
/* On v11+, we lost packed 16-bit frexp_* */
case nir_op_frexp_sig:
case nir_op_frexp_exp:
if (pan_arch(gpu_id) >= 11)
@ -944,6 +949,7 @@ bifrost_postprocess_nir(nir_shader *nir,
NIR_PASS(_, nir, pan_nir_lower_tex, gpu_id);
NIR_PASS(_, nir, pan_nir_lower_image, gpu_id);
NIR_PASS(_, nir, pan_nir_fuse_io_cvt, gpu_id, &info->varyings.formats);
/* Our OpenCL compiler (src/panfrost/clc/pan_compile.c) has a very weird and
* suboptimal optimization pipeline that results in a lot of unoptimized
* memcpys and sparse scratch space. That code is still being used for

View file

@ -5,6 +5,7 @@ libpanfrost_compiler_files = files(
'pan_compiler.c',
'pan_compiler.h',
'pan_nir_collect_varyings.c',
'pan_nir_fuse_io_cvt.c',
'pan_nir_lower_bool_to_bitsize.c',
'pan_nir_lower_var_special.c',
'pan_nir_lower_framebuffer.c',

View file

@ -41,6 +41,10 @@ nir_fuse_io_16(nir_shader *shader)
if (intr->def.bit_size != 32)
continue;
/* Do not change interpolation precision in highp */
if (!nir_intrinsic_io_semantics(intr).medium_precision)
continue;
/* We swizzle at a 32-bit level so need a multiple of 2. We could
* do a bit better and handle even components though */
if (nir_intrinsic_component(intr))

View file

@ -262,4 +262,7 @@ uint32_t pan_nir_collect_noperspective_varyings_fs(nir_shader *s);
bool pan_nir_resize_varying_io(nir_shader *nir,
const struct pan_varying_layout *varying_layout);
bool pan_nir_fuse_io_cvt(nir_shader *nir, uint64_t gpu_id,
struct pan_varying_layout *layout);
#endif /* __PAN_NIR_H__ */

View file

@ -9,6 +9,8 @@
#include "pan_nir.h"
#include "panfrost/model/pan_model.h"
#define DEBUG_PRINT false
enum pipe_format
pan_varying_format(nir_alu_type t, unsigned ncomps)
{
@ -47,6 +49,49 @@ pan_varying_format(nir_alu_type t, unsigned ncomps)
UNREACHABLE("Invalid type");
}
static void
pan_print_varying_layout(FILE *f, nir_shader *s,
const struct pan_varying_layout *layout)
{
const char *section_name[] = {
"POSITION",
"ATTRIBS",
"SPECIAL",
"GENERIC"
};
fprintf(f, "Layout for %s (%s):\n", s->info.name,
mesa_shader_stage_name(s->info.stage));
fprintf(f, "Known:");
if (layout->known == 0) {
fprintf(f, " empty");
} else {
if (layout->known & PAN_VARYING_FORMAT_KNOWN)
fprintf(f, " format");
if (layout->known & PAN_VARYING_LAYOUT_KNOWN)
fprintf(f, " layout");
}
fprintf(f, "\n");
fprintf(f, "Varying count: %d\n", layout->count);
if (layout->known & PAN_VARYING_LAYOUT_KNOWN)
fprintf(f, "Generic size (bytes): %x\n", layout->generic_size_B);
for (unsigned i = 0; i < layout->count; i++) {
const struct pan_varying_slot *slot =
pan_varying_layout_slot_at(layout, i);
if (slot == NULL)
continue;
const char *loc_name =
gl_varying_slot_name_for_stage(slot->location, s->info.stage);
fprintf(f, "%02d: %s alu=%x comps=%d", i, loc_name, slot->alu_type,
slot->ncomps);
if (layout->known & PAN_VARYING_LAYOUT_KNOWN)
fprintf(f, " off=%x section=%s", slot->offset,
section_name[slot->section]);
fprintf(f, "\n");
}
}
struct slot_info {
nir_alu_type type;
bool any_highp;
@ -359,6 +404,9 @@ pan_varying_collect_formats(struct pan_varying_layout *layout, nir_shader *nir,
layout->count = count;
layout->generic_size_B = 0;
layout->known |= PAN_VARYING_FORMAT_KNOWN;
if (DEBUG_PRINT)
pan_print_varying_layout(stderr, nir, layout);
}
void
@ -394,4 +442,7 @@ pan_build_varying_layout_compact(struct pan_varying_layout *layout,
}
layout->generic_size_B = generic_size_B;
layout->known |= PAN_VARYING_LAYOUT_KNOWN;
if (DEBUG_PRINT)
pan_print_varying_layout(stderr, nir, layout);
}

View file

@ -0,0 +1,127 @@
/*
* Copyright (C) 2026 Collabora Ltd.
* SPDX-License-Identifier: MIT
*/
#include "pan_nir.h"
static unsigned
nir_src_is_float_cvt(nir_src *use, bool *is_mp)
{
nir_instr *parent = nir_src_parent_instr(use);
if (parent->type != nir_instr_type_alu)
return 0;
nir_alu_instr *alu = nir_instr_as_alu(parent);
switch (alu->op) {
case nir_op_f2f16:
return 16;
case nir_op_f2fmp:
*is_mp |= true;
return 16;
case nir_op_f2f32:
return 32;
default:
return 0;
}
}
static bool
op_supports_cvt_fusion(nir_intrinsic_instr *instr, uint64_t gpu_id)
{
/* We might also convert LD_CVT but I haven't seen any case where it's
* useful, maybe enable it when we have a case to check it on.
*/
switch (instr->intrinsic) {
case nir_intrinsic_load_var_pan:
case nir_intrinsic_load_var_buf_pan:
/* LD_VAR[_BUF] performs conversion BEFORE interpolation, we cannot
* just change the interpolation semantics at highp. mediump on the
* other hand lets us juggle between 32 and 16 bits freely.
*/
return nir_intrinsic_io_semantics(instr).medium_precision;
case nir_intrinsic_load_var_flat_pan:
return true;
case nir_intrinsic_load_var_buf_flat_pan:
/* TODO: v14 can even fuse flat buf conversions */
return false;
default:
return false;
}
}
struct fuse_ctx {
uint64_t gpu_id;
struct pan_varying_layout *layout;
};
static bool
fuse_io_instr(struct nir_builder *b, nir_intrinsic_instr *intr, void *data)
{
const struct fuse_ctx *ctx = data;
if (!op_supports_cvt_fusion(intr, ctx->gpu_id))
return false;
unsigned orig_bit_size = intr->def.bit_size;
assert(orig_bit_size == 32 || orig_bit_size == 16);
unsigned converted_bit_size = orig_bit_size == 32 ? 16 : 32;
bool is_mp = false;
/* Check if all usages are conversions */
nir_foreach_use_including_if(src, &intr->def) {
if (nir_src_is_if(src) ||
nir_src_is_float_cvt(src, &is_mp) != converted_bit_size)
return false;
}
/* If they are, the load is always followed by conversion and we thus can
* fuse the cvt into the load.
*/
intr->def.bit_size = converted_bit_size;
/* Update the dest_type. This will not change the in-memory representation
* of _buf intrinsics as those are stored in the src_type.
*/
if (nir_intrinsic_has_dest_type(intr)) {
nir_alu_type dest_type = nir_intrinsic_dest_type(intr);
nir_alu_type base_type = nir_get_glsl_base_type_for_nir_type(dest_type);
nir_intrinsic_set_dest_type(intr, nir_type_float | converted_bit_size);
if (base_type != nir_type_float) {
const nir_io_semantics sem = nir_intrinsic_io_semantics(intr);
/* Right now we have int descriptors, but the loaded value is always
* used as a flot, no harm in just "promoting" it to float. The cast
* is to discard the const modifier, this is safe.
*/
struct pan_varying_slot *slot = (struct pan_varying_slot *)
pan_varying_layout_find_slot(ctx->layout, sem.location);
slot->alu_type = nir_alu_type_get_type_size(slot->alu_type) |
nir_type_float;
}
}
/* We don't remove conversions, nir_opt_algebraic will fold f2f16 a@16
* and f2f32 a@32 automatically, everything but f2fmp of course.
*/
if (is_mp) {
b->cursor = nir_after_instr(&intr->instr);
nir_def *up_cvt = nir_f2f32(b, &intr->def);
nir_def_rewrite_uses_after(&intr->def, up_cvt);
}
return true;
}
bool
pan_nir_fuse_io_cvt(nir_shader *nir, uint64_t gpu_id,
struct pan_varying_layout *layout)
{
struct fuse_ctx ctx = {
.gpu_id = gpu_id,
.layout = layout,
};
return nir_shader_intrinsics_pass(nir, fuse_io_instr,
nir_metadata_control_flow, (void *)&ctx);
}

View file

@ -1,24 +1,6 @@
/*
* Copyright © 2018 Intel Corporation
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
* SPDX-License-Identifier: MIT
*/
#include "pan_nir.h"

View file

@ -1,24 +1,6 @@
/*
* Copyright (c) 2025 Collabora, Ltd.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
* SPDX-License-Identifier: MIT
*/
#include "pan_nir.h"