Brian Paul [Mon, 19 Apr 2010 23:16:15 +0000 (17:16 -0600)]
llvmpipe: remove dead code
Brian Paul [Mon, 19 Apr 2010 23:15:25 +0000 (17:15 -0600)]
llvmpipe: use llvmpipe_resource_stride()
Brian Paul [Mon, 19 Apr 2010 23:14:55 +0000 (17:14 -0600)]
gallivm: pass 3D texture stride as an array
This should have been included with the previous commit.
Brian Paul [Mon, 19 Apr 2010 23:05:05 +0000 (17:05 -0600)]
llvmpipe: get 3D texture image stride from an array rather than computing it
This fixes broken 3D texture indexing when the height of the 3D texture
was less than 64 (the tile size). It's simpler to pass this as an array
(as we do with the row stride) than to compute it on the fly.
Brian Paul [Mon, 19 Apr 2010 22:49:37 +0000 (16:49 -0600)]
llvmpipe: consolidate some code in llvmpipe_set_texture_image_layout()
Brian Paul [Mon, 19 Apr 2010 22:42:47 +0000 (16:42 -0600)]
llvmpipe: fix rendering to 3D textures
Treat cube faces and 3D texture slices in the same manner (they're layed
out out continuously in memory). Additional clean-ups and improvements
coming.
Brian Paul [Mon, 19 Apr 2010 20:43:22 +0000 (14:43 -0600)]
llvmpipe: checkpoint: fixes for render to 3D texture
Brian Paul [Mon, 19 Apr 2010 20:07:23 +0000 (14:07 -0600)]
llvmpipe: another fix for surface memory allocation
The previous patch broke cube maps.
The logic is a bit clearer now.
Marek Olšák [Mon, 19 Apr 2010 22:50:39 +0000 (00:50 +0200)]
r300g: add is_rv350 flag
Jesse Barnes [Mon, 19 Apr 2010 21:20:58 +0000 (14:20 -0700)]
Merge branch '7.8'
Jesse Barnes [Mon, 19 Apr 2010 21:19:48 +0000 (14:19 -0700)]
DRI2: check for swapAvailable before using swap interval protocol
This should have been part of the last change...
Zack Rusin [Mon, 19 Apr 2010 17:33:49 +0000 (13:33 -0400)]
draw llvm: make sure use_llvm isn't used when not defined
Zack Rusin [Mon, 19 Apr 2010 17:30:16 +0000 (13:30 -0400)]
draw llvm: fix typo (boolean, not bool)
Brian Paul [Mon, 19 Apr 2010 17:17:11 +0000 (11:17 -0600)]
llvmpipe: fix surface memory allocation bug
We weren't always allocating the right amount of memory for image tiles
for some formats (those < 32bpp).
Fixes fd.o bug 27712.
Jesse Barnes [Mon, 19 Apr 2010 16:56:49 +0000 (09:56 -0700)]
Merge branch '7.8'
Jesse Barnes [Mon, 19 Apr 2010 16:54:08 +0000 (09:54 -0700)]
DRI2: synchronize swap interval with server at startup time
In the direct rendered case, we need to tell the server our initial swap
interval. If we don't, the local and server values will be out of sync,
since the server and client defaults may be different (as they were
before this patch).
Zack Rusin [Mon, 19 Apr 2010 16:52:25 +0000 (12:52 -0400)]
draw llvm: allow runtime switching of pipelines (yes/no to llvm)
use DRAW_USE_LLVM to disable or enable (default) llvm
Zack Rusin [Mon, 19 Apr 2010 16:46:08 +0000 (12:46 -0400)]
draw llvm: fix constructor mess
use just one constructor to figure out whether to use llvm.
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 [Mon, 19 Apr 2010 16:10:41 +0000 (10:10 -0600)]
st/mesa: invert scissor rect depending on FB orientation
Fixes fd.o bug 27715
Matthieu Herrb [Mon, 19 Apr 2010 15:32:37 +0000 (09:32 -0600)]
mesa: Fix build with gcc 3.3.
Signed-off-by: Brian Paul <brianp@vmware.com>
Matthieu Herrb [Sun, 18 Apr 2010 23:55:38 +0000 (16:55 -0700)]
radeon: Let this build with gcc 3.3
Declaring the loop index inside for () is not supported by this version.
Signed-off-by: Brian Paul <brianp@vmware.com>
Owain Ainsworth [Sun, 18 Apr 2010 23:55:37 +0000 (16:55 -0700)]
radeon: Fix command type for DRM_RADEON_IRQ_EMIT ioctl.
This should be drmCommandWriteRead to avoid an EINVAL error on systems
that strictly check ioctl args. This command has been r/w for ever.
Discussion with airlied agreed that this was the correct course.
Signed-off-by: Brian Paul <brianp@vmware.com>
Matthieu Herrb [Sun, 18 Apr 2010 23:55:36 +0000 (16:55 -0700)]
mesa: Use __OpenBSD__ to check for OpenBSD.
Signed-off-by: Brian Paul <brianp@vmware.com>
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