Age | Commit message (Collapse) | Author |
|
|
|
- static vs. extension
- indent
- s/new_offset/static_offset/
- ...
|
|
|
|
make similar to functions for extensions table
|
|
|
|
|
|
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.
|
|
Enables casting of texture data.
|
|
bind_vertex_elements_state may be called with NULL velems. Do nothing
if that is the case.
|
|
Conflicts:
src/gallium/auxiliary/Makefile
src/gallium/auxiliary/SConscript
src/gallium/auxiliary/tgsi/tgsi_exec.c
src/gallium/auxiliary/util/u_blitter.c
src/gallium/drivers/i915/i915_context.h
src/gallium/drivers/i965/brw_context.h
src/gallium/drivers/llvmpipe/lp_context.h
src/gallium/drivers/nv50/nv50_context.h
src/gallium/drivers/nv50/nv50_state_validate.c
src/gallium/drivers/nv50/nv50_tex.c
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_context.h
src/gallium/drivers/r300/r300_emit.c
src/gallium/drivers/r300/r300_state.c
src/gallium/drivers/softpipe/sp_context.h
src/gallium/drivers/svga/svga_context.h
src/gallium/drivers/svga/svga_pipe_sampler.c
|
|
update_buffer should be called with context-private, not
winsys-drawable-handle.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
This reverts commit 2d56d0839e6db0861131893d67fe23734800085a.
Never actually used.
|
|
|
|
|
|
The state trackers need this value so that they can supply it
as the "void *" argument to flush_frontbuffer.
Fixes single-buffer rendering.
|
|
|
|
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.
|
|
|
|
It's (rightly) not called from anywhere else now
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This makes draw_elements()/draw_elements_instanced() do the right thing
for the non-inline elements cases, and not require flush_notify().
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
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..
|
|
|
|
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.
|
|
|