| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
There are many different names for constants in mesa, we were missing
one since the ureg rewrite.
|
|
|
|
| |
These don't depend on context state, but use a screen pointer.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
src/gallium/auxiliary/util/u_cpu_detect.c
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
reviewed by Brian Paul.
(cherry picked from master, commit ae2daacbac7242938cffe0e2409071e030e00863)
|
| |
| |
| |
| |
| | |
Otherwise st_copy_texsubimage will fallback to software blit due to
inconsistent base formats.
|
| |
| |
| |
| |
| | |
At last it's possible to turn on tgsi dumps and other debugging in the
state tracker without modifying sources...
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently using max_slots > 1 will cause synchronous rendering
if the driver flushes its command buffers between one bitmap and the
next.
Need to improve buffer_write to allow NO_WAIT (as well as no_flush)
updates to buffers where we know there is no conflict with previous
data.
|
| |
| |
| |
| |
| |
| | |
Always test for PIPE_TRANSFER_READ/WRITE using the bit-wise and operator, and
add a pipe_transfer_buffer_flags() helper for getting the buffer usage flags
corresponding to them.
|
| |
| |
| |
| |
| |
| |
| | |
This was redundant as drivers can just keep track of whether they are
inside a begin/end query pair. We want to add more query types later
and also support nested queries, none of which map well onto a flag like
this. No driver appeared to be using the flag.
|
| |
| |
| |
| | |
reviewed by Brian Paul.
|
| |
| |
| |
| |
| | |
It merges FEATURE_ARB_occlusion_query and FEATURE_EXT_timer_query, and
follows the feature conventions.
|
| |
| |
| |
| |
| | |
In guess_and_alloc_texture() use the gl_texture_object::GenerateMipmap
field as another hint as to whether to allocate space for a whole mipmap.
|
|\| |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The main issue is we didn't always have a gallium texture object with
enough space to store the to-be-generated mipmap levels. When that's
the case, allocate a new gallium texture and use st_texure_finalize()
to copy images from the old texture to the new one.
We also had the baseLevel parameter to st_render_mipmap() wrong.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Don't compute the st_texture_object::lastLevel field based on the texture
filters. Use the _MaxLevel value that core Mesa computes for us.
When called from the GenerateMipmap path, we'll use the lastLevel field
as-is.
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/mesa/drivers/dri/r600/r700_assembler.c
src/mesa/drivers/dri/r600/r700_chip.c
src/mesa/drivers/dri/r600/r700_render.c
src/mesa/drivers/dri/r600/r700_vertprog.c
src/mesa/drivers/dri/r600/r700_vertprog.h
src/mesa/drivers/dri/radeon/radeon_span.c
|
| |\| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In get_array_bounds we were previously defining a user buffer sized as
(nr_vertices * stride). The trouble is that if the vertex data
occupies less than stride bytes, the extra tailing (stride - size)
bytes may extend outside the memory actually allocated by the app and
caused a segfault.
To fix this, define a the buffer bounds to be:
ptr .. ptr + (nr-1)*stride + element_size
|
| | |
| | |
| | |
| | | |
To avoid breaking the gallium's builtin malloc debugging.
|
|\| |
| | |
| | |
| | |
| | | |
Conflicts:
src/mesa/drivers/dri/intel/intel_clear.c
|
| |\| |
|
| | |
| | |
| | |
| | | |
Signed-off-by: Nicolai Hähnle <[email protected]>
|
| | |
| | |
| | |
| | |
| | | |
We need to be sure to call the _mesa_unmap_teximage_pbo() function if we
called _mesa_validate_pbo_teximage().
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The following example caused an incorrect GL_OUT_OF_MEMORY error to be
raised in glTexSubImage2D:
glTexImage2D(level=0, width=32, height=32, pixels=NULL);
glTexImage2D(level=0, width=64, height=64, pixels=NULL);
glTexSubImage2D(level=0, pixels!=NULL);
The second glTexImage2D() call needs to cause the first image to be
deallocated then reallocated at the new size. This was not happening
because we were testing for pixels==NULL too early.
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
If the renderbuffer orientation is Y=0=TOP we need to invert the dstY
position.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
State tracker currently backs GL_RGB textures with RGBA almost always.
This means we need to maintain A==1 in these textures to give correct GL_RGB
sampling results.
This change offloads the RGBA->RGB copy to hardware using the new writemask
version of u_blit_pixels.
More src/dstLogical/dstActual triples could be shifted to hardware by
this technique in future patches.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When adding a new bitmap to the cache we have to check if the Z value is
changing and flush first if it is.
This is a modified version of a patch from Justin Dou <[email protected]>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Normally, the mesa/st would create a fake front buffer out of a
client-allocated surface.
In the DRI setting, however, st/dri provides a front buffer surface which is
created and maintained by the X server. Prefer to use this surface instead,
so that front buffer rendering and reading works correctly.
Signed-off-by: Nicolai Hähnle <[email protected]>
|
| | |
| | |
| | |
| | |
| | | |
Although GL_EXT_framebuffer_blit does not mention textures, it doesn't
forbid them either, and some thirdparty driver appear to support this.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Per the suggestion in the Intel driver, move the calls to
ctx->Driver.GenerateMipmap() into core Mesa so that drivers don't
have to worry about it.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Should be easier to read and work with than the older ways of emitting
TGSI tokens.
Also, emit simpler TGSI than previously:
- translate away source and dest extended modifiers
- translate away the SWZ opcode
|
| | |
| | |
| | |
| | | |
Never set in mesa. Remove from tgsi translation as well.
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| | |
If the renderbuffer orientation is Y=0=TOP we need to invert the dstY
position.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
State tracker currently backs GL_RGB textures with RGBA almost always.
This means we need to maintain A==1 in these textures to give correct GL_RGB
sampling results.
This change offloads the RGBA->RGB copy to hardware using the new writemask
version of u_blit_pixels.
More src/dstLogical/dstActual triples could be shifted to hardware by
this technique in future patches.
|
| |
| |
| |
| |
| |
| |
| | |
Instead of _mesa_map_readpix_pbo() use _mesa_map_pbo_source().
Instead of _mesa_map_drawpix_pbo() and _mesa_map_bitmap_pbo() use
_mesa_map_pbo_dest().
|
| |
| |
| |
| |
| | |
Return GL_FALSE if we failed to allocate the buffer. Then raise
GL_OUT_OF_MEMORY in core Mesa.
|
| | |
|
| |
| |
| |
| |
| | |
This fixes a bunch of gallium regressions since
commit 8096aa521369c3bcf5226c060efa6dd06e48ddc8
|
| |
| |
| |
| |
| |
| |
| | |
When adding a new bitmap to the cache we have to check if the Z value is
changing and flush first if it is.
This is a modified version of a patch from Justin Dou <[email protected]>
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
This branch introduces new FRAG_ATTRIB_FACE and FRAG_ATTRIB_PNTC fragment
program inputs for GLSL gl_FrontFacing and gl_PointCoord. Before, these
attributes were packed with the FOG attribute. That made things
complicated elsewhere.
|