Commit Graph

19801 Commits

Author SHA1 Message Date
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
Brian Paul 2276dcf05f gallium: fix typos in comments 2008-11-10 08:24:45 -07:00
Zack Rusin 5668e7fa80 gallium: actually flip the coordinates 2008-11-10 08:05:20 -07:00