Zack Rusin [Fri, 9 Apr 2010 23:17:04 +0000 (19:17 -0400)]
llvmpipe: enable draw llvm by default
Brian Paul [Mon, 19 Apr 2010 16:32:23 +0000 (10:32 -0600)]
gallium/util: specify binding type for blit src texture
Fixes fd.o bug 27711.
Brian Paul [Mon, 19 Apr 2010 16:27:55 +0000 (10:27 -0600)]
mesa: unmap the immediate mode VB before destroying it
Fixes failed assertion from fd.o bug 27713.
The assertion was added with the new resource/transfer changes.
This patch could apply to the 7.8 branch but it's not essential.
Brian Paul [Sat, 17 Apr 2010 18:48:26 +0000 (12:48 -0600)]
llvmpipe: triangle function comments
Brian Paul [Fri, 16 Apr 2010 23:05:44 +0000 (17:05 -0600)]
gallium/draw: use a local var to simplify some code
Brian Paul [Sat, 17 Apr 2010 17:53:35 +0000 (11:53 -0600)]
softpipe: add option to do polygon stipple in softpipe vs. draw module
For debugging purposes.
Brian Paul [Mon, 19 Apr 2010 14:45:20 +0000 (08:45 -0600)]
Merge branch '7.8'
Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pipe_aaline.c
src/gallium/drivers/llvmpipe/lp_context.c
Brian Paul [Mon, 19 Apr 2010 14:35:53 +0000 (08:35 -0600)]
gallium/draw: use correct rasterization state for wide/AA points/lines
When points or lines are decomposed into triangles, we need to be sure
to disable polygon culling, stippling, "un-filled" modes, etc.
This patch sets the rasterization state to disable those things prior to
drawing points/lines with triangles, then restores the previous state
afterward.
The new piglit point-no-line-cull test checks this problem & solution.
Dave Airlie [Mon, 19 Apr 2010 09:22:03 +0000 (19:22 +1000)]
r300c/r300g: add 3155 rv380 pci id
Vinson Lee [Mon, 19 Apr 2010 07:35:02 +0000 (00:35 -0700)]
gallivm: Remove redundant initialization of dst_vec_type.
dec_vec_type is already initialized to lp_build_vec_type(dst_type) at
its declaration.
Vinson Lee [Mon, 19 Apr 2010 07:05:57 +0000 (00:05 -0700)]
nv50: Fix include recursion.
Don't include nv50_context.h and use a forward declaration instead.
nv50_context.h includes nv50_screen.h (itself).
Vinson Lee [Mon, 19 Apr 2010 06:44:24 +0000 (23:44 -0700)]
nvfx: Fix include recursion.
Don't include nvfx_context.h and use a forward reference instead.
nvfx_context.h includes nvfx_screen.h (itself).
Vinson Lee [Mon, 19 Apr 2010 06:21:07 +0000 (23:21 -0700)]
auxiliary: Move loop variable declaration outside for loop.
Fixes MSVC build.
Vinson Lee [Mon, 19 Apr 2010 06:09:31 +0000 (23:09 -0700)]
nvfx: Add missing header and forward declaration.
Vinson Lee [Mon, 19 Apr 2010 06:00:45 +0000 (23:00 -0700)]
nouveau: Add missing header.
Vinson Lee [Mon, 19 Apr 2010 05:51:35 +0000 (22:51 -0700)]
r300g: Remove unnecessary headers.
Vinson Lee [Mon, 19 Apr 2010 05:49:55 +0000 (22:49 -0700)]
i915g: Remove unnecessary header.
Vinson Lee [Mon, 19 Apr 2010 05:45:18 +0000 (22:45 -0700)]
auxiliary: Initialize variable.
Vinson Lee [Mon, 19 Apr 2010 05:38:53 +0000 (22:38 -0700)]
auxiliary: Add util/u_surfaces.c to SCons build.
This was missed in commit
ac4b8db62d056fa5b85661f67ba5e1d1d29e3fcf.
Brian Paul [Mon, 19 Apr 2010 00:01:04 +0000 (18:01 -0600)]
st/mesa: s/st_get_stobj_texture/st_get_stobj_resource/
Brian Paul [Sun, 18 Apr 2010 23:58:44 +0000 (17:58 -0600)]
st/mesa: s/st_get_texobj_texture/st_get_texobj_resource/
Brian Paul [Sun, 18 Apr 2010 23:55:23 +0000 (17:55 -0600)]
st/mesa: remove st_texture_object::pipe field
Just pass the pipe context to st_get_texture_sampler_view()
as is done for st_get_renderbuffer_sampler_view().
Brian Paul [Sun, 18 Apr 2010 23:44:25 +0000 (17:44 -0600)]
st/mesa: s/st_renderbuffer_get_sampler_view/st_get_renderbuffer_sampler_view/
Brian Paul [Sun, 18 Apr 2010 23:38:49 +0000 (17:38 -0600)]
st/mesa: s/st_sampler_view_from_texture/st_create_texture_sampler_view/
Brian Paul [Sun, 18 Apr 2010 23:12:39 +0000 (17:12 -0600)]
st/mesa: s/st_get_stobj_sampler_view/st_get_texture_sampler_view/
Marek Olšák [Sun, 18 Apr 2010 22:26:49 +0000 (00:26 +0200)]
r300g: implement TRUNC as floor
Marek Olšák [Sun, 18 Apr 2010 21:40:01 +0000 (23:40 +0200)]
r300/compiler: lower CEIL
Marek Olšák [Sun, 18 Apr 2010 17:45:51 +0000 (19:45 +0200)]
r300/compiler: enable branch emulation for vertex shaders
Marek Olšák [Sun, 18 Apr 2010 18:49:50 +0000 (20:49 +0200)]
r300/compiler: optimize CMP for vertex shaders a bit
Nicolai Hähnle [Sun, 11 Oct 2009 12:24:52 +0000 (14:24 +0200)]
r300/compiler: Use memory_pool_array_reserve in deadcode elimination
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Nicolai Hähnle [Sun, 11 Oct 2009 12:22:16 +0000 (14:22 +0200)]
r300/compiler: Use memory_pool_array_reserve in r500-fragprog_emit
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Marek Olšák [Sun, 11 Oct 2009 12:18:11 +0000 (14:18 +0200)]
r300/compiler: enable branch emulation for R500 fragment programs
Nicolai Hähnle [Sun, 11 Oct 2009 12:18:11 +0000 (14:18 +0200)]
r300/compiler: Implement branch emulation for R300 fragment programs
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
Luca Barbieri [Sun, 18 Apr 2010 20:37:32 +0000 (22:37 +0200)]
u_inlines: split pipe_surface_init in pipe_surface_reset and *_init
Brian Paul [Sun, 18 Apr 2010 16:01:53 +0000 (10:01 -0600)]
tgsi: add comment about potential code removal
Brian Paul [Sun, 18 Apr 2010 16:01:04 +0000 (10:01 -0600)]
softpipe: new comment and assertion for face value
Brian Paul [Sun, 18 Apr 2010 15:56:52 +0000 (09:56 -0600)]
tgsi: replace 0xf with TGSI_WRITEMASK_XYZW
Brian Paul [Sun, 18 Apr 2010 15:46:25 +0000 (09:46 -0600)]
softpipe: fix computation of fragment[FACE] attribute
In TGSI, front facing is +1 and back-facing is -1. We were computing
this attribute as +1 and 0 before. However, the value isn't actually
used anywhere because we machine->Face attribute overrides it in
tgsi_exec.c. That could be changed, removing some special-case code...
Brian Paul [Sun, 18 Apr 2010 15:00:17 +0000 (09:00 -0600)]
softpipe: clean-up and comments
Brian Paul [Sun, 18 Apr 2010 14:51:16 +0000 (08:51 -0600)]
softpipe: document MAX_QUADS
Marek Olšák [Sun, 18 Apr 2010 15:19:45 +0000 (17:19 +0200)]
r300g: more solid is_buffer_referenced implementation
This fixes crash from
7a1b5c937fa32968a04a11649e456a1ef8c5b442,
and also removes the unused "map" pointer.
Luca Barbieri [Sun, 18 Apr 2010 15:35:17 +0000 (17:35 +0200)]
u_surfaces: silence warning
Marek Olšák [Sun, 18 Apr 2010 14:59:35 +0000 (16:59 +0200)]
Revert "r300g: save vertex buffers around u_blitter calls"
Not sure why it crashes.
Brian Paul [Sun, 18 Apr 2010 14:43:42 +0000 (08:43 -0600)]
nvfx: move declarations before code
Brian Paul [Sun, 18 Apr 2010 14:41:51 +0000 (08:41 -0600)]
nvfx: fix void * arithmetic warning
Brian Paul [Sun, 18 Apr 2010 14:41:25 +0000 (08:41 -0600)]
nvfx: move declarations before code
Brian Paul [Sun, 18 Apr 2010 14:38:19 +0000 (08:38 -0600)]
llvmpipe: update comment
Brian Paul [Sun, 18 Apr 2010 14:38:03 +0000 (08:38 -0600)]
nvfx: move declarations before code to silence warnings
Luca Barbieri [Sun, 18 Apr 2010 12:55:03 +0000 (14:55 +0200)]
auxiliary: add util_dirty_surfaces to track dirty render temporaries
Luca Barbieri [Sun, 18 Apr 2010 12:54:16 +0000 (14:54 +0200)]
auxiliary: add util_surfaces to track a resource's pipe_surface structs
Luca Barbieri [Sun, 18 Apr 2010 12:53:25 +0000 (14:53 +0200)]
u_inlines: add function to initialize pipe_surface
Luca Barbieri [Sun, 18 Apr 2010 12:44:26 +0000 (14:44 +0200)]
nvfx: fix fragment program constant updates
Marek Olšák [Sun, 18 Apr 2010 04:32:10 +0000 (06:32 +0200)]
r300g: do not tell st that a buffer is referenced by hw
It saves a few libdrm calls and unnecessary flushes.
Luca Barbieri [Sun, 18 Apr 2010 12:51:38 +0000 (14:51 +0200)]
r300g: save vertex buffers around u_blitter calls
Not strictly needed by the Mesa state tracker, but needed in general.
Only compile tested.
Luca Barbieri [Sun, 18 Apr 2010 12:50:14 +0000 (14:50 +0200)]
u_blitter: add support for saving vertex buffers
Currently r300g does not save vertex buffer on blitter calls.
It gets away with it because the current Mesa state tracker usually
resets vertex buffers on every draw calls.
However, this is wrong.
nvfx won't be lucky because it needs to use the blitter inside draw
calls.
Luca Barbieri [Sun, 18 Apr 2010 13:09:17 +0000 (15:09 +0200)]
p_compiler: add likely/unlikely macros
Defined like the Linux kernel.
A explanatory comment is included.
Dave Airlie [Sun, 18 Apr 2010 08:49:27 +0000 (18:49 +1000)]
r300g: fixup 0 stride buffer properly.
Just set the max index to 1, this lets doom3 run and seems correct,
though it would be better to just emit a constant like SVGA does.
Signed-off-by: Dave Airlie <airlied@redhat.com>
José Fonseca [Sun, 18 Apr 2010 08:34:01 +0000 (10:34 +0200)]
llvmpipe: Emit only the vertex attributes necessary for the FS, and ensure the first one is always position.
With this we correctly handle vertex shaders whose output position is not
in index zero.
José Fonseca [Sun, 18 Apr 2010 07:48:55 +0000 (09:48 +0200)]
softpipe: Preserve/check the signal of the number of scanlines in an edge.
It can become negative in some weird triangles.
José Fonseca [Sun, 18 Apr 2010 07:45:54 +0000 (09:45 +0200)]
draw: Cosmetic cleanups and comments.
José Fonseca [Sat, 17 Apr 2010 13:11:58 +0000 (15:11 +0200)]
retrace: Fix vertex/index/constant buffer dumping.
José Fonseca [Sat, 17 Apr 2010 13:00:13 +0000 (15:00 +0200)]
trace: Handle transfers with zero strides correctly.
José Fonseca [Sat, 17 Apr 2010 12:48:19 +0000 (14:48 +0200)]
st/python: Set the bind flag for the default texture.
José Fonseca [Sat, 17 Apr 2010 12:35:26 +0000 (14:35 +0200)]
retrace: Remove deprecated code.
José Fonseca [Sat, 17 Apr 2010 12:25:05 +0000 (14:25 +0200)]
mesa: Restore comment too.
Vinson Lee [Sun, 18 Apr 2010 07:11:49 +0000 (00:11 -0700)]
glsl: Fix handling of OPCODE_PRINT for no registers case.
A register file value is unsigned so could never be -1. A
value of 0 also aliased to PROGRAM_TEMPORARY.
If an OPCODE_PRINT has no registers to print, set the register
file value to PROGRAM_UNDEFINED and check for that value when
executing this instruction.
Vinson Lee [Sun, 18 Apr 2010 06:48:37 +0000 (23:48 -0700)]
i965: Assert that an OPCODE_IF was seen before an OPCODE_ELSE.
Vinson Lee [Sun, 18 Apr 2010 06:40:14 +0000 (23:40 -0700)]
st/dri: Check for NULL before dereference and assignment.
Vinson Lee [Sun, 18 Apr 2010 06:25:47 +0000 (23:25 -0700)]
nvfx: Initialize variables.
Vinson Lee [Sun, 18 Apr 2010 05:42:03 +0000 (22:42 -0700)]
r300g: Cast rbuf->user_buffer to 'uint8_t *' before arithmetic.
Fixes this SCons build error.
"pointer of type 'void *' uses in arithmetic"
Vinson Lee [Sun, 18 Apr 2010 05:23:25 +0000 (22:23 -0700)]
nvfx: Remove unused variables.
Vinson Lee [Sun, 18 Apr 2010 04:21:31 +0000 (21:21 -0700)]
nv50: Initialize variables.
Silences GCC uninitialized variable warnings.
Vinson Lee [Sun, 18 Apr 2010 03:37:53 +0000 (20:37 -0700)]
nv50: Remove unused variable.
Jakob Bornecrantz [Sat, 17 Apr 2010 22:43:41 +0000 (23:43 +0100)]
i915g: Remove broken power of two function
Jakob Bornecrantz [Sat, 17 Apr 2010 22:35:24 +0000 (23:35 +0100)]
i915g: Add some helper functions
Mostly to make the lines not so long.
Jakob Bornecrantz [Sat, 17 Apr 2010 13:55:23 +0000 (14:55 +0100)]
i915g: Fix cubemap layouts
Jakob Bornecrantz [Sat, 17 Apr 2010 22:28:43 +0000 (23:28 +0100)]
i915g: Clean and add some debug printing
Disabled by default
Jakob Bornecrantz [Sun, 18 Apr 2010 01:43:47 +0000 (02:43 +0100)]
gallium/tests: Make trivial apps depend on libs
Marek Olšák [Sun, 18 Apr 2010 00:43:01 +0000 (02:43 +0200)]
r300g: various other cleanups
It seems to me that the resource management code is the most blurry.
Also some of my notes about fastfill are wrong, removing them too.
Marek Olšák [Sun, 18 Apr 2010 00:40:12 +0000 (02:40 +0200)]
r300g: inline screen_buffer functions
Marek Olšák [Sun, 18 Apr 2010 00:37:02 +0000 (02:37 +0200)]
r300g: remove unused declarations
Marek Olšák [Sun, 18 Apr 2010 00:32:54 +0000 (02:32 +0200)]
r300g: add debugging options "notiling" and "noimmd" (for testing)
notiling = Disable texture tiling
noimmd = Disable immediate mode (this optimization was really worth it!)
Marek Olšák [Sat, 17 Apr 2010 22:11:29 +0000 (00:11 +0200)]
r300g: remove r300_transfer::ctx
Marek Olšák [Sat, 17 Apr 2010 22:09:19 +0000 (00:09 +0200)]
r300g: remove use of c++ keywords
Marek Olšák [Sat, 17 Apr 2010 15:00:41 +0000 (17:00 +0200)]
r300g: always create microtiled zbuffer regardless of texture dimensions
Vinson Lee [Sat, 17 Apr 2010 22:47:45 +0000 (15:47 -0700)]
i915g: Remove unnecessary headers.
Vinson Lee [Sat, 17 Apr 2010 22:14:47 +0000 (15:14 -0700)]
nvfx: Remove unnecessary headers.
Vinson Lee [Sat, 17 Apr 2010 21:49:40 +0000 (14:49 -0700)]
nv50: Remove redundant assignment.
Vinson Lee [Sat, 17 Apr 2010 21:45:49 +0000 (14:45 -0700)]
i965g: Remove redundant assert.
Vinson Lee [Sat, 17 Apr 2010 21:24:23 +0000 (14:24 -0700)]
os: Implement pipe_barrier for POSIX platforms without pthread_barrier_t.
This patch was tested on Mac OS X.
Jakob Bornecrantz [Sat, 17 Apr 2010 14:17:33 +0000 (15:17 +0100)]
i915g: Add a software only debuging winsys
Jakob Bornecrantz [Sat, 17 Apr 2010 19:40:36 +0000 (20:40 +0100)]
gallium/tests: Fix trivial examples
Jakob Bornecrantz [Sat, 17 Apr 2010 19:49:57 +0000 (20:49 +0100)]
gallium/util: Ignores
Jakob Bornecrantz [Sat, 17 Apr 2010 19:49:10 +0000 (20:49 +0100)]
progs/tests: Ignores
Vinson Lee [Sat, 17 Apr 2010 19:13:19 +0000 (12:13 -0700)]
r300/compiler: Remove unnecessary header.
Vinson Lee [Sat, 17 Apr 2010 06:25:25 +0000 (23:25 -0700)]
draw llvm: Remove unnecessary header.
Vinson Lee [Sat, 17 Apr 2010 06:08:52 +0000 (23:08 -0700)]
llvmpipe: Remove unnecessary header.
Vinson Lee [Sat, 17 Apr 2010 05:58:49 +0000 (22:58 -0700)]
r300/compiler: Add radeon_program_tex.c to SCons build.
This was missed in commit
f8a14186809356871ae74159c774e9e3959a22e5.
Marek Olšák [Sat, 17 Apr 2010 00:43:47 +0000 (02:43 +0200)]
r300/compiler: add emulation of all mirrored-clamp wrap modes for NPOT textures
Marek Olšák [Sat, 17 Apr 2010 00:05:26 +0000 (02:05 +0200)]
r300/compiler: replace mirrored-repeat emulation with a faster version
Also, the Negate bitfield was 1 instead of RC_MASK_XYZ in the previous
version, causing incorrect rendering.