Summary: | [ES3.1CTS,BDW,SKL,BSW,SKL,KBL] gpu_shader5 prevents GEN8+ from passing CTS | ||
---|---|---|---|
Product: | Mesa | Reporter: | Mark Janes <mark.a.janes> |
Component: | Drivers/DRI/i965 | Assignee: | Kenneth Graunke <kenneth> |
Status: | RESOLVED FIXED | QA Contact: | Intel 3D Bugs Mailing List <intel-3d-bugs> |
Severity: | normal | ||
Priority: | medium | CC: | jason |
Version: | git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | |||
Bug Blocks: | 92778 |
Description
Mark Janes
2016-03-04 20:27:33 UTC
Here's a stab in the dark - we set nir_compiler_options::lower_ffma to true, to try and allow for better CSE of MULs and ADDs. But this causes ffmas that came from the actual fma() GLSL built-in, where the point is increased precision, to be split up as well. We probably want to avoid *creating* new ffmas, but avoid *splitting* ones that come in from GLSL IR. These seem to fail, even with Jason's recent precision patches. Assigning to Jason so he can take a look. Apparently the fma_precision tests are hitting some kind of transform feedback related bug. They're getting a GL error when trying to set up their vertex buffers, because their VS inputs apparently don't exist. It looks like we dead code eliminated the whole program, due to transform feedback outputs being removed for whatever reason. I have a patch to fix ES31-CTS.gpu_shader5.fma_precision_*. (In reply to Kenneth Graunke from comment #4) > I have a patch to fix ES31-CTS.gpu_shader5.fma_precision_*. And here it is: https://lists.freedesktop.org/archives/mesa-dev/2016-April/111714.html I looked into the ES31-CTS.gpu_shader5.precise_qualifier bug, and it is indeed a precision issue caused by fusing multiply adds. GLSL IR passes appear to be throwing away all precision information. I have a patch for that as well, though it's a bit of a hack. mesa 26c56e2 fixes most of these tests. The only remaining failure is: es31-cts.gpu_shader5.precise_qualifier (In reply to Mark Janes from comment #7) > mesa 26c56e2 fixes most of these tests. The only remaining failure is: > > es31-cts.gpu_shader5.precise_qualifier precise_qualifier is passing for me on gen8 with master. fixed in mesa 95d622e16df0ddbf52e43a34bd6ed6dd15e3bdee |
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.