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
Ian Romanick
1814d6b49c
Put 'extern' first on the line to silence GCC warnings.
2009-08-28 20:12:36 -07:00
Eric Anholt
00413d8742
i965: Use VBOs in the VBO module on 965, now that we have ARB_map_buffer_range.
...
This looks like it's a small win on blender.
2009-08-28 15:29:35 -07:00
Eric Anholt
8096aa5213
vbo: Fix array pointer calculation for MapBufferRange-mapped vertex data.
...
We would end up with the offset from the start of the mapping rather than
the offset from the start of the buffer.
2009-08-28 15:29:35 -07:00
Eric Anholt
2d5c74fac3
intel: Add support for GL_ARB_map_buffer_range.
...
Passes glean's bufferObject test, and should provide good performance in the
cases applications are expected to use.
2009-08-28 15:29:35 -07:00
Eric Anholt
446a226f9f
i965: Implement ARB_oq CheckQuery in the intended way.
...
Previously we blocked because I hadn't added the libdrm function. Now it's
there, so update your libdrm.
2009-08-28 15:29:34 -07:00
Pauli Nieminen
0926a5f4a1
radeon: Fix swtcl emit pediction.
...
Problem was to find the correct place to run prediction. Only place that is
called for every primitive is ALLOC_VERTS so we have to do prediction there
before allocation.
2009-08-29 00:46:57 +03: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
Pauli Nieminen
4f644e58d4
radeon: Fix scissors for dri1.
...
DRI1 has to set scissors in framebuffer coordinates.
2009-08-28 22:05:15 +03: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
José Fonseca
9399b9a0e2
util: Reset size to zero when failed to allocate buffer.
2009-08-28 12:52:31 +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
Pauli Nieminen
4322181e6a
r100/r200: Bring back old PolygonStripple for DRI1.
...
DRI1 didn't have support for command buffer emit for stripple.
2009-08-28 05:42:41 +03:00
Pauli Nieminen
bfbad4fbb7
r100/r200: Share PolygonStripple code.
2009-08-28 04:58:50 +03:00
Pauli Nieminen
e541845959
r200: Fix piglit paths test.
...
Polygon stipple has to go to command buffer because special ioctl is disabled.
Piglit doesn't like HyperZ warning so disable it for kms.
2009-08-28 04:13:01 +03:00
Dave Airlie
a7f8b329aa
r600: fix scissor also.
...
I forgot about r600 being here.
2009-08-28 11:05:29 +10:00
Dave Airlie
d0cb1036aa
radeon: fix scissors harder.
...
this makes gnome-shell work on r300 for me
2009-08-28 11:02:32 +10:00
Eric Anholt
60b072d49f
intel: Add support for ARB_copy_buffer.
...
Passes glean's bufferObject test for this extension.
2009-08-27 17:51:29 -07:00
Pauli Nieminen
812ccacabc
r300: Fix emit prediction to account scissor emitting correctly.
2009-08-28 02:05:08 +03:00
Brian Paul
e363ec1d08
Merge branch 'mesa_7_5_branch'
2009-08-27 16:54:32 -06:00
Brian Paul
0d7bed9f89
docs: fix selection/feedback culling bug
2009-08-27 16:50:44 -06:00
Brian Paul
8f4d66c5f8
swrast: fix incorrect tri culling in selection/feedback mode.
...
See bug 16866.
2009-08-27 16:50:03 -06:00
Eric Anholt
c2ef10803d
i915: Fix undefined symbol as of eabe12df44
2009-08-27 15:33:33 -07: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