Commit graph

22853 commits

Author SHA1 Message Date
Pekka Paalanen
5aaeb13a76 Merge commit 'origin/gallium-0.1' into gallium-0.2
* commit 'origin/gallium-0.1':
  Mesa: fix number of buffers in st_draw_vbo().
  Nouveau: fix nv20_vertex_layout()
  Nouveau: update nv20 miptree according to nv40.
  Nouveau: build, link and use nv20.
  Nouveau: name replace for nv20.
  Nouveau: Rename nv20/ files as nv20.
  Nouveau: copy nv30_vertprog.c to nv20.
  Nouveau: start nv20 by copying the nv10 tree.
2008-11-12 23:13:22 +02:00
Eric Anholt
72bbc89534 Add glsync demo program from jbarnes for testing vblank synchronization. 2008-11-12 13:07:23 -08:00
Eric Anholt
62ff7ab720 i965: Fix up VS max_threads for G4X and removing a magic number.
As far as I can read in the docs, VS threads can be 1:1 with the pairs of
VUE handles allocated for them.  Also, G4X can run twice as many threads as
before (though we won't unless the we bump the preferred URB entries for VS).
2008-11-12 13:07:23 -08:00
Eric Anholt
9dadfc09a9 i965: Fix up SF max_threads.
We were dividing the number of URB entries by two to get number of threads,
which looks suspiciously like a copy'n'paste-o from brw_vs_state.c.  Also, the
maximum number of threads is 24, not 12.
2008-11-12 13:07:23 -08:00
Eric Anholt
82eb7c235d i965: Fix up clip min_nr_entries, preferred_nr_entries, and max_threads.
The clip thread could potentially deadlock when processing tristrips since
being moved back to dual-thread mode, as the two threads could each have 4 VUEs
referenced and not be able to allocate another one since SF processing
wasn't able to continue (needing 5 entries before it freed 2).
In constrained URB mode, similar deadlock could even have occurred with
polygons (so we cut back max_threads if we can't handle it any primitive type).
2008-11-12 13:07:22 -08:00
Eric Anholt
5cb7ba10cc i965: Update WM maximum threads for G4X. 2008-11-12 13:07:22 -08:00
Eric Anholt
d70d62c561 i965: Add a big comment explaining my understanding of URB management.
It shouldn't offer anything new over what's in the docs (except for G4X notes),
but here it's all in one place.
2008-11-12 13:07:22 -08:00
Kristian Høgsberg
e1fbb30211 glFlush before CopySubBuffer, fix coordinates and extension name typo. 2008-11-12 15:26:25 -05:00
Robert Ellison
44257a8e75 CELL: fix stencil test bugs
Fixed a boneheaded error in the generation of SPU code that calculates
the results of the stencil test.  Basically, all the greater than/less than
calculations were exactly inverted: they were coded as though the
given comparison took the stencil value as a left-hand operand and the
reference value as a right-hand operand, but the actual semantics always
put the reference as the left-hand operand and the stencil as the right-hand
operand.

With this fix, tests/dinoshade runs, as do all the other Mesa tests
and samples that use stencil (and that don't use texture formats
unsupported by Cell).
2008-11-12 12:24:22 -07:00
Brian Paul
b44ec717c8 gallium: add missing prototypes 2008-11-12 11:09:12 -07:00
Brian Paul
1cd15f0370 cell: move semicolons to silence warnings w/ other compilers 2008-11-12 11:06:48 -07:00
Brian Paul
058ccf0cb5 cell: include cell_surface.h 2008-11-12 11:06:48 -07:00
Brian Paul
7f15e34cfa cell: fix typo in EMIT_ macro 2008-11-12 11:06:48 -07:00
Brian Paul
a35210b516 cell: added -Wmissing-prototypes 2008-11-12 11:06:48 -07:00
Brian Paul
2d8d82000e cell: include cell_pipe_state.h 2008-11-12 11:06:47 -07:00
Michal Krol
0d8637451b util: Optimise log2(). 2008-11-12 19:02:41 +01:00
Michal Krol
c5ba8ba918 util: Optimise log2(). 2008-11-12 19:01:46 +01:00
Michal Krol
87f77105ce rtasm: Use INLINE keyword. Compile for all platforms, not only GALLIUM_CELL. 2008-11-12 18:44:20 +01:00
Michal Krol
50357ad351 util: Add log2() definition for MSC. 2008-11-12 18:20:19 +01:00
Michal Krol
1bfe7c36ba tgsi: Fix a bug with saving/restoring xmm registers upon func call. 2008-11-12 18:19:20 +01:00
Michal Krol
8fee30064e rtasm: Compile only for GALLIUM_CELL. 2008-11-12 18:13:58 +01:00
Michal Krol
0ee92d6ed9 draw: Add missing include. 2008-11-12 18:12:28 +01:00
Michal Krol
f447eea4de util: Add log2() definition for MSC. 2008-11-12 17:14:07 +01:00
Michal Krol
a983f2a6ac draw: Add missing include. 2008-11-12 17:03:58 +01:00
Hanno Böck
becf3d9272 glx: fix xcb build 2008-11-12 06:56:42 -07:00
Brian Paul
19e4222f93 Merge commit 'origin/master' into gallium-0.2
Conflicts:

	src/mesa/shader/prog_execute.c
	src/mesa/shader/slang/library/slang_vertex_builtin_gc.h
2008-11-11 14:42:41 -07:00
Brian Paul
90246d3ea5 mesa: fix version check in dinoshade.c 2008-11-11 14:35:39 -07:00
Brian Paul
f4361540f8 mesa: allow relative indexing into all register files and indirect dst register indexing 2008-11-11 14:35:39 -07:00
Brian Paul
7f3d45758c cell: implement NRM3 opcode 2008-11-11 14:27:52 -07:00
Robert Ellison
90027f8578 CELL: two-sided stencil fixes
With these changes, the tests/stencil_twoside test now works.

- Eliminate blending from the stencil_twoside test, as it produces an
  unneeded dependency on having blending working

- The spe_splat() function will now work if the register being splatted
  and the destination register are the same

- Separate fragment code generated for front-facing and back-facing
  fragments.  Often these are the same; if two-sided stenciling is on,
  they can be different.  This is easier and faster than generating
  code that does both tests and merges the results.

- Fixed a cut/paste bug where if the back Z-pass stencil operation
  were different from all the other operations, the back Z-fail
  results were incorrect.
2008-11-11 13:57:10 -07:00
Kristian Høgsberg
57d78067bd Don't mess with emacs tab width. 2008-11-11 13:41:43 -05:00
Xiang, Haihao
5cfb0a4087 mesa: restore the negate flag of dots in build_lighting.
Dots is re-used if more than one light is enabled. Previously
the negate flag of dots may affect next light.
2008-11-11 08:11:23 -07:00
Xiang, Haihao
09623fe551 intel: reset cliprect_mode to IGNORE_CLIPRECTS.
This ensures all batchbuffers have a same cliprect mode after calling
_intel_batchbuffer_flush even if there aren't invalid commands in the
current batch buffer. (fix bug#18362).
2008-11-11 13:58:15 +08:00
Xiang, Haihao
8412b06b67 mesa: restore the negate flag of dots in build_lighting.
Dots is re-used if more than one light is enabled. Previously
the negate flag of dots may affect next light.
2008-11-11 13:36:32 +08:00
Xiang, Haihao
064b04d464 mesa: update new state for RasterPos like other operations.
This fixes a lighting issue when drawing a bitmap.
2008-11-11 13:35:51 +08:00
Brian
ff42991c72 gallium: fix comment again. A half-closed interval was intended.
Never saw the [a,b[ notation before.
2008-11-10 20:22:36 -07:00
Brian
be1b8e5d6c mesa: new _mesa_is_pow_two() function 2008-11-10 20:16:00 -07:00
Brian Paul
8df4f6667f mesa: restore glapi/ prefix on #include 2008-11-10 16:38:47 -07:00
Brian Paul
1dae2be1f6 dri: alloc __DRIscreen object with calloc()
Conflicts:
        src/mesa/drivers/dri/common/dri_util.c
2008-11-10 15:06:13 -07:00
Brian Paul
df84f788d2 mesa: fix logic error in GLSL linker when looking for main() shaders 2008-11-10 14:59:34 -07:00
Brian Paul
59cc973940 mesa: fix some misc breakage caused by editing auto-generated files rather than the python generators
Specifically:
  #include "glapitable.h" in src/mesa/main/glapi/dispatch.h
  Call _mesa_bsearch() in src/mesa/main/enums.c.
2008-11-10 14:42:02 -07:00
Brian Paul
13f96c5401 GLX: fix out-of-bounds memory issue in indirect glAreTexturesResident()
See bug 18445.
When getting array results, __glXReadReply() always reads a multiple of
four bytes.  This can cause writing to invalid memory when 'n' is not a
multiple of four.

Special-case the glAreTexturesResident() functions now.
To fix the bug, we use a temporary buffer that's a multiple of four bytes
in length.

NOTE: this commit also reverts part of commit 919ec22ecf
(glx/x11: Added some #ifdef GLX_DIRECT_RENDERING protection) which
directly edited the indirect.c file rather than the python generator!
I'm not repairing that issue at this time.
2008-11-10 14:27:42 -07:00
Brian Paul
6186e7a206 dri: alloc __DRIscreen object with calloc() 2008-11-10 12:39:36 -07:00
Brian Paul
2d76a0d77a mesa: track initialization status of uniform variables. Plus, asst clean-ups. 2008-11-10 12:39:36 -07:00
Brian Paul
379ff8c956 mesa: initial support for uniform variable initializers.
This lets one specify initial values for uniforms in the code, avoiding
the need to call glUniform() in some cases.
2008-11-10 12:39:36 -07:00
Brian Paul
242c0cb543 mesa: fix logic error in GLSL linker when looking for main() shaders 2008-11-10 12:39:36 -07:00
Brian Paul
80c8017a64 mesa: allows 'f' suffix on GLSL float literals 2008-11-10 12:39:36 -07:00
Brian Paul
e5359401d6 undo accidental changes to multitex.frag shader 2008-11-10 12:39:36 -07:00
Brian Paul
2b66417402 Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:

	src/gallium/auxiliary/util/u_math.c
2008-11-10 11:19:30 -07:00
Pekka Paalanen
eb4dded5be Mesa: fix number of buffers in st_draw_vbo().
The clean-up call to pipe->set_vertex_buffers() should use the same
number of buffers as the first call.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-10 11:16:15 -07:00