platform/upstream/mesa.git
16 years agomesa: rework GLSL vertex attribute binding
Brian Paul [Tue, 16 Sep 2008 21:50:44 +0000 (15:50 -0600)]
mesa: rework GLSL vertex attribute binding

Calls to glBindAttribLocation() should not take effect until the next time
that glLinkProgram() is called.
gl_shader_program::Attributes now just contains user-defined bindings.
gl_shader_program::VertexProgram->Attributes contains the actual/final bindings.

16 years agogallium: fix glTexImage(width=height=depth=0) case
Brian Paul [Tue, 16 Sep 2008 17:59:24 +0000 (11:59 -0600)]
gallium: fix glTexImage(width=height=depth=0) case

Free old teximage/level data, then stop.

16 years agomesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList())
Brian Paul [Tue, 16 Sep 2008 19:23:01 +0000 (13:23 -0600)]
mesa: fix display list regression (check if save->prim_count > 0 in vbo_save_EndList())

16 years agogallium: fix info entries for KIL, KILP
Brian Paul [Tue, 16 Sep 2008 18:52:19 +0000 (12:52 -0600)]
gallium: fix info entries for KIL, KILP

KIL takes 1 src register.  KILP uses no registers (uses cond codes).

16 years agomesa: fix bug in get_uniform_rows_cols(): sometimes returned too many rows
Brian Paul [Tue, 16 Sep 2008 14:55:54 +0000 (08:55 -0600)]
mesa: fix bug in get_uniform_rows_cols(): sometimes returned too many rows

16 years agogallium: move _vbo_DestroyContext() call
Brian Paul [Tue, 16 Sep 2008 14:51:28 +0000 (08:51 -0600)]
gallium: move _vbo_DestroyContext() call

Call it before freeing core Mesa state to avoid references to freed buffer objects.

16 years agomesa: protect against double-free in _vbo_DestroyContext()
Brian Paul [Tue, 16 Sep 2008 14:49:43 +0000 (08:49 -0600)]
mesa: protect against double-free in _vbo_DestroyContext()

16 years agomesa: State tracker now checks for faulty shaders on debug
Jakob Bornecrantz [Tue, 16 Sep 2008 14:17:46 +0000 (16:17 +0200)]
mesa: State tracker now checks for faulty shaders on debug

16 years agotgsi: Make tgsi_sanity.c compile with make
Jakob Bornecrantz [Tue, 16 Sep 2008 14:16:54 +0000 (16:16 +0200)]
tgsi: Make tgsi_sanity.c compile with make

16 years agotrace: Fix typo in build instructions.
José Fonseca [Tue, 16 Sep 2008 11:24:43 +0000 (20:24 +0900)]
trace: Fix typo in build instructions.

16 years agomesa: fix MSAA enable state in update_multisample()
Brian Paul [Mon, 15 Sep 2008 23:10:04 +0000 (17:10 -0600)]
mesa: fix MSAA enable state in update_multisample()

16 years agomesa: remove some assertions that are invalid during context tear-down
Brian Paul [Mon, 15 Sep 2008 15:07:32 +0000 (09:07 -0600)]
mesa: remove some assertions that are invalid during context tear-down

16 years agomesa: get another class of degenerate dlists working
Keith Whitwell [Mon, 15 Sep 2008 12:47:25 +0000 (13:47 +0100)]
mesa: get another class of degenerate dlists working

Primitive begin in one dlist, end in another.

16 years agogallium: add another value check to util_fast_pow()
Brian Paul [Sat, 13 Sep 2008 21:20:31 +0000 (15:20 -0600)]
gallium: add another value check to util_fast_pow()

Fixes glitches seen in morph3d demo.

16 years agocell: fix twiddled tile display for XSHM. Fixed blank window problem.
Brian Paul [Fri, 12 Sep 2008 17:35:22 +0000 (11:35 -0600)]
cell: fix twiddled tile display for XSHM.  Fixed blank window problem.

16 years agocell: disable calls to old gen code
Brian Paul [Fri, 12 Sep 2008 13:57:08 +0000 (07:57 -0600)]
cell: disable calls to old gen code

16 years agocell: initial support for fragment shader code generation.
Brian Paul [Thu, 11 Sep 2008 23:59:52 +0000 (17:59 -0600)]
cell: initial support for fragment shader code generation.

TGSI shaders are translated into SPE instructions which are then sent to
the SPEs for execution.  Only a few opcodes work, no swizzling yet, no
support for constants/immediates, etc.

16 years agouse APP_CC
Brian Paul [Thu, 11 Sep 2008 23:55:53 +0000 (17:55 -0600)]
use APP_CC

16 years agocell: fix tile twidding bug seen in the event of multiple expose events
Brian Paul [Thu, 11 Sep 2008 23:10:10 +0000 (17:10 -0600)]
cell: fix tile twidding bug seen in the event of multiple expose events

16 years agocell: minor improvements to fragment code-gen
Brian Paul [Thu, 11 Sep 2008 23:08:52 +0000 (17:08 -0600)]
cell: minor improvements to fragment code-gen

16 years agogallium: add special cases in spe_load_float(), spe_load_int(), added spe_splat()
Brian Paul [Thu, 11 Sep 2008 23:07:30 +0000 (17:07 -0600)]
gallium: add special cases in spe_load_float(), spe_load_int(), added spe_splat()

16 years agocell: put cell_ prefix on gen_fragment_function()
Brian Paul [Thu, 11 Sep 2008 21:48:13 +0000 (15:48 -0600)]
cell: put cell_ prefix on gen_fragment_function()

16 years agogallium: typo: s/PIPE_FORMAT_Z16UNORM/PIPE_FORMAT_Z16_UNORM/
Brian Paul [Thu, 11 Sep 2008 18:01:19 +0000 (12:01 -0600)]
gallium: typo: s/PIPE_FORMAT_Z16UNORM/PIPE_FORMAT_Z16_UNORM/

16 years agoegl_xdri: Add the top-level lib dir so we link against the libGL we built.
Dima Zavin [Thu, 21 Aug 2008 17:41:19 +0000 (10:41 -0700)]
egl_xdri: Add the top-level lib dir so we link against the libGL we built.

16 years agoegl_dri/egl_xdri: Makefiles should use pkg-config to find libdrm.
Dima Zavin [Thu, 21 Aug 2008 17:40:55 +0000 (10:40 -0700)]
egl_dri/egl_xdri: Makefiles should use pkg-config to find libdrm.

16 years agoglut: only call glFinish() in processWindowWorkList() for indirect contexts.
Brian Paul [Thu, 11 Sep 2008 17:05:13 +0000 (11:05 -0600)]
glut: only call glFinish() in processWindowWorkList() for indirect contexts.

Basically, do as the comment says.

16 years agodefine new APP_CC configuration variable for building apps/demos/tests
Brian Paul [Thu, 11 Sep 2008 17:00:54 +0000 (11:00 -0600)]
define new APP_CC configuration variable for building apps/demos/tests

For Cell, need to use different compilers for the libraries vs. the demos/tests
to avoid strange link error regarding "_Unwind_GetIPInfo@GCC_4.2.0"

16 years agocell: more comments, stub code for colormask/logicop/etc
Brian Paul [Thu, 11 Sep 2008 16:52:03 +0000 (10:52 -0600)]
cell: more comments, stub code for colormask/logicop/etc

16 years agosimple quad drawing test
Brian Paul [Thu, 11 Sep 2008 16:43:14 +0000 (10:43 -0600)]
simple quad drawing test

16 years agocell: fix typos in blend code-gen
Brian Paul [Thu, 11 Sep 2008 16:38:55 +0000 (10:38 -0600)]
cell: fix typos in blend code-gen

16 years agocell: remove old state CMDs, added comments
Brian Paul [Thu, 11 Sep 2008 16:38:37 +0000 (10:38 -0600)]
cell: remove old state CMDs, added comments

16 years agocell: clean-up, comments
Brian Paul [Thu, 11 Sep 2008 16:33:24 +0000 (10:33 -0600)]
cell: clean-up, comments

16 years agocell: disable NEW_VS emit
Brian Paul [Thu, 11 Sep 2008 16:33:13 +0000 (10:33 -0600)]
cell: disable NEW_VS emit

16 years agocell: don't build unused sources
Brian Paul [Thu, 11 Sep 2008 16:27:17 +0000 (10:27 -0600)]
cell: don't build unused sources

16 years agocell: remove old blend/depth/stencil/logicop structs
Brian Paul [Thu, 11 Sep 2008 16:26:00 +0000 (10:26 -0600)]
cell: remove old blend/depth/stencil/logicop structs

16 years agocell: asst. clean-up
Brian Paul [Thu, 11 Sep 2008 16:25:38 +0000 (10:25 -0600)]
cell: asst. clean-up

16 years agocell: checkpoint: remove more of the old per-fragment code
Brian Paul [Thu, 11 Sep 2008 16:13:20 +0000 (10:13 -0600)]
cell: checkpoint: remove more of the old per-fragment code

16 years agocell: begin new blending code (both codegen and fallback paths)
Brian Paul [Thu, 11 Sep 2008 16:08:06 +0000 (10:08 -0600)]
cell: begin new blending code (both codegen and fallback paths)

16 years agocell: fix shuffle in spu_unpack_B8G8R8A8()
Brian Paul [Thu, 11 Sep 2008 15:55:39 +0000 (09:55 -0600)]
cell: fix shuffle in spu_unpack_B8G8R8A8()

16 years agocell: added cast in spu_splats() call
Brian Paul [Thu, 11 Sep 2008 14:44:54 +0000 (08:44 -0600)]
cell: added cast in spu_splats() call

16 years agocell: remove old per-fragment code, replace with all new code
Brian Paul [Thu, 11 Sep 2008 00:51:43 +0000 (18:51 -0600)]
cell: remove old per-fragment code, replace with all new code

16 years agocell: checkpoint commit of new per-fragment processing
Brian Paul [Thu, 11 Sep 2008 00:22:00 +0000 (18:22 -0600)]
cell: checkpoint commit of new per-fragment processing

Do code generation for alpha test, z test, stencil, blend, colormask
and framebuffer/tile read/write as a single code block.
Ian's previous blend/z/stencil test code is still there but mostly disabled
and will be removed soon.

16 years agogallium: assorted additions and fixes to Cell SPE rtasm code
Brian Paul [Wed, 10 Sep 2008 23:11:48 +0000 (17:11 -0600)]
gallium: assorted additions and fixes to Cell SPE rtasm code

Fix incorrect opcode for fsmbi.
Added "macro" functions for loading floats/ints, register complement, zero, move.
Added #defines for return address and stack pointer registers.
Added assertions to check that the instruction buffer doesn't overflow.

16 years agocell: minor change to Z float/int conversion code (avoid switch)
Brian Paul [Mon, 8 Sep 2008 17:53:14 +0000 (11:53 -0600)]
cell: minor change to Z float/int conversion code (avoid switch)

16 years agocell: comments
Brian Paul [Mon, 8 Sep 2008 17:50:13 +0000 (11:50 -0600)]
cell: comments

16 years agocell: comments, etc.
Brian Paul [Fri, 5 Sep 2008 19:55:02 +0000 (13:55 -0600)]
cell: comments, etc.

16 years agogallium: comments, assertions, etc
Brian Paul [Fri, 5 Sep 2008 19:54:14 +0000 (13:54 -0600)]
gallium: comments, assertions, etc

16 years agopress 'c' to toggle Z clear value between 0/1
Brian Paul [Fri, 5 Sep 2008 19:07:43 +0000 (13:07 -0600)]
press 'c' to toggle Z clear value between 0/1

16 years agopress 'f' to cycle through depth test funcs
Brian Paul [Fri, 5 Sep 2008 18:59:40 +0000 (12:59 -0600)]
press 'f' to cycle through depth test funcs

16 years agotgsi: Fix newline pos.
José Fonseca [Wed, 10 Sep 2008 01:33:03 +0000 (10:33 +0900)]
tgsi: Fix newline pos.

16 years agotgsi: Verify constants are set before attempting to read them.
José Fonseca [Wed, 10 Sep 2008 01:32:52 +0000 (10:32 +0900)]
tgsi: Verify constants are set before attempting to read them.

16 years agosoftpipe: Code (commented out) to dump BMPs.
José Fonseca [Tue, 9 Sep 2008 13:17:31 +0000 (22:17 +0900)]
softpipe: Code (commented out) to dump BMPs.

16 years agoutil: Ensure we always have a full qualified file name on windows display.
José Fonseca [Tue, 9 Sep 2008 12:16:36 +0000 (21:16 +0900)]
util: Ensure we always have a full qualified file name on windows display.

16 years agoutil: Enable u_stream_std.c for PIPE_SUBSYSTEM_WINDOWS_USER.
Michal Krol [Tue, 9 Sep 2008 09:25:05 +0000 (11:25 +0200)]
util: Enable u_stream_std.c for PIPE_SUBSYSTEM_WINDOWS_USER.

16 years agosoftpipe: Silence compiler warning on Windows.
Michal Krol [Tue, 9 Sep 2008 09:21:57 +0000 (11:21 +0200)]
softpipe: Silence compiler warning on Windows.

16 years agosoftpipe: Protect pipe_condvar_signal/broadcast calls with a mutex.
Michal Krol [Mon, 8 Sep 2008 21:04:17 +0000 (23:04 +0200)]
softpipe: Protect pipe_condvar_signal/broadcast calls with a mutex.

16 years agosoftpipe: Set SP_NUM_QUAD_THREADS 1 effectively disabling multithreaded softpipe.
Michal Krol [Mon, 8 Sep 2008 15:21:13 +0000 (17:21 +0200)]
softpipe: Set SP_NUM_QUAD_THREADS 1 effectively disabling multithreaded softpipe.

We want to make it env variable, or even better, autodetect as the feature makes
softpipe run slower on a single CPU.

16 years agosoftpipe: More improvements for multithreaded softpipe.
Michal Krol [Sat, 6 Sep 2008 14:35:23 +0000 (16:35 +0200)]
softpipe: More improvements for multithreaded softpipe.

Store only input and inout of a quad_header in job que.

16 years agosoftpipe: Split changing fields of quad_header into input, inout and output parts.
Michal Krol [Sat, 6 Sep 2008 14:02:24 +0000 (16:02 +0200)]
softpipe: Split changing fields of quad_header into input, inout and output parts.

16 years agosoftpipe: Improve multithreaded softpipe.
Michal Krol [Sat, 6 Sep 2008 13:19:02 +0000 (15:19 +0200)]
softpipe: Improve multithreaded softpipe.

Use condition vars to communicate between threads instead of stalling.

16 years agosoftpipe: First attempts at multithreaded softpipe.
Michal Krol [Fri, 5 Sep 2008 21:21:08 +0000 (23:21 +0200)]
softpipe: First attempts at multithreaded softpipe.

Configured for 2 cores.

16 years agotgsi: Cleanup code.
Michal Krol [Fri, 5 Sep 2008 15:08:50 +0000 (17:08 +0200)]
tgsi: Cleanup code.

16 years agotrace: Request a growable file.
José Fonseca [Mon, 8 Sep 2008 13:57:01 +0000 (22:57 +0900)]
trace: Request a growable file.

16 years agoutil: Allow to define the maximum file size.
José Fonseca [Mon, 8 Sep 2008 13:56:38 +0000 (22:56 +0900)]
util: Allow to define the maximum file size.

This avoids splitting the bitmaps in many files.

16 years agoutil: Dump surfaces to BMP.
José Fonseca [Mon, 8 Sep 2008 13:21:33 +0000 (22:21 +0900)]
util: Dump surfaces to BMP.

This allows quick inspection of surfaces in mass scale.

16 years agoscons: Install shared libs in the right subdir.
José Fonseca [Mon, 8 Sep 2008 12:50:50 +0000 (21:50 +0900)]
scons: Install shared libs in the right subdir.

16 years agotrace: Use util's stream.
José Fonseca [Mon, 8 Sep 2008 02:09:48 +0000 (11:09 +0900)]
trace: Use util's stream.

16 years agoutil: Rip-off trace's os-independent stream code.
José Fonseca [Mon, 8 Sep 2008 02:09:23 +0000 (11:09 +0900)]
util: Rip-off trace's os-independent stream code.

16 years agoscons: Install libGL.so and respective symlinks.
José Fonseca [Sun, 7 Sep 2008 22:54:15 +0000 (07:54 +0900)]
scons: Install libGL.so and respective symlinks.

16 years agocell: code clean-up, comments
Brian Paul [Fri, 5 Sep 2008 16:18:00 +0000 (10:18 -0600)]
cell: code clean-up, comments

16 years agocell: convert clear color if needed
Brian Paul [Fri, 5 Sep 2008 16:16:27 +0000 (10:16 -0600)]
cell: convert clear color if needed

16 years agosoftpipe: convert clear color to surface format if needed
Brian Paul [Fri, 5 Sep 2008 16:11:22 +0000 (10:11 -0600)]
softpipe: convert clear color to surface format if needed

16 years agogallium: document that clear color is intentionally always PIPE_FORMAT_A8R8G8B8_UNORM
Brian Paul [Fri, 5 Sep 2008 16:10:55 +0000 (10:10 -0600)]
gallium: document that clear color is intentionally always PIPE_FORMAT_A8R8G8B8_UNORM

16 years agogallium: remove debug code from prev commit
Brian Paul [Fri, 5 Sep 2008 16:10:18 +0000 (10:10 -0600)]
gallium: remove debug code from prev commit

16 years agogallium: new util_unpack_color_ub() function
Brian Paul [Fri, 5 Sep 2008 16:09:48 +0000 (10:09 -0600)]
gallium: new util_unpack_color_ub() function

16 years agogallium: Add pipe_thread primitives for PIPE_OS_LINUX.
Michal Krol [Fri, 5 Sep 2008 14:47:06 +0000 (16:47 +0200)]
gallium: Add pipe_thread primitives for PIPE_OS_LINUX.

16 years agomesa: replace MALLOC w/ CALLOC to fix memory error in glPushClientAttrib()
Brian Paul [Fri, 5 Sep 2008 14:07:20 +0000 (08:07 -0600)]
mesa: replace MALLOC w/ CALLOC to fix memory error in glPushClientAttrib()

16 years agogallium: Add pipe_thread primitives for PIPE_SUBSYSTEM_WINDOWS_USER config.
Michal Krol [Fri, 5 Sep 2008 13:10:47 +0000 (15:10 +0200)]
gallium: Add pipe_thread primitives for PIPE_SUBSYSTEM_WINDOWS_USER config.

16 years agomesa: _mesa_program_state_string() returns char *, not const char *.
Michal Krol [Fri, 5 Sep 2008 10:25:50 +0000 (12:25 +0200)]
mesa: _mesa_program_state_string() returns char *, not const char *.

16 years agotgsi: Refactor tgsi_dump to avoid using string buffers when dumping.
José Fonseca [Fri, 5 Sep 2008 01:29:17 +0000 (10:29 +0900)]
tgsi: Refactor tgsi_dump to avoid using string buffers when dumping.

This fixes a stack overflow when dumping shaders.

It ended up being pretty much as the original code Michal had before,
before I went on a cleanup rampage on it and took things that ended up
needing...

16 years agogallium: Pass 512 bytes max to EngDebugPrint.
José Fonseca [Fri, 5 Sep 2008 01:27:03 +0000 (10:27 +0900)]
gallium: Pass 512 bytes max to EngDebugPrint.

16 years agogallium: New pf_has_alpha utility function.
José Fonseca [Fri, 5 Sep 2008 01:26:30 +0000 (10:26 +0900)]
gallium: New pf_has_alpha utility function.

16 years agopython: Cleanup tri example.
José Fonseca [Thu, 4 Sep 2008 13:23:32 +0000 (22:23 +0900)]
python: Cleanup tri example.

16 years agocell: move batch buffer init code
Brian Paul [Fri, 5 Sep 2008 01:10:05 +0000 (19:10 -0600)]
cell: move batch buffer init code

16 years agocell: comments
Brian Paul [Fri, 5 Sep 2008 01:09:50 +0000 (19:09 -0600)]
cell: comments

16 years agocell: more cell_init_*_functions()
Brian Paul [Fri, 5 Sep 2008 01:00:56 +0000 (19:00 -0600)]
cell: more cell_init_*_functions()

16 years agocell: implement CELL_DEBUG env/options var
Brian Paul [Fri, 5 Sep 2008 00:36:22 +0000 (18:36 -0600)]
cell: implement CELL_DEBUG env/options var

Options so far:
  "checker"  module tile clear color by SPU ID to see where the tiles are
  "sync"  to do synchronous DMA (only partially implemented)

16 years agomesa: improved gl_buffer_object reference counting
Brian Paul [Thu, 4 Sep 2008 21:25:45 +0000 (15:25 -0600)]
mesa: improved gl_buffer_object reference counting

Use new _mesa_reference_buffer_object() function wherever possible.
Fixes buffer object/display list crash reported in ParaView.

16 years agomesa: fix minor mem leak
Brian Paul [Thu, 4 Sep 2008 21:05:03 +0000 (15:05 -0600)]
mesa: fix minor mem leak

16 years agocell: assorted comments, clean-ups, etc.
Brian Paul [Thu, 4 Sep 2008 18:36:20 +0000 (12:36 -0600)]
cell: assorted comments, clean-ups, etc.

16 years agocell: use util_surface_copy/fill()
Brian Paul [Thu, 4 Sep 2008 16:38:00 +0000 (10:38 -0600)]
cell: use util_surface_copy/fill()

16 years agocell: include p_inlines.h
Brian Paul [Thu, 4 Sep 2008 16:37:30 +0000 (10:37 -0600)]
cell: include p_inlines.h

16 years agosoftpipe: use the new util_surface_copy/fill() functions
Brian Paul [Thu, 4 Sep 2008 16:32:29 +0000 (10:32 -0600)]
softpipe: use the new util_surface_copy/fill() functions

16 years agogallium: remove the copyHeight hack for compresssed formats
Brian Paul [Thu, 4 Sep 2008 16:31:50 +0000 (10:31 -0600)]
gallium: remove the copyHeight hack for compresssed formats

16 years agogallium: new util_surface_copy() and util_surface_fill() helpers
Brian Paul [Thu, 4 Sep 2008 16:31:23 +0000 (10:31 -0600)]
gallium: new util_surface_copy() and util_surface_fill() helpers

These are plug-in fallbacks for the pipe->surface_copy() and
pipe->surface_fill() functions.

16 years agomesa: Silence compiler warnings on Windows.
Michal Krol [Thu, 4 Sep 2008 11:37:15 +0000 (13:37 +0200)]
mesa: Silence compiler warnings on Windows.

16 years agomesa: merge stencil values into depth values for MESA_FORMAT_S8_Z24
Xiang, Haihao [Thu, 4 Sep 2008 03:32:52 +0000 (11:32 +0800)]
mesa: merge stencil values into depth values for MESA_FORMAT_S8_Z24

Cherry-picked from master

16 years agomesa: Remove unused var.
José Fonseca [Thu, 4 Sep 2008 02:15:19 +0000 (11:15 +0900)]
mesa: Remove unused var.

16 years agosoftpipe: Add missing include.
José Fonseca [Thu, 4 Sep 2008 02:15:08 +0000 (11:15 +0900)]
softpipe: Add missing include.

16 years agoi915: Add missing include.
José Fonseca [Thu, 4 Sep 2008 02:14:59 +0000 (11:14 +0900)]
i915: Add missing include.