Keith Whitwell
54c6ef144f
llvmpipe: fix typo
2009-08-29 09:21:18 +01:00
Keith Whitwell
3c71a19016
llvmpipe: example fastpaths in blending
2009-08-29 09:21:18 +01:00
Keith Whitwell
80eb276630
llvmpipe: actually pass >1 quad from triangle routine
...
First attempt
2009-08-29 09:21:18 +01:00
Keith Whitwell
bdbb4beb21
llvmpipe: expand quad pipeline to process >1 quad at a time
...
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.
2009-08-29 09:21:18 +01:00
Keith Whitwell
4486012245
llvmpipe: rip out old mulithread support
2009-08-29 09:21:18 +01:00
Keith Whitwell
2a7c39a211
llvmpipe: avoid flushing depth buffer cache on swapbuffers
...
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.
2009-08-29 09:21:17 +01:00
Keith Whitwell
3adca96114
llvmpipe: also shortcircuit non-texture tile lookups
2009-08-29 09:21:17 +01:00
Keith Whitwell
2301314e7c
llvmpipe: shortcircuit repeated lookups of the same tile
...
The lp_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.
2009-08-29 09:21:17 +01:00
Keith Whitwell
df1823ec5b
llvmpipe: remove unused vars in lp_setup.c
2009-08-29 09:21:17 +01:00
Keith Whitwell
08811032c2
llvmpipe: use bitwise logic to setup quad masks in lp_setup
2009-08-29 09:21:17 +01:00
Keith Whitwell
0aa24fa36f
llvmpipe: simplify flush_spans
...
No loss of performance, but simpler code.
2009-08-29 09:21:17 +01:00
Keith Whitwell
0f55a95b2f
llvmpipe: make some small steps to flush texture cache less frequently
...
No performance gain yet, but the code is a bit cleaner.
2009-08-29 09:21:16 +01:00
Keith Whitwell
3121484a8b
llvmpipe: remove backwards dependency from tilecache to llvmpipe
...
The tile cache is a utility, it shouldn't know anything about the
entity which is making use of it (ie llvmpipe).
Remove llvmpipe parameter to all the tilecache function calls, and
also remove the need to keep a llvmpipe pointer in the sampler structs.
2009-08-29 09:21:16 +01:00
José Fonseca
c9a5930fe4
llvmpipe: Rename preprocessor symbols too.
2009-08-29 09:21:16 +01:00
José Fonseca
8783732c4d
llvmpipe: Pixel packing/unpacking and loop code generators.
...
Just a small proof of concept plus a standalone test app. Not integrated
with the rest of the driver yet.
2009-08-29 09:21:16 +01:00
José Fonseca
15422b2d99
util: Pixel format database.
...
There are some inconsistencies in pipe_format, but above all, there
simply aren't enough bits in an enum to conveniently store all
information about a pixel format we need to be able to dynamically
generate pixel packing/unpacking code.
2009-08-29 09:21:15 +01:00
José Fonseca
946f432a08
llvmpipe: Fork softpipe for experimentation with llvm.
2009-08-29 09:21:15 +01:00
Jakob Bornecrantz
55e7abf81f
i915g: Add cursor case for scanout layout
2009-08-28 22:41:53 +01:00
Jakob Bornecrantz
644060c025
i915g: Don't forget to init buffer ptrs
2009-08-28 22:41:52 +01:00
Zack Rusin
aaedd035ca
st/xorg: disable composite accelration for now
2009-08-28 16:19:53 -04:00
Zack Rusin
0a26811286
st/xorg: bind samplers before composition
2009-08-28 15:43:46 -04:00
Zack Rusin
f1c0a4b2f4
st/xorg: normalize coords for the src operands in the vertex shader
2009-08-28 15:36:33 -04:00
Joakim Sindholt
dbe58d7f9f
r300g: pretty up the new drm code a bit
...
As it turns out, I made some boners. This corrects them (I hope)
2009-08-28 20:05:52 +02:00
Jakob Bornecrantz
1e9eb69f83
st/xorg: If migrating from a sw pixmap to a hw pixmap upload old contents
2009-08-28 17:10:58 +02:00
Jakob Bornecrantz
d80242c254
st/xorg: Null devPrivate.ptr when unmapping
2009-08-28 17:10:57 +02:00
Michel Dänzer
fdc8ec60eb
st/xorg: Fix scons build.
2009-08-28 17:42:07 +02:00
Joakim Sindholt
6bfec14d6d
r300g: support new drm_api
2009-08-28 17:23:11 +02:00
Jakob Bornecrantz
1e5014f7df
drm_api: Operate on textures instead of buffers
...
Most use cases just got the buffer from the texture
and then called into one of the get_handle functions.
Also with this patch it would be easier to move to a
generic function for getting handles from textures
and textures from handles, that is exposed via the screen.
2009-08-28 13:38:23 +01:00
Jakob Bornecrantz
7d9af52bc5
st/xorg: Fix some warnings
2009-08-28 12:46:24 +02:00
Jakob Bornecrantz
b26aee0ffe
st/dri: Fix some warnings
2009-08-28 12:46:17 +02:00
Jakob Bornecrantz
6f0a1a8426
st/xorg: Pass dri driver name as driverName on screen
2009-08-28 12:36:42 +02:00
Jakob Bornecrantz
205d344e2a
Revert "st/xorg/dri: Pass texture formats via the DRI2 protocol flags."
...
This reverts commit a33e9ea3b9 .
As this change breaks both radeon and nouveau
2009-08-28 12:35:42 +02:00
Zack Rusin
8bdce0c3a7
st/xorg: set vertex and fragment shader for the current op
2009-08-27 18:17:54 -04:00
Zack Rusin
c7e103d238
st/xorg: bind rasterizer state
2009-08-27 18:08:58 -04:00
Zack Rusin
2048182e86
st/xorg: set blend state for exa
2009-08-27 18:06:15 -04:00
Zack Rusin
f9a3fce090
st/xorg: bind framebuffer and viewport for exa
2009-08-27 17:39:45 -04:00
Zack Rusin
3f15ea866f
st/xorg: create and destroy shader cache
2009-08-27 17:39:45 -04:00
Michel Dänzer
416ee3c53e
st/xorg: Set shared usage of pixmaps for use via DRI2.
...
Also allow pixmaps to have both the shared and displayed usage flags, as is
the case for the screen pixmap now.
2009-08-27 20:29:32 +02:00
Michel Dänzer
bfbfcdd703
st/dri: Make sure the front left renderbuffer is there for texture-from-pixmap.
2009-08-27 20:27:28 +02:00
Michel Dänzer
d73d4cfcf1
st/xorg: Don't hardcode ExaPrepareCopy to fall back to software.
2009-08-27 20:27:28 +02:00
Michel Dänzer
05aa56a827
st/xorg: Flush context if necessary in ExaPrepareAccess.
2009-08-27 20:27:28 +02:00
Michel Dänzer
f3a540f6d7
st/dri: Only ask for fake front buffer for single buffer visuals by default.
2009-08-27 20:17:53 +02:00
Michel Dänzer
a33e9ea3b9
st/xorg/dri: Pass texture formats via the DRI2 protocol flags.
...
No need to guess.
2009-08-27 20:17:53 +02:00
Brian Paul
44e86dde6d
Merge branch 'mesa_7_5_branch'
2009-08-27 09:14:09 -06:00
Brian Paul
32f95f8c17
gallium/util: added support for SRGB formats
...
Fixes glean/texture_srgb failure, bug #23449 .
2009-08-27 09:10:38 -06:00
Brian Paul
f8ae968d28
gallium/util: added cases for SRGB formats
2009-08-27 09:09:56 -06:00
Cooper Yuan
ba87cbf2be
r300g: Correct scissor setting, subtract 1 from window's width and height
2009-08-27 17:46:59 +08:00
Younes Manton
7d3b8231e1
nv04: Handle more Z formats.
...
Based on the patch from Luo Jinghua.
2009-08-26 20:07:51 -04:00
Chia-I Wu
c06699dd12
egl_softpipe: Make winsys and pipe screen per display.
...
This is to allow a driver to drive multiple displays. Remove the use of
_EGL_PLATFORM_X along the way.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-26 16:40:22 -06:00
Chia-I Wu
49f245ea6b
EGL_i915: Make struct drm_device per display.
...
This is to allow a driver to drive multiple displays.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2009-08-26 16:40:22 -06:00