summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* cell: handle NULL cso vertex_elements state object on bindRoland Scheidegger2010-03-101-1/+2
| | | | | | | | drivers need to handle NULL cso vertex elements (and others) objects. It is possible the cso code saves/restores NULL objects (if no normal cso object was bound before this was invoked). This led to segfaults (for example demos/cubemap) for apps which were using things like creating mipmaps before drawing anything.
* i915g: Prevent NULL dereference.Chia-I Wu2010-03-101-1/+4
| | | | | bind_vertex_elements_state may be called with NULL velems. Do nothing if that is the case.
* gallium: Do not mix winsys-drawable-handle and context-private.Chia-I Wu2010-03-102-10/+5
| | | | | update_buffer should be called with context-private, not winsys-drawable-handle.
* svga: Disable debug message.Michal Krol2010-03-101-1/+1
|
* svga: Check if vertex elements has been bound before using it.Michal Krol2010-03-101-0/+5
|
* softpipe: Prevent NULL dereference.José Fonseca2010-03-101-1/+2
|
* python: Remove broken link hack.José Fonseca2010-03-102-5/+1
|
* python: More build fixes.José Fonseca2010-03-104-5/+10
|
* trace: Make tr_public.h c++ friendly.José Fonseca2010-03-101-9/+17
|
* target-helpers: remove swrast_xlib.c helperKeith Whitwell2010-03-105-115/+121
| | | | | | | | | | This was a good idea, but ended up tying the build systems in knots. We can revisit this later, in particular if we can put in place dummy implementations of cell_create_screen(), llvmpipe_create_screen() which just return NULL if the driver isn't available. In the meantime, just duplicate this smallish function in the two places it was being called.
* ws/xlib: remove dead linesKeith Whitwell2010-03-101-6/+0
|
* scons: Fixup the libgl-gdi build.José Fonseca2010-03-103-7/+9
|
* python: Handle the possibility that no driver is selected.José Fonseca2010-03-101-0/+2
|
* gallium: remove trace module injection from various state trackersKeith Whitwell2010-03-105-44/+3
| | | | | | | Components such as state trackers, drivers, etc, should be free to be recombined in arbtrary ways to build driver stacks. They should not be reaching out and trying to build the stack themselves - this is now expected to be handled by the "target" abstraction.
* ws/gdi: add includeKeith Whitwell2010-03-101-0/+2
|
* target-helpers: helper for injecting common debug layersKeith Whitwell2010-03-105-11/+85
| | | | | | | Add a helper gallium_wrap_screen() for injecting the commonly used extra layers into a gallium stack. Currently that's just the trace module and identity layer, but there could be more in the future, eg. a validation layer.
* python: Fix up state tracker for sw api.José Fonseca2010-03-107-225/+84
|
* Revert "r300-gallium: Skeleton for integrating into the python statetracker."José Fonseca2010-03-106-1297/+0
| | | | | | This reverts commit 2d56d0839e6db0861131893d67fe23734800085a. Never actually used.
* st/wgl: add missing paramterKeith Whitwell2010-03-101-1/+1
|
* trace: include tr_public.hKeith Whitwell2010-03-101-0/+1
|
* gallium: plumb winsys-drawable-handle through to state trackerKeith Whitwell2010-03-107-13/+34
| | | | | | | The state trackers need this value so that they can supply it as the "void *" argument to flush_frontbuffer. Fixes single-buffer rendering.
* Merge commit 'origin/master' into gallium-sw-api-2Keith Whitwell2010-03-1094-2266/+3033
|\
| * llvmpipe: Cope with null Vertex element cso.José Fonseca2010-03-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | CSO can often be null. For example: 1. at initialization 2. using an util module (u_blit) right after initialization (it will push state and pop the previous null state) 3. at shutdown time (state shouldn't be bound when being destroyed) Glean was hitting 2.
| * nouveau: translate PIPE_BUFFER_USAGE_UNSYNCHRONIZEDBen Skeggs2010-03-101-1/+1
| |
| * nv50: inline nv50_state_flush_notify()Ben Skeggs2010-03-102-16/+6
| | | | | | | | It's (rightly) not called from anywhere else now
| * nv50: remove nv50_context.state.instbufBen Skeggs2010-03-102-6/+0
| |
| * nv50: remove unnecessary macroBen Skeggs2010-03-101-3/+2
| |
| * nv50: move nv50_prim() into a header file rather than duplicatingBen Skeggs2010-03-103-62/+31
| |
| * nv50: add option to force immediate-mode submission, disable by defaultBen Skeggs2010-03-103-4/+14
| |
| * nv50: re-add immediate mode vertex submission pathsBen Skeggs2010-03-104-8/+399
| |
| * nv50: when doing inline indices, split elt lists so they fit into pushbufBen Skeggs2010-03-102-85/+202
| |
| * nv50: reimplement draw_elements_instance(), use for draw_elements() tooBen Skeggs2010-03-101-159/+93
| | | | | | | | | | This makes draw_elements()/draw_elements_instanced() do the right thing for the non-inline elements cases, and not require flush_notify().
| * nv50: reimplement draw_arrays_instanced(), do draw_arrays() in terms of itBen Skeggs2010-03-101-144/+134
| | | | | | | | | | | | | | | | | | This makes draw_arrays()/draw_arrays_instanced() do the right thing and not require the (probably broken anyway) flush_notify() usage. It also fixes a potential bug in the behaviour of reading InstanceID from shaders, where 0 should be read for non-instanced drawing, previously it was possible to read non-0 ids if mixing instanced/non-instanced.
| * nv50: rip out inline push draw paths temporarilyBen Skeggs2010-03-102-551/+12
| |
| * nv50: make use of scissor enable/disable methodBen Skeggs2010-03-104-25/+8
| |
| * nv50: move magic 0x142c stuff to after state emissionBen Skeggs2010-03-102-11/+8
| |
| * nv50: avoid unnecessary vp/gp/fp state changesBen Skeggs2010-03-101-0/+9
| |
| * nv50: remove pre_pipebuffer_map hack....Ben Skeggs2010-03-101-23/+0
| |
| * nv50: remove horrific abuse of nouveau_channel.flush_notifyBen Skeggs2010-03-102-1/+10
| | | | | | | | | | | | | | Really though, using this at all is just not a good idea in the 3D driver. I'm almost certain the hardware will not like a reloc appearing between begin()/end().. Anyways, this is still better than before, more fixes to come..
| * nv50: always emit dummy relocs for all still-referenced buffersBen Skeggs2010-03-101-2/+8
| |
| * nv50: ensure enough room for state changes in current pushbufBen Skeggs2010-03-104-17/+38
| | | | | | | | | | | | | | | | Also allows the nv50_state_validate() caller to request a minimum amount of space that itself requires, not all callers accurately use this yet but the simple cases are now accounted for. Rendering will also be dropped on the floor if validate fails now.
| * nv50: rework state emissionBen Skeggs2010-03-107-311/+249
| |
| * nv50: use relocs rather than re-uploading TIC all the timeBen Skeggs2010-03-103-2/+32
| |
| * r300g: Reorder regs, save one dword.Corbin Simpson2010-03-091-11/+14
| | | | | | | | Or, put another way, save 10% on rendering calls.
| * drop stray XFree86Server, XGLServerGeorge Sapountzis2010-03-091-5/+0
| |
| * svga: Don't do culling while the software pipeline is active.Keith Whitwell2010-03-091-2/+11
| | | | | | | | | | It does it for us, and additionally introduces potentially back-facing triangles.
| * cso: don't forget to release vertex elements stateRoland Scheidegger2010-03-091-0/+1
| |
| * r300g: kill pf_component_countMarek Olšák2010-03-091-28/+1
| |
| * gallivm: checkpoint: nearest mipmap filteringBrian Paul2010-03-095-292/+601
| | | | | | | | | | | | | | | | | | The LOD is computed from texcoord partial derivatives and used to select a mipmap level. Still some bugs in texel fetching. Lots of rough edges and unfinished parts but the basics are in place. Lots of changes to the lp_bld_arit.c code to support non-vector/scalar datatypes.
| * util: simplify util_format_get_nr_components helperRoland Scheidegger2010-03-091-8/+1
| | | | | | | | | | since the number of components is now stored in the pipe format description, we obviously no longer need to figure this out ourselves.