Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Stray '- 0.5' copied from linear versions.
|
|
All these fastpaths are examples of the types of things we'd code-generate
in a more sophisticated version of softpipe.
|
|
Because this is interpolated (ie. early) depth, we can build in an
assumption about the quads emitted by triangle setup, ie that they
are actually linear spans. Interpolate z over those spans in z16
format to save on math & conversion.
|
|
Disable blend code when no color buffer
|
|
|
|
|
|
|
|
Consolidate the read-modify-write color combining code from
the blend, colormask and output stages.
|
|
|
|
|
|
First attempt
|
|
This is part one -- we still only pass a single quad down, but
the code can now cope with more. The quads must all be from the same
tile.
|
|
|
|
There's no need to push out depth buffer contents on swapbuffers.
Note that this change doesn't throw away depth buffer changes, it simply
holds them in the cache over calls to swapbuffers. The hope is
that swapbuffers will be followed by a clear() which means in that case
we won't have to write the changes out.
|
|
|
|
The sp_tile_cache is often called repeatedly to look up the same
tile. Add a cache (to the cache) of the single tile most recently
retreived and make a quick inline check to see if this matches the
subsequent request.
Add a tile_address bitfield struct to make this check easier.
|
|
|
|
|
|
No loss of performance, but simpler code.
|
|
No performance gain yet, but the code is a bit cleaner.
|
|
The tile cache is a utility, it shouldn't know anything about the
entity which is making use of it (ie softpipe).
Remove softpipe parameter to all the tilecache function calls, and
also remove the need to keep a softpipe pointer in the sampler structs.
|
|
Conflicts:
Makefile
progs/glsl/multitex.c
src/mesa/main/enums.c
src/mesa/main/state.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h
|
|
Most obvious problem is drawpixels comes out blocky, but this may be
an existing issue of KIL on the sse path.
|
|
Pass the tgsi_exec_machine struct in directly and just hold a single
pointer to this struct, rather than keeping one for each of its
internal members.
|
|
Centralize the creation, initialization and destruction of this struct.
Use align_malloc instead of home-brew alternatives.
|
|
|
|
default extension list
|
|
Conflicts:
src/mesa/main/dlist.c
src/mesa/vbo/vbo_save_api.c
|
|
Remove the drm_api from the functions in the softpipe and
i915simple drivers. Create wrapper functions in the
backends instead.
|
|
mesa allocates both frontface and pointcoord registers within the fog
coordinate register, by using swizzling. to make it cleaner and easier
for drivers we want each of them in its own register. so when doing
compilation from the mesa IR to tgsi allocate new registers for both
and add new semantics to the respective declarations.
|
|
|
|
|
|
|
|
|
|
The alpha value wasn't set at all before so we got unpredictable results.
Note that we don't currently obey GL_DEPTH_TEXTURE_MODE in the state
tracker. For now, we return the result in the default mode (r,r,r,1).
|
|
For some triangles we can generate quads which lie just outside the
surface bounds. Just check the quad's mask before trying to emit/process
the quad.
Fixes failed assertion in Lightsmark.
|
|
Render results are only visible when the render cache is flushed.
softpipe_is_texture_referenced must reflect that or transfers to/from the
textures bound in the framebuffer won't be proceeded of the necessary
flush, causing transfer data to be outdated/clobbered.
This fixes conform drawpix test with softpipe.
|
|
Conflicts:
Makefile
src/gallium/drivers/softpipe/sp_screen.c
src/mesa/main/version.h
|
|
Conflicts:
src/mesa/drivers/dri/i915/i915_tex_layout.c
src/mesa/drivers/dri/i965/brw_wm_glsl.c
src/mesa/drivers/dri/intel/intel_buffer_objects.c
src/mesa/drivers/dri/intel/intel_pixel_bitmap.c
src/mesa/drivers/dri/intel/intel_pixel_draw.c
src/mesa/main/enums.c
src/mesa/main/texstate.c
src/mesa/vbo/vbo_exec_array.c
|
|
|
|
|
|
Conflicts:
docs/relnotes-7.6.html
progs/tests/Makefile
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/glx/x11/indirect.c
src/mesa/glapi/Makefile
src/mesa/glapi/dispatch.h
src/mesa/glapi/glapioffsets.h
src/mesa/glapi/glapitable.h
src/mesa/glapi/glapitemp.h
src/mesa/glapi/glprocs.h
src/mesa/main/dlist.c
src/mesa/main/enums.c
src/mesa/sparc/glapi_sparc.S
src/mesa/x86-64/glapi_x86-64.S
src/mesa/x86/glapi_x86.S
|
|
Conflicts:
src/mesa/main/api_validate.c
|
|
|
|
|
|
Note that this doesn't have any real significance since
PIPE_CAP_ANISOTROPIC_FILTER still returns 0.
|