Age | Commit message (Collapse) | Author |
|
Conflicts:
src/gallium/state_trackers/xorg/xorg_xv.c
src/mesa/drivers/dri/intel/intel_span.c
|
|
The assertion is that the correct read type to be using is the native
type of the underlying read renderbuffer. For some fallback paths, this
may be worse than GL_RGBA/GL_UNSIGNED_BYTE for reads today, but it gets
all drivers the expected GL_BGRA/GL_UNSIGNED_BYTE for ARGB8888 or
GL_BGR//GL_UNSIGNED_SHORT_5_6_5_REV for rgb565 with no work.
This fixes the intel (and other) DRI drivers to report read formats that
should hit blit PBO readpixels paths.
|
|
|
|
In particular, gcc man page warns that
union a_union {
int i;
double d;
};
int f() {
double d = 3.0;
return ((union a_union *) &d)->i;
}
"might" not be ok (why not?), even though it doesn't seem to generate
any warnings. Hence don't use this and do the extra step to actually use
assignment to get the values in/out of the union.
This changes parts of 3456f9149b3009fcfce80054759d05883d3c4ee5.
|
|
use pointer to union instead of void pointer.
gcc complained a lot, depending what the pointer originally actually was.
Looks like it's in fact maybe legal to cast for instance uint pointers to
union pointers as long as union contains a uint type, hence use this with some
callers, other just use union util_color in the first place.
|
|
|
|
This fixes the regression from commit 884007546c98b1779bf266ec5111b1e7e2b68b2e
Fixes bug 25456 (piglit derivs regression).
|
|
|
|
This can e.g. increase the chance of being able to accelerate
glCopyTex(Sub)Image from an alpha-less renderbuffer.
|
|
Conflicts:
src/gallium/state_trackers/xorg/xorg_exa.c
|
|
|
|
|
|
|
|
|
|
This patch removes nblocksx, nblocksy arrays from pipe_texture (can be
recalculated if needed). Furthermore, pipe_format_block struct is gone
completely (again, contains just derived state).
nblocksx, nblocksy, block are also removed from pipe_transfer, together with
the format enum (can be obtained from the texture associated with the transfer).
|
|
Fixes progs/glsl/twoside.c demo.
|
|
Conflicts:
src/gallium/drivers/r300/r300_texture.c
src/gallium/state_trackers/xorg/xorg_exa.c
src/mesa/state_tracker/st_cb_texture.c
|
|
width/height/depth arrays
|
|
Conflicts:
src/mesa/state_tracker/st_atom_shader.c
src/mesa/state_tracker/st_program.c
|
|
|
|
We only need to flush the gallium driver in this case.
Fixes a recursive state validation bug.
|
|
|
|
|
|
|
|
Add a GLbitfield64 type and several macros to operate on 64-bit
fields. The OutputsWritten field of gl_program is changed to use that
type. This results in a fair amount of fallout in drivers that use
programs.
No changes are strictly necessary at this point as all bits used are
below the 32-bit boundary. Fairly soon several bits will be added for
clip distances written by a vertex shader. This will cause several
bits used for varyings to be pushed above the 32-bit boundary. This
will affect any drivers that support GLSL.
At this point, only the i965 driver has been modified to support this
eventuality.
I did this as a "squash" merge. There were several places through the
outputswritten64 branch where things were broken. I foresee this
causing difficulties later for bisecting. The history is still
available in the branch.
Conflicts:
src/mesa/drivers/dri/i965/brw_wm.h
|
|
|
|
|
|
Translate vertex shaders independently of fragment shaders.
Previously tried to make fragment shader semantic indexes always start
at zero and exclude holes. This was unnecessary but meant that vertex
shader translation had to be adjusted to take this into account.
Now use a fixed scheme for labelling special FS input semantics
(color, etc), and another fixed scheme for the generics.
With this, vertex shaders can be translated independently of the bound
fragment shader, assuming mesa has done its own job and ensured that
the vertex shader provides at least the inputs the fragment shader is
looking for. The state-tracker didn't attempt to do anything about
this previously, so it shouldn't be needed now.
|
|
One of several cases where we build mesa shaders and then translate
them to tgsi. Many of those cases it's because we're combining two
mesa programs and there are helpers for that, but in this case at
least can go straight to tgsi.
|
|
|
|
|
|
|
|
Used in Quake3.
|
|
|
|
|
|
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
util_blit_pixels_writemask() only works for color formats at this time.
Also, it might never work for depth/stencil surfaces since we can't get
handle stencil values in a fragment shader.
Fixes glCopyTexSubImage(GL_DEPTH_COMPONENT).
|
|
|
|
|
|
Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
Fix glxgears and openarena for Nouveau (no more asserts and crash).
Signed-off-by: David Heidelberger <d.okias@gmail.com
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
|
|
Some of the fixes are cherry-picked from opengl-es branch.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
Conflicts:
src/mesa/drivers/dri/radeon/radeon_fbo.c
src/mesa/drivers/dri/s3v/s3v_tex.c
src/mesa/drivers/dri/s3v/s3v_xmesa.c
src/mesa/drivers/dri/trident/trident_context.c
src/mesa/main/debug.c
src/mesa/main/mipmap.c
src/mesa/main/texformat.c
src/mesa/main/texgetimage.c
|
|
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
|
|
Call the ctx->Driver.ChooseTextureFormat() function from core Mesa's
_mesa_[Copy]TexImage functions instead of in the driver functions.
One less thing for drivers to do.
|
|
|
|
It always just called _mesa_compressed_texture_size() anyway.
|
|
Replace calls to ctx->Driver.CompressedTextureSize with calls to
_mesa_format_image_size. The former always called the later.
|
|
These haven't been used by the mesa state tracker since the
conversion to tgsi_ureg, and it seems that none of the
other state trackers are using it either.
This helps simplify one of the biggest suprises when starting off with
TGSI shaders.
|