Commit graph

92185 commits

Author SHA1 Message Date
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
Ben Skeggs
1d6cba6572 nouveau: remove previous hack around x86_64 breakage
This hack now causes breakage *doh*. :)
2008-11-10 16:33:31 +11:00
Ben Skeggs
e658950d4e nv40: init pipe_surface correctly 2008-11-10 16:12:28 +11:00
Ben Skeggs
66eacb3fed nouveau: pass object handle not pointer to GPU... 2008-11-10 15:58:03 +11:00
Ben Skeggs
32e6be6362 Merge remote branch 'origin/gallium-0.2' into gallium-0.2 2008-11-10 15:53:51 +11:00
Brian
325cbeb29a util: Fix util_fast_pow/exp2/log2.
- Use a lookup table for log2.

- Compute (float) (1 << ipart) by tweaking with the exponent directly to
avoid integer overflow and float conversion.

- Also table negative exponents to avoid float division and branching.

- Implement util_fast_exp as function of util_fast_exp2.

--------

Cherry-picked from gallium-0.2: 8415d06d90

This fixes some pow() glitches seen in fslight.c, spectex.c, etc.

Conflicts:
       src/gallium/auxiliary/util/u_math.h
2008-11-09 10:17:43 -07:00
Brian
7e83157019 gallium: _debug_vprintf() should be silent if DEBUG is not defined 2008-11-09 09:45:12 -07:00
Brian
399da3a337 gallium: use PIPE_ARCH_SSE to protect use of SSE instrinsics only
This allows us to use SSE codegen with debug builds again.
When PIPE_ARCH_SSE is set (w/ gcc -msse -msse2) we will also use the
gcc SSE intrinsic functions.
2008-11-09 09:36:22 -07:00
Pekka Paalanen
94631e63a8 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-09 01:02:10 +02:00
Pekka Paalanen
72ae2bd856 Nouveau: fix nv20_vertex_layout()
The function should update nv20->vertex_info, and not just a
local struct that's thrown away immediately.

Fixes a SIGFPE due to vbuf->vertex_size = 0 in vbuf_alloc_vertices().

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-09 00:58:19 +02:00
Brian
f1c9016af1 mesa: remove OPCODE_INT #define 2008-11-08 10:33:30 -07:00
Brian
a58dbf34ca gallium: implement SSE codegen for TGSI_OPCODE_NRM/NRM4 2008-11-08 10:29:23 -07:00
Brian
e24afc808f mesa: use NRM3 in emit_normalize_vec3() when drivers are ready 2008-11-08 10:29:03 -07:00
Pekka Paalanen
903ae9d04e Nouveau: update nv20 miptree according to nv40.
glxinfo doesn't degfault anymore.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-08 19:07:04 +02:00
Pekka Paalanen
0da43322bb Nouveau: build, link and use nv20.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-08 18:32:33 +02:00
Pekka Paalanen
b5a3c4272b Nouveau: name replace for nv20.
No functional changes, only changed function, struct, macro etc. names.
nv10 -> nv20
nv30 -> nv20
celsius -> kelvin
Did not touch fifo command macros.

Don't try to build nv20_vertprog.c for now.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-08 18:04:33 +02:00
Pekka Paalanen
83bb818560 Nouveau: Rename nv20/ files as nv20.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-08 17:20:19 +02:00