Commit Graph

2428 Commits

Author SHA1 Message Date
José Fonseca 61f3eeb640 llvmpipe: Use framebuffer coords consistently. 2009-10-09 19:16:36 +01:00
José Fonseca 8c80413360 llvmpipe: Fix type in tri bounding box check. 2009-10-09 17:14:11 +01:00
Keith Whitwell b4924d62c7 llvmpipe: fill in tri min/max values 2009-10-09 16:59:24 +01:00
José Fonseca 6464ec4836 llvmpipe: Remove partial tile override. 2009-10-09 16:50:32 +01:00
José Fonseca 8c34c86d19 llvmpipe: Undo debug override. 2009-10-09 16:23:00 +01:00
Keith Whitwell 05131f7502 llvmpipe: properly clip tile writes 2009-10-09 16:20:56 +01:00
José Fonseca c2e926b72d llvmpipe: Pass framebuffer coords to shader. 2009-10-09 16:18:38 +01:00
José Fonseca b0cd386e77 llvmpipe: Tell setup shader inputs. 2009-10-09 16:18:37 +01:00
Keith Whitwell 82ec7f018d llvmpipe: correct binning maths for iterating over whole tiles 2009-10-09 16:07:58 +01:00
José Fonseca 8599969582 llvmpipe: Get jit_context/jit_function across the rasterizer. 2009-10-09 15:53:53 +01:00
Keith Whitwell f406ffaea6 llvmpipe: set block count/used values back to zero on reset 2009-10-09 15:29:10 +01:00
Keith Whitwell da1808ccc9 llvmpipe: just bin whole tiles for now 2009-10-09 15:10:15 +01:00
Keith Whitwell 402c189af7 llvmpipe: always call begin_binning on transition to active state 2009-10-09 15:07:18 +01:00
Keith Whitwell dec35d04ae llvmpipe: add LP_DEBUG env var 2009-10-09 14:59:35 +01:00
Keith Whitwell 082b3b0a89 llvmpipe: initialize setup data store 2009-10-09 14:36:41 +01:00
Keith Whitwell 163a31952c llvmpipe: initialize setup line/tri/point funcs 2009-10-09 14:34:23 +01:00
José Fonseca 608c222723 llvmpipe: Put jit_context in store. 2009-10-09 14:33:21 +01:00
Keith Whitwell e0e2008f1d llvmpipe: trivial/clear works 2009-10-09 14:29:25 +01:00
Keith Whitwell 295aea0489 llvmpipe: more debug 2009-10-09 14:07:40 +01:00
José Fonseca 659609e0ae llvmpipe: Replace util_pack_color with straight float_to_ubyte. 2009-10-09 14:03:24 +01:00
Keith Whitwell 4e1334ced6 llvmpipe: debug, crash fixes 2009-10-09 14:02:39 +01:00
Keith Whitwell b0475a4b0d llvmpipe: fix crash on init 2009-10-09 13:55:04 +01:00
Keith Whitwell 1928c965b1 llvmpipe: fix a couple of warnings 2009-10-09 13:53:14 +01:00
José Fonseca c0e3e35b03 llvmpipe: Add stub lp_setup_is_texture_referenced. 2009-10-09 13:44:24 +01:00
José Fonseca d904ed88c1 llvmpipe: Pass state to setup. 2009-10-09 13:41:33 +01:00
José Fonseca c4d54b62f5 llvmpipe: Eliminate constant mapping/unmapping. 2009-10-09 13:25:15 +01:00
Keith Whitwell c1013f5d40 llvmpipe: remove dead code 2009-10-09 12:26:49 +01:00
Keith Whitwell e215f94f15 llvmpipe: get lp_setup_tri building 2009-10-09 12:19:49 +01:00
Keith Whitwell 4cdd10cb4b llvmpipe: use union lp_cmd_rast_arg directly, rather than through a pointer
The union itself consists of pointers.  We don't need to be passing
pointer to pointers.
2009-10-09 11:29:01 +01:00
Keith Whitwell 415b271b51 llvmpipe: hook up some state, add stub line and point functions 2009-10-09 10:44:07 +01:00
José Fonseca 47510040a6 llvmpipe: Follow write_color/write_zstencil. 2009-10-09 10:37:24 +01:00
Keith Whitwell 84ab7dcf48 llvmpipe: calculate overall width and height, pass to rasterizer 2009-10-09 10:24:19 +01:00
Keith Whitwell de902d3275 llvmpipe: more wip on coefficients 2009-10-09 10:23:53 +01:00
Keith Whitwell 253dfed939 llvmpipe: get lp_setup compiling 2009-10-08 23:08:41 +01:00
Keith Whitwell 1814395b7e llvmpipe: triangle struct owns its copy of shader inputs 2009-10-08 22:46:21 +01:00
Keith Whitwell 0718c77005 llvmpipe: work on clears and coefficients 2009-10-08 19:58:54 +01:00
José Fonseca 21489d2275 llvmpipe: Remove quad headers. 2009-10-08 19:56:01 +01:00
José Fonseca df8cedf989 llvmpipe: Adjust interpolation coeffs declaration. 2009-10-08 19:53:56 +01:00
José Fonseca 7ef36171d5 llvmpipe: Call lp_rast_shade_quads from tri rasterizer. 2009-10-08 19:53:14 +01:00
José Fonseca 07ee87e664 llvmpipe: Fix typo. 2009-10-08 19:18:52 +01:00
Keith Whitwell c7227f4b8d llvmpipe: rast_tri updates 2009-10-08 19:17:44 +01:00
José Fonseca 86dba3e414 llvmpipe: Final adjustments to rasterizer methods. 2009-10-08 19:16:47 +01:00
José Fonseca f92787679d llvmpipe: More assorted build fixes. 2009-10-08 19:03:35 +01:00
José Fonseca ab76b2a8b8 llvmpipe: Complete more rasterizer methods.. 2009-10-08 19:03:14 +01:00
José Fonseca 35a90e67eb llvmpipe: Assorted build fixes. 2009-10-08 17:59:57 +01:00
José Fonseca 37b86aa55c llvmpipe: Implement some of the rasterizer functions. 2009-10-08 17:59:44 +01:00
Keith Whitwell 1caa26202c llvmpipe: start cleaning up 2009-10-08 17:53:12 +01:00
Keith Whitwell d0c918b87a llvmpipe: remove some old sampler support structs 2009-10-08 17:53:12 +01:00
José Fonseca 921584181e llvmpipe: Fix up lp_rast_shade_quads. 2009-10-08 17:26:13 +01:00
José Fonseca 5974b80380 llvmpipe: Remove dead files from SConscript. 2009-10-08 17:06:49 +01:00
José Fonseca ce7ac8e743 llvmpipe: Update lp_setup_clear invocation. 2009-10-08 17:06:32 +01:00
José Fonseca ee3383bc5a llvmpipe: Update more copyright headers. 2009-10-08 17:06:03 +01:00
Keith Whitwell 6b65685def llvmpipe: remove tex tile cache and related code 2009-10-08 16:33:12 +01:00
Keith Whitwell d2e2b75633 llvmpipe: rewrite llvmpipe_clear() 2009-10-08 16:32:03 +01:00
Keith Whitwell 931210424b llvmpipe: wip me harder 2009-10-08 15:46:29 +01:00
José Fonseca d614ced756 llvmpipe: Update includes and copyright headers. 2009-10-08 12:51:46 +01:00
José Fonseca 46df37ebfa llvmpipe: Update SConscript. 2009-10-08 12:44:52 +01:00
José Fonseca a6676d896e llvmpipe: Add the rast -> jit shader glue.
Ugly code. Will eventually be reduced to a very thin inlined function.
2009-10-08 12:44:30 +01:00
Keith Whitwell 5e13dfe618 llvmpipe: whip out the intra-tile code from lp_setup_tri.c
The "setup" module handles building per-tile display lists.
Intra-tile rendering is handled by lp_rast*.c
2009-10-08 12:15:12 +01:00
Keith Whitwell e529170c11 llvmpipe: more wipping 2009-10-08 11:49:49 +01:00
Keith Whitwell 89498d0153 llvmpipe: import experimental softpipe rasterizer code, wip binning code
WIP, does't build or run.

Rasterizer code is based on Nick Capen's devmaster posts and the
larrabee articles, but currently doesn't share either the performance
or correctness of either...
2009-10-08 08:32:43 +01:00
Vinson Lee 0083d2e40a i915g: Fix MSVC build. 2009-10-07 14:29:23 -06:00
Brian Paul 2b9418b278 softpipe: new comments 2009-10-07 13:30:48 -06:00
Brian Paul 0fb71be217 softpipe: whitespace and comment fixes 2009-10-07 13:21:57 -06:00
Brian Paul 9a0ff33ad6 softpipe: prefix non-static functions with sp_ 2009-10-07 13:17:20 -06:00
Nicolai Hähnle 7ca7220ea1 Merge branch 'master' into r300g-glsl
Conflicts:
	src/gallium/drivers/r300/r300_tgsi_to_rc.c

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-07 20:45:08 +02:00
Jakob Bornecrantz 0f0127f6f9 i915g: Use buffer write instead of map for lit vertices 2009-10-07 14:04:48 +01:00
Jakob Bornecrantz f8ba93aefd i915g: Change order of buffer_write arguments
They now follow the pipe_buffer_write style,
	its the gallium driver that sets the interface not
	the winsys.
2009-10-07 13:48:32 +01:00
Jakob Bornecrantz 030723fc5d i915g: Disable vbuf fifo and minor commenting of vbuf code
The vbuf fifo doesn't appear to help once the libdrm
	reuse flag has been set.
2009-10-07 13:48:32 +01:00
Younes Manton aec2c010f6 nv04-nv40: Fix swizzle transfers for NPOT sizes.
Workarounds not necessary, SIFM can handle NPOT, we just weren't setting
dst dimensions properly. SIFM can't handle odd w,h though, that still
needs fixing.
2009-10-06 22:11:07 -04:00
Ben Skeggs 340436d8d2 nv50: fix segfault when there's gaps in enabled texture units
Tested with progs/demos/multiarb.
2009-10-06 13:57:51 +10:00
Jakob Bornecrantz ce3c2b51a2 i915g: Tweek vertexbuffer size 2009-10-06 03:09:01 +01:00
Brian Paul 55770d09c1 Merge branch 'mesa_7_6_branch'
Conflicts:

	src/gallium/auxiliary/util/u_cpu_detect.c
2009-10-05 14:42:08 -06:00
Jakob Bornecrantz f00da2a3ff i915g: Drop the simple sufix
None of the other driver have a silly sufix,
	so just drop it. Nothing new added in this commit
	or any other commit but this is better marketing.
2009-10-05 19:48:08 +01:00
Jakob Bornecrantz c4b821a4c6 i965g: Drop i965simple
The driver never work with real hardware and has
bitrotted for quite some time now, might as well
drop it. If somebody wants to look at it just use git.
2009-10-05 19:48:03 +01:00
Joakim Sindholt 1f39d59a29 r300g: fix scons build
So I didn't touch r300compiler, but r300g now compiles after having
declarations and code untangled. As nha so gently points out, we shouldn't
have to do this just to comply with MSVC compilers.
2009-10-05 19:25:04 +02:00
Ben Skeggs 7bfc3172e8 nv50: support PIPE_FORMAT_X8R8G8B8_UNORM
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2009-10-05 15:36:06 +10:00
José Fonseca 77ef705058 llvmpipe: Ensure tile cache transfers are mapped before flushing it. 2009-10-04 22:03:16 +01:00
José Fonseca 589ec337f0 llvmpipe: Autogenerate lp_tile_soa.c from u_format.csv.
This is just a temporary change until we code generate the tile read/write
functions in runtime. The new code avoids an extra memcpy that exists in
u_tile.c functions, from which lp_tile_soa.c was originally based.

This achieves up to 5% improvement, particularly in frames with
little geometry overlap.
2009-10-04 22:03:16 +01:00
José Fonseca eb2e41f0c6 llvmpipe: Remove loop testing from format testing.
Loop building will be rewritten.
2009-10-04 22:03:15 +01:00
José Fonseca 10981c0a76 llvmpipe: Match header's protection macro with filename. 2009-10-04 22:03:15 +01:00
José Fonseca cd0a396813 llvmpipe: Adjust format assertion.
We support array layout too -- if it has a single channel.
2009-10-04 22:03:15 +01:00
Corbin Simpson 2a929a08ab r300g: xRGB and RGBx formats.
We now have 48 GLX visuals. Pretty soon, we'll have 90+ visuals,
only five of which ever get tested. :3
2009-10-04 09:30:30 -07:00
Nicolai Hähnle 995135479d r300/compiler: Refactor to allow different instruction types
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-04 11:41:03 +02:00
Nicolai Hähnle b7cf887ca7 r300/compiler: Introduce control flow instructions and refactor dataflow
Note that control flow instruction support isn't actually fully functional yet.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-03 23:37:16 +02:00
José Fonseca cbb57bf726 llvmpipe: Fetch tile only if a color buffer is bound. 2009-10-03 19:42:22 +01:00
Nicolai Hähnle 6d25b9125e Merge branch 'master' into r300-compiler 2009-10-03 19:30:48 +02:00
Nicolai Hähnle 81e5188f66 r300g: Do not abort on fragment program compiler error
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-03 19:29:48 +02:00
Nicolai Hähnle 26df8af4fe r300g: Remove an unnecessarily created pipe buffer (and thus fix a leak)
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-03 17:51:09 +02:00
Nicolai Hähnle 751aa58e01 r300g: Reset vbo_offset after allocation of a new buffer
This fixes the glxgears bug, among other things.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-10-03 17:27:50 +02:00
Michel Dänzer 47e41b024e gallium: Preparations for adding more PIPE_TRANSFER_* usage flags.
Always test for PIPE_TRANSFER_READ/WRITE using the bit-wise and operator, and
add a pipe_transfer_buffer_flags() helper for getting the buffer usage flags
corresponding to them.
2009-10-02 18:13:26 +02:00
Brian Paul 389021220d gallium: replace // comments with /* */ 2009-10-02 07:31:42 -06:00
Younes Manton fcb595c04f g3dvl: Copyright blocks. 2009-10-01 22:53:00 -04:00
Younes Manton e00da1476f g3dvl: Color space conv interface & vl impl.
Interface is pipe_video_context::set_csc_matrix().

vl_csc.h defines some helpers to generate CSC matrices based on one of
the color standard and a user defined ProcAmp (brightness, contrast,
saturation, hue).
2009-10-01 22:52:59 -04:00
Robert Noland 0b466c8705 util: Enable sockets on BSD
I think this should be safe for all of the BSDs.

Signed-off-by: Robert Noland <rnoland@2hip.net>
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-10-01 08:42:48 -06:00
Keith Whitwell 4456006ba6 gallium: remove depth.occlusion_count flag
This was redundant as drivers can just keep track of whether they are
inside a begin/end query pair.  We want to add more query types later
and also support nested queries, none of which map well onto a flag like
this.  No driver appeared to be using the flag.
2009-10-01 14:34:23 +01:00
José Fonseca baddcbc522 llvmpipe: Workaround for bug in llvm 2.5.
The combination of fptosi
and sitofp (necessary for trunc/floor/ceil/round implementation)
somehow becomes invalid code.

Skip the instruction combining pass when SSE4.1 is not available.
2009-09-29 17:28:15 +01:00
José Fonseca a02ecdf8c2 llvmpipe: First verify LLVM IR, only then run optimizing passes. 2009-09-29 17:28:15 +01:00
José Fonseca 754f48871c llvmpipe: Runtime cpu checks for lp_build_min_simple too. 2009-09-29 17:28:15 +01:00
José Fonseca 741c40a232 llvmpipe: Implement non SSE4.1 versions of floor and round. 2009-09-29 17:28:15 +01:00