This fixes crashes with the memory debugging routines on Windows.
NOTE: This is a candidate for the 7.8 stable branch
(cherry picked from commit edbc302ad6)
Before, if there were no color buffers enabled (with glDrawBuffers(GL_NONE))
when the texenv program was generated, we'd emit writes to OUTPUT[1] but
the OutputsWritten mask was 0. This inconsistency caused an assertion to
fail later in the Mesa->TGSI translation.
Fixes fd.o bug 28169
NOTE: this is a candidate for the 7.8 branch (and depends on commit
b6b9b17d27).
(cherry picked from commit 6e83420ee0)
All the state that effects the program should be in the key.
This didn't help with bug 28169 but is a good fix anyway.
NOTE: this is a low-priority candidate for the 7.8 branch. In practice,
this issue might never be hit.
(cherry picked from commit b6b9b17d27)
The code to emit an array of OpenGL state vars lacked the code
to handle the gl_TextureMatrix[] array.
Fixes fd.o bug 28967
(manual cherry pick of 41f66915ab)
Acked-by: Brian Paul <brianp@vmware.com>
Fixes fd.o bug 27216. May also be the root cause of fd.o bug 28950.
We weren't propogating the storage info for the x=foo() expression up
through the IR tree to the inequality expression.
(manual cherry-pick 3751e6e1fc)
Acked-by: Brian Paul <brianp@vmware.com>
If we bias x,y we still need to pass through z,w in case the shader
reads gl_FragCoord.z or .w.
Fixes fd.o bug 29183 (piglit glsl-bug-22603).
NOTE: This is a candidate for the 7.8 branch.
Need to flush command stream before mapping texture image
that is referenced by current cs.
This is a manual application of
ba03a0b5ba, which could not be
cherry-picked directly due to refactoring.
Acked-by: Maciej Cencora <m.cencora@gmail.com>
r600 doesnt need the same normalization as r700 - instead it requires
range to be truncated to -pi..pi
I left the range trunc also effective on r700 althouch according the docs
it has sufficent range (-512*PI, +512*PI). The instructions seem
to be used not too often to cause perf loss because of this
Based on patches and testing by Conn Clark and Alain Perrot
(cherry picked from commit d6a5f94ea4)
doc additions: shader export ARRAY_BASE for EXPORT_POS: 60 is position,
61 is misc vec(VS_OUT_MISC_VEC - used here),
62, 63 are clip distance vectors(VS_OUT_CCDIST#)
sorry for formating - there seem to be so many different styles in r600
(cherry picked from commit 12172071b5)
there's no more vp results for point coords so we cannot iterate
over vp outputs. Use only Point.CoordReplace[i]
(cherry picked from commit 04a148629f)
This avoids calling radeonFlush() during context destruction, when
ctx->DrawBuffer would be NULL.
NOTE: This is a candidate for the 7.8 branch.
(cherry picked from commit fef9b532cd)
Fixes piglit object_purgeable-api-pbo, object_purgeable-api-vbo
and object_purgeable-api-texture failures with swrast.
NOTE: This is a candidate for the 7.8 branch.
(cherry picked from commit 2f4ce25645)
When searching for valid miptree check images in range
of [BaseLeve, MaxLevel] not [MinLod, MaxLoad].
Prevents unnecessary miptree allocations in cases when during
every rendering operation different texture image level
was selected using MIN_LOD = MAX_LOD = level (for every level
new miptree for whole texture was allocated).
Candidate for 7.8 branch.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
(cherry picked from commit 72e6a1e72f)
Always store selected miptree in texObj->mt so get_base_teximage_offset returns correct data.
Found with piglit/mipmap-setup.
Candidate for 7.8 branch.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
(cherry picked from commit ad24ea37bb)
...instead of waiting until glGetString(GL_EXTENSIONS) is called.
This fixes a problem where the MESA_EXTENSION_OVERRIDE env var is
ignored if the app never calls glGetString(GL_EXTENSIONS).
NOTE: this is a candidate patch for the 7.8 branch.
(cherry picked from commit a879d14ecf)