summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2010-02-22svga: Upload user buffers only once.José Fonseca
2010-02-22svga: Fix the guest offset of piecewise buffer DMAs.José Fonseca
It was being erroneously set equal to the host offset, but it should be zero.
2010-02-22svga: Emit a scalar rcp in shadow maps.José Fonseca
Small improvement in Lightsmark 2008.
2010-02-22svga: Don't emit zero writemasks.José Fonseca
This fixes a regression with Lightsmark, where more compact TGSI from Mesa was causing a zero mask MOV to be emitted for shadow map compare, causing problems in some backends. Add a few more assertions to catch cases like this.
2010-02-22tgsi: Report an error when a destination has an empty writemask.José Fonseca
2010-02-22svga: Upload the dirty ranges instead of the whole buffer.José Fonseca
2010-02-22svga: Break uploads of big buffers into smaller pieces.José Fonseca
Fixes crash in Homeworld2 which tries to create a 14MB buffer, because we now avoid creating GMR buffers larger than 8MB to ensure progress given we have only a 16MB pool.
2010-02-22svga: Note ranges even when there is no hardware buffer around.José Fonseca
Not having a hardware buffer around doesn't change the fact that the range is dirty and needs to be uploaded eventually.
2010-02-22svga: Further cleanup/comment svga buffer code.José Fonseca
Just cosmetic changes -- no behavior change.
2010-02-22svga: Temporarily create a sw vertex buf when failed to create a hw buf.José Fonseca
Many apps don't check the return of map buffer so it is better not to fail.
2010-02-22svga: Remove unused buffer download code.José Fonseca
Unnecessary now that we never destroy buffer storage.
2010-02-22pipebuffer: Don't synchronize when checking for buffer overflows.José Fonseca
To avoid masking synchronization issues in debug builds.
2010-02-22python/retrace: Dump all vertices for verbosity level 3.José Fonseca
2010-02-22svga: Prevent buffer overflow in buffer ranges.José Fonseca
Do this by extending the nearest range to cover the new range. This fixes an access fault in Call of Duty which was doing many disjoint glBufferSubData calls.
2010-02-22svga: Fix PIPE_LOGICOP_INVERT.José Fonseca
Actually the current XOR implementation is an INVERT. This fixes rectangle selection in Maya.
2010-02-22bin/mklib: Clear CDPATH to avoid damaging expand_archive outputKeith Packard
The bash 'cd' command tends to emit random stuff to stdout when the CDPATH variable is set, so clear it to keep extra filenames from being emitted from the expand_archive function, which would otherwise cause mklib to fail. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com> Signed-off-by: Brian Paul <brianp@vmware.com>
2010-02-22glxinfo: Fix User error in glGetProgramivARBBrian Paul
glxinfo needed fixing after commit 4bccd69. Move fragment program only parameters into their own list so that they are not queried for a vertex program. Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com> Signed-off-by: Brian Paul <brianp@vmware.com> (cherry picked from commit b0e5dcb859692707fec8752dd21fc61fc4c3dbcc)
2010-02-22i965g: added missing texture cap queriesBrian Paul
2010-02-22i915g: added missing texture cap queriesBrian Paul
2010-02-22st/mesa: change viewport Z scale/bias for glBitmap/glDrawPixelsBrian Paul
This fixes incorrect Z position of glBitmap, glDraw/CopyPixels for the svga driver. Now we use 0.5, 0.5 as is typical for ordinary 3D rendering. (cherry picked from commit bcd561c66777e58dbb29a573c4d2279772bac6c5)
2010-02-22st/mesa: Add checks for ST_SURFACE_x vs MESA_BUFFER_xBrian Paul
The ST_SURFACE_x values should match the Mesa BUFFER_x values. Added some assertions to prevent future mix-ups. (cherry picked from commit 13cbb5fff68ef8831230638e9f0b29a217750e9d)
2010-02-22mesa/st: Make ST_SURFACE_DEPTH index consistent with mesa's BUFFER_DEPTH.Brian Paul
Some st functions assume that they are identical. (cherry picked from commit 9d17ad2891b58de9e33e943ff918a678c6a3c2bd)
2010-02-22intel: assert that we do not overflow the batch buffer.Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-02-22i915: Fix logic !gen >= 3Chris Wilson
The effect of this was that all objects were aligned to 128 bytes on all generations, rather than just gen2. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-02-22i915: Remove superfluous MI_NOOP from vertex emissionChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-02-22intel: Check that we have a bufmgr or bail out when initializing the context.Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-02-22Revert "r300g: rebuild winsys/pipe buffer handling and add buffer map"Dave Airlie
This reverts commit fff5be8e7b4557c221f2425dcafc2e7cbbba76ba. Probably went too soon with this, dileX reported OA not working for him it works here fine, but the optimisations I wanted aren't working properly yet so I'll fix that now. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-22r300g: rebuild winsys/pipe buffer handling and add buffer mapDave Airlie
This creates a cleaner winsys and drop the simple screen stuff. It makes r300g use pb_bufmgr structs and adds usage of the cached bufmgr for vertex/index buffers. It also avoids mapping too often. I'm not 100% sure this is perfect but it won't find its own bugs. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-02-22r3OOg: support rendering of more than 65535 vertices per draw call (almost)Marek Olšák
The path for VAP_ALT_NUM_VERTICES is also in place (and tested) but not enabled by default due to the missing support of this reg in the upstream kernel. Also, a non-zero BUFFER_BASE in the INDX_BUFFER packet3 hangs the machine. Am I missing something? Because of this, only draw_arrays can render more than 65535 vertices without the use of VAP_ALT_NUM_VERTICES.
2010-02-21i965g: Fix memory leak.Vinson Lee
2010-02-21st/mesa: Fix memory leak on out-of-memory error path.Vinson Lee
2010-02-21r300g: Remove unnecessary header.Vinson Lee
2010-02-22Link egl progs to libm as necessary.Ray Kohler
Signed-off-by: Ray Kohler <ataraxia937@gmail.com>
2010-02-21r300g: precompute framebuffer register valuesMarek Olšák
2010-02-21r300g: add all missing colorbuffer formatsMarek Olšák
2010-02-21r300g: make r300_translate_texformat privateMarek Olšák
Unlikely to increase performance from inlining. And partially expose it through r300_is_sampler_format_supported.
2010-02-21r300g: re-enable SRGB formatsMarek Olšák
Ouch.
2010-02-21mesa: Add assert to check for null pointer dereference.Vinson Lee
2010-02-21draw: Remove dead code.Vinson Lee
2010-02-21i965g: Remove dead code.Vinson Lee
2010-02-21i965g: Fix assertions that were always true.Vinson Lee
The surface_format field is 9 bits wide which has a maximum value of 511. BRW_SURFACEFORMAT_INVALID has a value of 4095 which exceeds the width of the surface_format field. This patch asserts that the format is not BRW_SURFACEFORMAT_INVALID before assignment to the surface_format field.
2010-02-21glsl/cl: Prevent possible buffer overflow.Vinson Lee
2010-02-21i965g: Fix use of out-of-scope variable.Vinson Lee
2010-02-21st/egl: Disable SHM in ximage backend.Chia-I Wu
With pipe_screen::update_buffer being called in st_validate_state, it is likely that softpipe will flush tile caches to a detached SHM segment. Disable SHM for now until a better solution is found.
2010-02-20radeon: Silence compiler format warning.Vinson Lee
2010-02-20glsl/cl: Prevent possible string overflow.Vinson Lee
2010-02-21st/egl: Properly convert vrefresh to refresh rate.Chia-I Wu
Some kernels have vrefresh = (refresh rate * 1000) while others don't. Use some heuristics here.
2010-02-21st/egl: Enable extensions before adding configs.Chia-I Wu
Configs are validated before added. The validation depends on the extensions available. If configs are added before enabling extensions, configs with EGL_SCREEN_SURFACE_MESA bit set will never pass the validation for example.
2010-02-21st/egl: Do not force validate when update_buffer is called.Chia-I Wu
st/mesa was changed to call pipe_screen::update_buffer in st_validate_state. In most cases there is no need to validate.
2010-02-21st/egl: Clean up DRI2 surface.Chia-I Wu
Mainly to move the call to DRI2GetBuffers from dri2_surface_validate to the new dri2_surface_update_buffers.