OSDN Git Service
Jakob Bornecrantz [Fri, 19 Sep 2008 12:16:19 +0000 (14:16 +0200)]
i915simple: Fix extentions being loaded
Robert Ellison [Fri, 19 Sep 2008 07:55:00 +0000 (01:55 -0600)]
CELL: add codegen for logic op, color mask
- rtasm_ppc_spe.c, rtasm_ppc_spe.h: added a new macro function
"spe_load_uint" for loading and splatting unsigned integers
in a register; it will use "ila" for values 18 bits or less,
"ilh" for word values that are symmetric across halfwords,
"ilhu" for values that have zeroes in their bottom halfwords,
or "ilhu" followed by "iohl" for general 32-bit values.
Of the 15 color masks of interest, 4 are 18 bits or less,
2 are symmetric across halfwords, 3 are zero in the bottom
halfword, and 6 require two instructions to load.
- cell_gen_fragment.c: added full codegen for logic op and
color mask.
José Fonseca [Fri, 19 Sep 2008 01:40:42 +0000 (10:40 +0900)]
gallium: Fix doxygen comments.
José Fonseca [Fri, 19 Sep 2008 01:20:10 +0000 (10:20 +0900)]
softpipe: Obey const qualifier.
Robert Ellison [Thu, 18 Sep 2008 22:36:37 +0000 (16:36 -0600)]
CELL: mark several transient files as .gitignore
progs/demos: added new demo "fbo_firecube"
progs/glsl: added new demo "pointcoord"
src/gallium/drivers/cell/spu: added the g3d_spu executable, a Cell SPU
executable file, which seems to be occasionally built as part of the
cell driver
src/glu/sgi: added "exptmp", a byproduct of the "mklib" process that
sometimes gets deleted and sometimes not.
Jonathan White [Thu, 18 Sep 2008 20:49:00 +0000 (14:49 -0600)]
cell: Added CMP instruction
Keith Whitwell [Thu, 18 Sep 2008 18:06:20 +0000 (19:06 +0100)]
Merge commit 'origin/gallium-0.1' into gallium-0.2
Conflicts:
src/mesa/shader/slang/slang_link.c
Keith Whitwell [Thu, 18 Sep 2008 17:57:46 +0000 (18:57 +0100)]
Merge commit 'origin/master' into gallium-0.2
Conflicts:
progs/trivial/Makefile
src/mesa/glapi/glthread.c
Keith Whitwell [Fri, 12 Sep 2008 14:10:50 +0000 (15:10 +0100)]
mesa: bring sources into line with sources.mak, but omit gallium code
George Sapountzis [Fri, 12 Sep 2008 09:43:10 +0000 (12:43 +0300)]
dri/swrast: fix swapBuffers after dri2
Xiang, Haihao [Fri, 12 Sep 2008 01:25:34 +0000 (09:25 +0800)]
i965: Add support for G41 chipset which is another 4 series.
Jonathan White [Thu, 18 Sep 2008 17:11:49 +0000 (11:11 -0600)]
cell: Fix bug with complement logic for SGE and SLE
Jonathan White [Thu, 18 Sep 2008 16:37:45 +0000 (10:37 -0600)]
cell: Added SGE and SLE instructions to dispatch function
Jonathan White [Thu, 18 Sep 2008 16:36:09 +0000 (10:36 -0600)]
cell: Added SGE and SLE instructions
Jakob Bornecrantz [Thu, 18 Sep 2008 14:28:16 +0000 (16:28 +0200)]
tgsi: Build tgsi_text with make
José Fonseca [Thu, 18 Sep 2008 14:00:18 +0000 (23:00 +0900)]
util: A few more memory debugging checks.
José Fonseca [Thu, 18 Sep 2008 13:24:45 +0000 (22:24 +0900)]
util: Add missing p_debug.h include.
Brian Paul [Thu, 18 Sep 2008 14:10:34 +0000 (08:10 -0600)]
gallium: fix surface object memory leak in cso module
Jakob Bornecrantz [Thu, 18 Sep 2008 12:48:45 +0000 (14:48 +0200)]
tgsi: Make tgsi dumps look more like mesa shader dumps.
Jakob Bornecrantz [Thu, 18 Sep 2008 12:14:56 +0000 (14:14 +0200)]
progs/fp: Add a bit of local variable testing to fp-tri
Robert Ellison [Thu, 18 Sep 2008 07:29:41 +0000 (01:29 -0600)]
CELL: finish fragment ops blending (except for unusual D3D modes)
- Added new "macro" functions spe_float_min() and spe_float_max()
to rtasm_ppc_spe.{ch}. These emit instructions that cause
the minimum or maximum of each element in a vector of floats
to be saved in the destination register.
- Major changes to cell_gen_fragment.c to implement all the blending
modes (except for the mysterious D3D-based PIPE_BLENDFACTOR_SRC1_COLOR,
PIPE_BLENDFACTOR_SRC1_ALPHA, PIPE_BLENDFACTOR_INV_SRC1_COLOR, and
PIPE_BLENDFACTOR_INV_SRC1_ALPHA).
- Some revamping of code in cell_gen_fragment.c: use the new spe_float_min()
and spe_float_max() functions (instead of expanding these calculations
inline via macros); create and use an inline utility function for handling
"optional" register allocation (for the {1,1,1,1} vector, and the
blend color vectors) instead of expanding with macros; use the Float
Multiply and Subtract (fnms) instruction to simplify and optimize many
blending calculations.
José Fonseca [Thu, 18 Sep 2008 02:10:09 +0000 (11:10 +0900)]
pipebuffer: New callback to flush all temporary-held buffers.
Used mostly to aid debugging memory issues or to clean up resources when
the drivers are long lived.
Brian Paul [Wed, 17 Sep 2008 22:51:53 +0000 (16:51 -0600)]
gallium: fix wide point / point coord semantic info (generic, not fog)
Brian Paul [Wed, 17 Sep 2008 22:49:26 +0000 (16:49 -0600)]
gallium: fix fog vs. pointcoord attribute handling in mesa->TGSI conversion
Brian Paul [Wed, 17 Sep 2008 22:48:13 +0000 (16:48 -0600)]
mesa: new gl_fragment_program fields indicating use of fog, front-facing, point coord
Brian Paul [Wed, 17 Sep 2008 21:29:59 +0000 (15:29 -0600)]
egl: print multisample info
Brian Paul [Wed, 17 Sep 2008 20:32:33 +0000 (14:32 -0600)]
gallium: clean-up/fix msaa override in state tracker
Brian Paul [Wed, 17 Sep 2008 19:14:57 +0000 (13:14 -0600)]
gallium: fix tgsi sanity checker with respect to END.
Subroutine code may be found after the END instruction so it's not always
the last instruction.
At least check for presence of exactly one END instruction though.
Brian Paul [Wed, 17 Sep 2008 19:13:02 +0000 (13:13 -0600)]
mesa: update program->NumAddressRegs field in _slang_update_inputs_outputs()
Brian Paul [Wed, 17 Sep 2008 16:25:18 +0000 (10:25 -0600)]
gallium: include prog_print.h to silence warning
Brian Paul [Wed, 17 Sep 2008 16:22:38 +0000 (10:22 -0600)]
gallium: need to finish, not flush, in st_copy_texsubimage()
Brian Paul [Wed, 17 Sep 2008 16:20:49 +0000 (10:20 -0600)]
gallium: new assertion on surface->texture
Jakob Bornecrantz [Wed, 17 Sep 2008 16:11:35 +0000 (18:11 +0200)]
tgsi: Add a ugly fix for CONSTANT problems
Jakob Bornecrantz [Wed, 17 Sep 2008 16:08:03 +0000 (18:08 +0200)]
tgsi: More debug printing on sanity check error
Brian Paul [Wed, 17 Sep 2008 15:47:51 +0000 (09:47 -0600)]
gallium: fix lack of surface reference counting in cso_set/save/restore_framebuffer()
Fixes asst problems with FBO / render to texture.
Brian Paul [Wed, 17 Sep 2008 15:05:04 +0000 (09:05 -0600)]
mesa: fix bug in previous changes to _slang_resolve_attributes()
Brian Paul [Wed, 17 Sep 2008 15:05:04 +0000 (09:05 -0600)]
mesa: fix bug in previous changes to _slang_resolve_attributes()
Brian Paul [Wed, 17 Sep 2008 14:17:02 +0000 (08:17 -0600)]
cell: example of doing fs/fm sequence with fnms in blending
Brian Paul [Wed, 17 Sep 2008 14:11:42 +0000 (08:11 -0600)]
cell: dump generated code if CELL_DEBUG=asm
Robert Ellison [Wed, 17 Sep 2008 08:30:20 +0000 (02:30 -0600)]
CELL: fleshing out the blending fragment ops
- Added two new debug flags (to be used with the CELL_DEBUG environment
variable). The first, "CELL_DEBUG=fragops", activates SPE fragment
ops debug messages. The second, "CELL_DEBUG=fragopfallback", will
eventually be used to disable the use of generated SPE code for
fragment ops in favor of the default fallback reference routine.
(During development, though, the parity of this flag is reversed:
all users will get the reference code *unless* CELL_DEBUG=fragopfallback
is set. This will prevent hiccups in code generation from affecting
the other developers.)
- Formalized debug message usage and macros in spu/spu_main.c.
- Added lots of new code to ppu/cell_gen_fragment.c to extend the
number of supported source RGB factors from 4 to 15, and to
complete the list of supported blend equations.
More coming, to complete the source and destination RGB and alpha
factors, and to complete the rest of the fragment operations...
Eric Anholt [Wed, 17 Sep 2008 00:01:06 +0000 (17:01 -0700)]
intel: Destroy bufmgr in screen destroy, not context.
Caused server crashes on second context creation since
7e0bbdcf033981282978554c2e68ce48b55aa291.
Bug #17600.
Brian Paul [Tue, 16 Sep 2008 22:28:36 +0000 (16:28 -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.
Jonathan White [Tue, 16 Sep 2008 22:00:42 +0000 (16:00 -0600)]
cell: Added RCP and RSQ instruction support.
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.
Jonathan White [Tue, 16 Sep 2008 19:56:56 +0000 (13:56 -0600)]
cell: Added DP3 and DP4 instructions
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.
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())
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())
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).
Michal Krol [Tue, 16 Sep 2008 17:26:28 +0000 (19:26 +0200)]
st: hash-warning not recognised on Windows.
Jonathan White [Tue, 16 Sep 2008 15:42:28 +0000 (09:42 -0600)]
cell: Optimized LERP with fma
Please enter the commit message for your changes.
Jonathan White [Tue, 16 Sep 2008 15:36:38 +0000 (09:36 -0600)]
cell: Fixed MIN/MAX algorithm
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
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.
Brian Paul [Tue, 16 Sep 2008 14:49:43 +0000 (08:49 -0600)]
mesa: protect against double-free in _vbo_DestroyContext()
Jakob Bornecrantz [Tue, 16 Sep 2008 14:17:46 +0000 (16:17 +0200)]
mesa: State tracker now checks for faulty shaders on debug
Jakob Bornecrantz [Tue, 16 Sep 2008 14:16:54 +0000 (16:16 +0200)]
tgsi: Make tgsi_sanity.c compile with make
José Fonseca [Tue, 16 Sep 2008 11:24:43 +0000 (20:24 +0900)]
trace: Fix typo in build instructions.
Brian Paul [Tue, 16 Sep 2008 01:38:39 +0000 (19:38 -0600)]
cell: export CELL_DEBUG=asm to dump SPU assembly code
Brian Paul [Mon, 15 Sep 2008 23:10:04 +0000 (17:10 -0600)]
mesa: 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()
Jonathan White [Mon, 15 Sep 2008 21:45:51 +0000 (15:45 -0600)]
cell: Added LERP instruction
Brian Paul [Mon, 15 Sep 2008 21:10:02 +0000 (15:10 -0600)]
gallium: emit SPU instructions in assembler-compatible syntax
Jonathan White [Mon, 15 Sep 2008 19:45:09 +0000 (13:45 -0600)]
cell: Added support for SLT, SEQ and SNE instructions
Jonathan White [Mon, 15 Sep 2008 18:27:10 +0000 (12:27 -0600)]
cell: Added support for ABS instruction
Jonathan White [Mon, 15 Sep 2008 17:56:51 +0000 (11:56 -0600)]
Added support for SUB and MAD instructions
Jonathan White [Mon, 15 Sep 2008 17:56:21 +0000 (11:56 -0600)]
Fixed emit_RRR
Jakob Bornecrantz [Mon, 15 Sep 2008 15:55:09 +0000 (17:55 +0200)]
i915simple: dri winsys does now compile and works
Glxgears hits an assert, but tri works
Brian Paul [Mon, 15 Sep 2008 15:07:32 +0000 (09:07 -0600)]
mesa: remove some assertions that are invalid during context tear-down
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.
Brian Paul [Mon, 15 Sep 2008 15:07:32 +0000 (09:07 -0600)]
mesa: remove some assertions that are invalid during context tear-down
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.
Keith Whitwell [Mon, 15 Sep 2008 12:47:12 +0000 (13:47 +0100)]
add dlist-degenerate test case
Shane Blackett [Sun, 14 Sep 2008 23:51:01 +0000 (17:51 -0600)]
glut: s/glut_fbc.c/glut_fcb.c/
Michal Krol [Sun, 14 Sep 2008 17:04:53 +0000 (19:04 +0200)]
draw: Silence compiler warnings on Windows.
Brian Paul [Sat, 13 Sep 2008 21:32:46 +0000 (15:32 -0600)]
cell: implement negation, absolute value and set-sign for src regs in code gen
Brian Paul [Sat, 13 Sep 2008 21:31:46 +0000 (15:31 -0600)]
negate.txt - test negation of a src reg
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.
Brian Paul [Sat, 13 Sep 2008 21:21:58 +0000 (15:21 -0600)]
gallium: add another value check to util_fast_pow()
Fixes glitches seen in morph3d demo.
Jakub Bogusz [Sat, 13 Sep 2008 20:35:02 +0000 (14:35 -0600)]
tdfx: fix crash and lack of visuals bug
Guillaume Melquiond [Sat, 13 Sep 2008 20:25:02 +0000 (14:25 -0600)]
i915: fix himask constant init for 64-bit build
Guillaume Melquiond [Sat, 13 Sep 2008 20:24:31 +0000 (14:24 -0600)]
glx: fix 64-bit datatype issue
Guillaume Melquiond [Sat, 13 Sep 2008 20:23:39 +0000 (14:23 -0600)]
mesa: return after _mesa_problem() calls
Guillaume Melquiond [Sat, 13 Sep 2008 20:23:14 +0000 (14:23 -0600)]
mesa: #include <stdio.h>
Guillaume Melquiond [Sat, 13 Sep 2008 20:22:15 +0000 (14:22 -0600)]
remove invalid XDestroyWindow() call
Guillaume Melquiond [Sat, 13 Sep 2008 20:21:50 +0000 (14:21 -0600)]
silence warning
Guillaume Melquiond [Sat, 13 Sep 2008 20:20:14 +0000 (14:20 -0600)]
GLU: fix asst warnings
Brian Paul [Sat, 13 Sep 2008 03:54:25 +0000 (21:54 -0600)]
cell: remove old disassembly/dump code; use dumper code in SPE emitter.
Brian Paul [Sat, 13 Sep 2008 03:52:47 +0000 (21:52 -0600)]
gallium: added print/dump code to SPE code emitter
Brian Paul [Sat, 13 Sep 2008 03:09:10 +0000 (21:09 -0600)]
cell: implement DDX/DDY codegen (untested)
Brian Paul [Sat, 13 Sep 2008 03:08:01 +0000 (21:08 -0600)]
gallium: added spe_splat_word()
Brian Paul [Fri, 12 Sep 2008 23:10:20 +0000 (17:10 -0600)]
cell: implement TGSI immediates in SPE code generator
Eric Anholt [Fri, 12 Sep 2008 22:48:13 +0000 (15:48 -0700)]
intel: Add a width field to regions, and use it for making miptrees in TFP.
Otherwise, we would use the pitch as width of the texture, and compiz would
render the pitch padding on the right hand side.
Brian Paul [Fri, 12 Sep 2008 22:31:53 +0000 (16:31 -0600)]
cell: initial support for IF/ELSE/ENDIF in fragment shader codegen
Only one level of if/else/endif nesting is currently working.
Brian Paul [Fri, 12 Sep 2008 22:11:52 +0000 (16:11 -0600)]
cell: evaluate multiple fragment inputs
Eric Anholt [Fri, 12 Sep 2008 21:18:14 +0000 (14:18 -0700)]
Finish off the previous fix for TFP.
A couple of those lines of debug printfs I deleted weren't actually debug
printfs.
Brian Paul [Fri, 12 Sep 2008 21:07:04 +0000 (15:07 -0600)]
cell: disable invalid spe_release_func() calls, fixes crash on exit
Eric Anholt [Fri, 12 Sep 2008 20:47:37 +0000 (13:47 -0700)]
intel: Don't segfault on TFP from a bad drawable.
Eric Anholt [Thu, 11 Sep 2008 16:50:47 +0000 (09:50 -0700)]
intel: Remove dead allow_batchbuffer param.
Jonathan White [Fri, 12 Sep 2008 19:24:05 +0000 (13:24 -0600)]
Makefile was previously checked in with merge diffs still present. I just selected HEAD and removed the old.