- Mar 02, 2011
-
-
Ian Romanick authored
-
Ian Romanick authored
-
- Mar 01, 2011
-
-
Ian Romanick authored
Not only did this contain lies, it contained lies that wouldn't be useful even if true.
-
Ian Romanick authored
All the unnumbered bugs are first. These are followed by numbered bugs sorted by bug number.
-
Ian Romanick authored
-
Cyril Brulebois authored
Suggested by a freedesktop.org admin. Signed-off-by:
Cyril Brulebois <kibi@debian.org> (cherry picked from commit d252db7a)
-
Brian Paul authored
(cherry picked from commit 1bf9954b) Signed-off-by:
Ian Romanick <ian.d.romanick@intel.com>
-
Sam Hocevar authored
(cherry picked from commit fde49436)
-
Sam Hocevar authored
(cherry picked from commit 3e8fb54f)
-
Lina Versace authored
Before populating the vertex buffer attribute pointer (VB->AttribPtr[]), convert vertex data in GL_FIXED format to GL_FLOAT. Fixes bug: http://bugs.freedesktop.org/show_bug.cgi?id=34047 NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit a231ac23)
-
Ian Romanick authored
NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit 4c1dc1c4)
-
Ian Romanick authored
Previously the SNE and SEQ instructions would calculate the partial result to the destination register. This would cause problems if the destination register was also one of the source registers. Fixes piglit tests glsl-fs-any, glsl-fs-struct-equal, glsl-fs-struct-notequal, glsl-fs-vec4-operator-equal, glsl-fs-vec4-operator-notequal. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit 53b8b688)
-
Ian Romanick authored
Previously a register would be marked as available if any component was written. This caused shaders such as this: 0: TEX TEMP[0].xyz, INPUT[14].xyyy, texture[0], 2D; 1: MUL TEMP[1], UNIFORM[0], TEMP[0].xxxx; 2: MAD TEMP[2], UNIFORM[1], TEMP[0].yyyy, TEMP[1]; 3: MAD TEMP[1], UNIFORM[2], TEMP[0].zzzz, TEMP[2]; 4: ADD TEMP[0].xyz, TEMP[1].xyzx, UNIFORM[3].xyzx; 5: TEX TEMP[1].w, INPUT[14].xyyy, texture[0], 2D; 6: MOV TEMP[0].w, TEMP[1].wwww; 7: MOV OUTPUT[2], TEMP[0]; 8: END to produce incorrect code such as this: BEGIN DCL S[0] DCL T_TEX0 R[0] = MOV T_TEX0.xyyy U[0] = TEXLD S[0],R[0] R[0].xyz = MOV U[0] R[1] = MUL CONST[0], R[0].xxxx R[2] = MAD CONST[1], R[0].yyyy, R[1] R[1] = MAD CONST[2], R[0].zzzz, R[2] R[0].xyz = ADD R[1].xyzx, CONST[3].xyzx R[0] = MOV T_TEX0.xyyy U[0] = TEXLD S[0],R[0] R[1].w = MOV U[0] R[0].w = MOV R[1].wwww oC = MOV R[0] END Note that T_TEX0 is copied to R[0], but the xyz components of R[0] are still expected to hold a calculated value. Fixes piglit tests draw-elements-vs-inputs, fp-kill, and glsl-fs-color-matrix. It also fixes Meego bugzilla #13005. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit a0458273)
-
Kenneth Graunke authored
This reverts commit 21711975, as it caused a regression on Ironlake (bug #34646).
-
Kenneth Graunke authored
Plugs a memory leak when compiling shaders with user defined structures. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit eb639349)
-
Kenneth Graunke authored
255.875 matches the hardware documentation. Presumably this was a typo. NOTE: This is a candidate for the 7.10 branch, along with commit 2bfc23fb. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit e6e5c1f4)
-
Kenneth Graunke authored
We can't safely use fixed size arrays since Gen6+ supports unlimited nesting of control flow. NOTE: This is a candidate for the 7.10 branch. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit df2aef0e)
-
Kenneth Graunke authored
255.875 matches the hardware documentation. Presumably this was a typo. Found by inspection. Not known to fix any issues. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 2bfc23fb)
-
Kenneth Graunke authored
pixel_w is the final result; wpos_w is used on gen4 to compute it. NOTE: This is a candidate for the 7.10 branch. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 4a3b2811)
-
Kenneth Graunke authored
The code that generates MATH instructions attempts to work around the hardware ignoring source modifiers (abs and negate) by emitting moves into temporaries. Unfortunately, this pass coalesced those registers, restoring the original problem. Avoid doing that. Fixes several OpenGL ES2 conformance failures on Sandybridge. NOTE: This is a candidate for the 7.10 branch. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 2c2686b9)
-
Emma Anholt authored
Signed-off-by:
Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 382c2d99)
-
Kenneth Graunke authored
gl_PointSize (VERT_RESULT_PSIZ) doesn't take up a message register, as it's part of the header. Without this fix, writing to gl_PointSize would cause the SF to read and use the wrong attributes, leading to all kinds of random looking failure. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 3e91070e)
-
Kenneth Graunke authored
Single-operand math already had these workarounds, but POW (the only two operand function) did not. It needs them too - otherwise we can hit assertion failures in brw_eu_emit.c when code is actually generated. NOTE: This is a candidate for the 7.10 branch. Reviewed-by:
Eric Anholt <eric@anholt.net> (cherry picked from commit 72cd7e87)
-
- Feb 28, 2011
-
-
Ian Romanick authored
-
Ian Romanick authored
Arrays are zero based. If the highest element accessed is 6, the array needs to have 7 elements. Fixes piglit test glsl-fs-implicit-array-size-03 and bugzilla #34198. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit 25b36e8f)
-
Dylan Noblesmith authored
'dpy' was being checked for null *after* it was already used once. Also add a null check for psc, and drop gc's redundant initialization. (cherry picked from commit b5dc4071)
-
Ian Romanick authored
-
Ian Romanick authored
Track variables, functions, and types during parsing. Use this information in the lexer to return the currect "type" for identifiers. Change the handling of structure constructors. They will now show up in the AST as constructors (instead of plain function calls). Fixes piglit tests constructor-18.vert, constructor-19.vert, and constructor-20.vert. Also fixes bugzilla #29926. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit 88421589)
-
Keith Packard authored
This requires lexical disambiguation between variable and type identifiers (as most C compilers do). Signed-off-by:
Keith Packard <keithp@keithp.com> NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit f4b812e1)
-
Lina Versace authored
Fixes regression: https://bugs.freedesktop.org/show_bug.cgi?id=34160 Commit e7c1f058 disabled constant-folding when division-by-zero occured. This was a mistake, because the spec does allow division by zero. (From section 5.9 of the GLSL 1.20 spec: Dividing by zero does not cause an exception but does result in an unspecified value.) For floating-point division, the original pre-e7c1f058 behavior is reinstated. For integer division, constant-fold 1/0 to 0. Signed-off-by:
Ian Romanick <ian.d.romanick@intel.com> (cherry picked from commit 62c8c773)
-
Lina Versace authored
From section 5.9 of the GLSL 1.20 spec: The operator modulus (%) is reserved for future use. From section 5.8 of the GLSL 1.20 spec: The assignments modulus into (%=), left shift by (<<=), right shift by (>>=), inclusive or into ( |=), and exclusive or into ( ^=). These operators are reserved for future use. The GLSL ES 1.00 spec and GLSL 1.10 spec have similiar language. Fixes bug: https://bugs.freedesktop.org//show_bug.cgi?id=33916 Fixes Piglit tests: spec/glsl-1.00/compiler/arithmetic-operators/modulus-00.frag spec/glsl-1.00/compiler/assignment-operators/modulus-assign-00.frag spec/glsl-1.10/compiler/arithmetic-operators/modulus-00.frag spec/glsl-1.10/compiler/assignment-operators/modulus-assign-00.frag spec/glsl-1.20/compiler/arithmetic-operators/modulus-00.frag spec/glsl-1.20/compiler/assignment-operators/modulus-assign-00.frag (cherry picked from commit 82f994f3)
-
Lina Versace authored
For example, this now raises an error: #define XXX 1 / 0 Fixes bug: https://bugs.freedesktop.org//show_bug.cgi?id=33507 Fixes Piglit test: spec/glsl-1.10/preprocessor/modulus-by-zero.vert NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit fd1252ab)
-
Ian Romanick authored
See table 6.7 on page 347 of the OpenGL 3.0 specification. (cherry picked from commit 09e15ac7)
-
Emma Anholt authored
Fixes piglit glsl-fs-texture2d-branching. I couldn't come up with a testcase that didn't involve dead code, but it's still worthwhile to fix I think. (cherry picked from commit 8ce425f3)
-
Kenneth Graunke authored
This has probably existed since e5e34ab1 or so. NOTE: This is a candidate for the 7.9 and 7.10 branches. (cherry picked from commit dfdb9fda)
-
Ian Romanick authored
Previously we'd happily compile GLSL 1.30 shaders on any driver. We'd also happily compile GLSL 1.10 and 1.20 shaders in an ES2 context. This has been a long standing FINISHME in the compiler. NOTE: This is a candidate for the 7.9 and 7.10 branches (cherry picked from commit 14880a51)
-
Ian Romanick authored
NOTE: This is a candidate for the 7.9 and 7.10 branches (cherry picked from commit e5e34ab1)
-
Ian Romanick authored
...and remove egg from face. (cherry picked from commit 2fb0aebd)
-
Ian Romanick authored
(cherry picked from commit 790ff232)
-
Ian Romanick authored
(cherry picked from commit 3d028024)
-