tree d54e51341d3282780dd789887aecf04672df5cbb
parent b05a778265c16928fcbdd6a6ebaef85a86d7ab9c
author David Neto <dneto@google.com> 1762550016 -0500
committer GitHub <noreply@github.com> 1762550016 -0500
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJpDmEACRC1aQ7uu5UhlAAASqUQAHRxjpePjZDXl63moNCrspVZ
 R3ivsO4FqNN8gKuQKncilsKIu8aw3YR09hFgZWThC4xQpNeHbS+5GSsY/eaXiTif
 g+brIFOvej8gRI0oBwNySiCJdxs8CqvJSQbLfRof4L3YaTFx/YyFC+nLOSNQansR
 pyHEmNvfAb+JAkgmR/B2NzrT99deX8Q9gCU+StpVSOJtuJgeZQxCvTAiZEUij2bw
 ym44WXFOLIMUzAYBpDa/dSmx6klNrZZGD4criiEk9g7EA4Ry7jQOfpfsnN4ie/FK
 gw6G5zN5CvPbC94sUhUxDX1YQL9jc8Tyq3p/SdKPqqbWWze+KdEJ9dzChHfThrFg
 e2MYpuizqmmzSID8KNiVa5UZL2XlyCXqYwWb2hyn/O5J8WO+j75A3mDde9iRFMBI
 BdegRm6eEZjUGAicSILkp7IYVsE/mCi4AlxUHvHcz3dZF3xypBrDswGjMymS+brb
 S91rDQX3TU20fbtPTqtFDdudtMRpzIPPyvrDRnpOqWnQcS5qQKrqaznK3O9njKN8
 8abVrio9e42rrDmVsEjhADPH/0nyqLsu0Yk094GkK2Ha81nGoT6iXnSjs1zGO3Vl
 Ex2rv38GN2qr2osi01d2NpcndiAtCyAORov+4SgeKs/iIndaN0iEQlbGO6uHbKPX
 93Xogd/QYUtQ7LJdNmMS
 =pY9f
 -----END PGP SIGNATURE-----
 

const_array_elements limit test: split into MAX, MAX/8, MAX/64 cases (#4497)

The MAX const array size is 2047.

The driver compiler can take a long time compiling the MAX case.
For example a laptop with an Intel Gen12 LP GPU with the Mesa
driver can take 28s to compile the shader.  This exceeds Chrome's GPU
watchdog timeout (10s) and the test will fail.

Instead of completely disabling the test, split it into cases
for MAX, MAX/8, and MAX/64 elements.  This lets us skip the very
largest cases, but still attempt smaller bug significant array
sizes. That lets us get some signal that the large-ish const
arrays are viable.

The additional runtime for the new cases are insignificant
compared to the full case.

Fixed: #4496