mesa: a2f2eebfdfb9c19e45792101fc5cad3dd3f0f4d6 (master 10.5.0-devel) $ ./bin/fp-rfl -auto Mesa: User error: GL_INVALID_OPERATION in glProgramStringARB(invalid storage size specifier "RFL") Compiler Error (pos=414 line=-1): line 13, char 1: error: invalid storage size specifier "RFL" 1]; RFL result.color in program: !!ARBfp1.0 OPTION NV_fragment_program; TEMP tmp, axis, direction; # Since we're calcuating per-fragment and the parameters are # interpolated, the parameters must be normalized. DP3 tmp.x, fragment.texcoord[0], fragment.texcoord[0]; DP3 tmp.y, fragment.texcoord[1], fragment.texcoord[1]; RCP tmp.x, tmp.x; RCP tmp.y, tmp.y; MUL axis, tmp.x, fragment.texcoord[0]; MUL direction, tmp.y, fragment.texcoord[1]; RFL result.color, fragment.texcoord[0], fragment.texcoord[1]; ENDPIGLIT: {"result": "fail" } There are only 'skip'ped commits left to test. The first bad commit could be any of: 868f95f1da74cf6dd7468cba1b56664aad585ccb a3688d686f147f4252d19b298ae26d4ac72c2e08 We cannot bisect more! bisect run cannot continue any more commit 868f95f1da74cf6dd7468cba1b56664aad585ccb Author: Eric Anholt <eric@anholt.net> Date: Wed Nov 12 16:35:05 2014 -0800 mesa: Drop unused SFL/STR opcodes. They're part of NV_vertex_program2, which I'm pretty sure we're never going to support. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Ian Roamnick <ian.d.romanick@intel.com> commit a3688d686f147f4252d19b298ae26d4ac72c2e08 Author: Eric Anholt <eric@anholt.net> Date: Wed Nov 12 16:39:49 2014 -0800 mesa: Drop unused NV_fragment_program opcodes. The extension itself was deleted 2 years ago. There are still some prog_instruction opcodes from NV_fp that exist because they're used by ir_to_mesa.cpp, though. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Ian Roamnick <ian.d.romanick@intel.com>
Looks like while indeed mesa doesn't support NV_fragment_program, it does however support NV_fragment_program_option, which layers these opcodes on top of ARB_fp. Seems like either both of these commits need to be reverted or support for NV_fragment_program_option needs to be removed.
(In reply to Roland Scheidegger from comment #1) > Looks like while indeed mesa doesn't support NV_fragment_program, it does > however support NV_fragment_program_option, which layers these opcodes on > top of ARB_fp. > Seems like either both of these commits need to be reverted or support for > NV_fragment_program_option needs to be removed. It looks like only classic swrast enables it, so I don't have a problem removing it.
I started working on killing NV_fragment_program_option in 2012 - the nukefpopt branch of ~kwg/mesa. IIRC, at the time, VMware cared a lot about SPECviewperf, and I thought that used it. I might be wrong though.
Brian would probably know about SPECviewperf, however since it apparently was only enabled in swrast it doesn't look like we were really depending on it. Unless there were plans to actually translate this stuff at some point...
Going from my notes, some of the catia tests use GL_NV_fragment_program[23] features (which like, GL_NV_fragment_program_option, layer on GL_ARB_fragment_program). And those tests fail with Mesa because viewperf doesn't even bother to check if the extensions are supported. But I don't think any viewperf tests specifically use GL_NV_fragment_program_option.
These other tests piglit have regressed as well on swrast. asmparsertest ARBfp1.0 size_specifier-07 asmparsertest ARBfp1.0 size_specifier-08 fp-set-02 fp-unpack-01
mesa: 8323796840a343ee39687cc8e8b424ee43d6fee7 (master 10.6.0-devel) piglit fp-rfl regression on swrast is still present.
commit 88305dfd0b79ad5980d293e86712496f134347b4 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Feb 14 16:34:04 2015 +0100 mesa: don't enable NV_fragment_program_option with swrast Since dropping some NV_fragment_program opcodes (commits 868f95f1da74cf6dd7468cba1b56664aad585ccb, a3688d686f147f4252d19b298ae26d4ac72c2e08) we can no longer parse all opcodes necessary for this extension, leading to bugs (https://bugs.freedesktop.org/show_bug.cgi?id=86980). Hence don't announce support for it in swrast (no other driver enabled it). (Note that remnants of some NV_fp/vp extensions remain, they could be dropped but are required as hacks for getting viewperf11 catia to run.)
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.