mesa.git
15 years agodocs: do not mentions xthreads any more
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:57:48 +0000 (17:57 +0200)]
docs: do not mentions xthreads any more

15 years agoglapi: regenerated GL API assembly files
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:57:22 +0000 (17:57 +0200)]
glapi: regenerated GL API assembly files

15 years agoglapi: remove XTHREADS support
RALOVICH, Kristóf [Thu, 23 Jul 2009 15:56:52 +0000 (17:56 +0200)]
glapi: remove XTHREADS support

15 years agor300/compiler: Make calculate_inputs_outputs available to external users
Nicolai Hähnle [Mon, 27 Jul 2009 18:16:17 +0000 (20:16 +0200)]
r300/compiler: Make calculate_inputs_outputs available to external users

In the long run, it's probably better to just get rid of InputsRead and
OutputsWritten.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Add vertex program code dumper from Gallium driver
Nicolai Hähnle [Mon, 27 Jul 2009 17:29:21 +0000 (19:29 +0200)]
r300/compiler: Add vertex program code dumper from Gallium driver

15 years agor300/compiler: Prepare for hookup to Gallium
Nicolai Hähnle [Mon, 27 Jul 2009 17:34:08 +0000 (19:34 +0200)]
r300/compiler: Prepare for hookup to Gallium

15 years agor300/fragprog: Move wpos_attr and fog_attr where they belong
Nicolai Hähnle [Sun, 26 Jul 2009 11:50:56 +0000 (13:50 +0200)]
r300/fragprog: Move wpos_attr and fog_attr where they belong

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/fragprog: Remove hardcoded FRAG_ATTRIB_xxx constants
Nicolai Hähnle [Sun, 26 Jul 2009 10:05:57 +0000 (12:05 +0200)]
r300/fragprog: Remove hardcoded FRAG_ATTRIB_xxx constants

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/fragprog: No longer rely on hardcoded FRAG_RESULT_xxx constants
Nicolai Hähnle [Sun, 26 Jul 2009 09:52:17 +0000 (11:52 +0200)]
r300/fragprog: No longer rely on hardcoded FRAG_RESULT_xxx constants

Also, this makes radeon_program_pair depend on the r300 fragment program
compiler. Since we now know that r600+ no longer use the same pairing
style in their ALU, we can stop pretending that program_pair is useful
for anything but r300-r500 fragment programs.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/fragprog: Move some of the attribute handling out of the compiler
Nicolai Hähnle [Fri, 24 Jul 2009 23:19:04 +0000 (01:19 +0200)]
r300/fragprog: Move some of the attribute handling out of the compiler

Attribute indices will probably be different in Gallium, so make the compiler
independent of magic values.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/fragprog: Finally get rid of the duplicate program copy
Nicolai Hähnle [Fri, 24 Jul 2009 23:08:37 +0000 (01:08 +0200)]
r300/fragprog: Finally get rid of the duplicate program copy

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Move Mesa-dependent input/output handling out of compiler
Nicolai Hähnle [Fri, 24 Jul 2009 22:59:31 +0000 (00:59 +0200)]
r300/vertprog: Move Mesa-dependent input/output handling out of compiler

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove ugly PSIZ hack
Nicolai Hähnle [Fri, 24 Jul 2009 22:50:53 +0000 (00:50 +0200)]
r300: Remove ugly PSIZ hack

Instead of setting Sourced, we simply force writemasks to begin with.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Refactor wpos rewrite using rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 22:49:25 +0000 (00:49 +0200)]
r300/vertprog: Refactor wpos rewrite using rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Refactor fog_as_texcoord to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 22:41:05 +0000 (00:41 +0200)]
r300/vertprog: Refactor fog_as_texcoord to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Refactor addArtificialOutputs to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 22:07:46 +0000 (00:07 +0200)]
r300/vertprog: Refactor addArtificialOutputs to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/fragprog: Refactor wpos rewrite to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 21:28:08 +0000 (23:28 +0200)]
r300/fragprog: Refactor wpos rewrite to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Refactor fragment program fog rewrite to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 21:06:54 +0000 (23:06 +0200)]
r300/compiler: Refactor fragment program fog rewrite to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Refactor rewrite_depth_out to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 20:50:35 +0000 (22:50 +0200)]
r300/compiler: Refactor rewrite_depth_out to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Refactor local transforms to use rc_program
Nicolai Hähnle [Fri, 24 Jul 2009 20:34:44 +0000 (22:34 +0200)]
r300/compiler: Refactor local transforms to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Allow compiler to add constants in a cleaner way
Nicolai Hähnle [Fri, 24 Jul 2009 20:41:14 +0000 (22:41 +0200)]
r300: Allow compiler to add constants in a cleaner way

Adding constants is used in a number of non-native instruction
rewrites, and it required us to keep copies of modified gl_programs
around. This is a first step towards ending this.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Refactor nqssadce to use rc_program
Nicolai Hähnle [Thu, 23 Jul 2009 20:49:31 +0000 (22:49 +0200)]
r300/compiler: Refactor nqssadce to use rc_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Refactor for rc_program usage
Nicolai Hähnle [Thu, 23 Jul 2009 20:09:48 +0000 (22:09 +0200)]
r300/compiler: Refactor for rc_program usage

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Add rc_print_program
Nicolai Hähnle [Thu, 23 Jul 2009 20:09:11 +0000 (22:09 +0200)]
r300/compiler: Add rc_print_program

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Lay groundwork for better error handling
Nicolai Hähnle [Thu, 23 Jul 2009 19:38:28 +0000 (21:38 +0200)]
r300/compiler: Lay groundwork for better error handling

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove dependency on GLcontext from compiler
Nicolai Hähnle [Thu, 23 Jul 2009 19:10:37 +0000 (21:10 +0200)]
r300: Remove dependency on GLcontext from compiler

Unfortunately, this does cause some code duplication (which we can hopefully
eliminate eventually).

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Cleanup source conflict handling
Nicolai Hähnle [Thu, 23 Jul 2009 18:24:22 +0000 (20:24 +0200)]
r300/vertprog: Cleanup source conflict handling

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Massively reduce code duplication
Nicolai Hähnle [Thu, 23 Jul 2009 17:52:00 +0000 (19:52 +0200)]
r300/vertprog: Massively reduce code duplication

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/vertprog: Use generic transforms and throw away unneeded code
Nicolai Hähnle [Thu, 23 Jul 2009 17:25:06 +0000 (19:25 +0200)]
r300/vertprog: Use generic transforms and throw away unneeded code

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Move vertex program compilation to compiler
Nicolai Hähnle [Thu, 23 Jul 2009 16:40:41 +0000 (18:40 +0200)]
r300: Move vertex program compilation to compiler

This is just the first step of refactoring. The separation is not yet
clean enough with this commit.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Cleanup vertex_program structure
Nicolai Hähnle [Thu, 23 Jul 2009 22:32:41 +0000 (00:32 +0200)]
r300: Cleanup vertex_program structure

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove faux lazy translation of vertex programs
Nicolai Hähnle [Wed, 22 Jul 2009 20:47:31 +0000 (22:47 +0200)]
r300: Remove faux lazy translation of vertex programs

De facto, vertex programs were translated immediately in all situations,
so let's just stop pretending that we do lazy translation.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Reduce include dependencies
Nicolai Hähnle [Wed, 22 Jul 2009 20:13:06 +0000 (22:13 +0200)]
r300: Reduce include dependencies

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Introduce rc_program and use it in radeon_pair
Nicolai Hähnle [Wed, 22 Jul 2009 20:10:13 +0000 (22:10 +0200)]
r300: Introduce rc_program and use it in radeon_pair

The goal is to convert both Mesa and TGSI programs into an intermediate format
that happens to be convenient for us.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Add radeon_compiler as a base for compilation-related tasks
Nicolai Hähnle [Wed, 22 Jul 2009 19:29:35 +0000 (21:29 +0200)]
r300: Add radeon_compiler as a base for compilation-related tasks

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove some unnecessary includes
Nicolai Hähnle [Tue, 21 Jul 2009 18:25:33 +0000 (20:25 +0200)]
r300: Remove some unnecessary includes

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/compiler: Compile the compiler seperately into an archive
Nicolai Hähnle [Thu, 16 Jul 2009 21:56:15 +0000 (23:56 +0200)]
r300/compiler: Compile the compiler seperately into an archive

This is all part of untangling the compiler from the classic driver, so that
it may be used in Gallium without depending on Mesa stuff if possible

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Further reduce dependency between compiler and classic driver
Nicolai Hähnle [Tue, 21 Jul 2009 16:28:30 +0000 (18:28 +0200)]
r300: Further reduce dependency between compiler and classic driver

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove some dependencies on additional fragment program copies
Nicolai Hähnle [Thu, 16 Jul 2009 20:58:13 +0000 (22:58 +0200)]
r300: Remove some dependencies on additional fragment program copies

The copy is still needed because some program transforms add state variables
or constants.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove GLcontext from r300_fragment_program_compiler
Nicolai Hähnle [Thu, 16 Jul 2009 20:40:53 +0000 (22:40 +0200)]
r300: Remove GLcontext from r300_fragment_program_compiler

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove GLcontext requirement from radeonLocalTransform
Nicolai Hähnle [Thu, 16 Jul 2009 20:39:16 +0000 (22:39 +0200)]
r300: Remove GLcontext requirement from radeonLocalTransform

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove unused enums
Nicolai Hähnle [Thu, 16 Jul 2009 20:36:54 +0000 (22:36 +0200)]
r300: Remove unused enums

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove GLcontext requirement from radeon_nqssadce
Nicolai Hähnle [Thu, 16 Jul 2009 20:32:46 +0000 (22:32 +0200)]
r300: Remove GLcontext requirement from radeon_nqssadce

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Remove GLcontext requirement from radeon_program_pair
Nicolai Hähnle [Thu, 16 Jul 2009 20:23:48 +0000 (22:23 +0200)]
r300: Remove GLcontext requirement from radeon_program_pair

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/program_pair: Introduce driver-specific texture instruction structure
Nicolai Hähnle [Thu, 16 Jul 2009 17:57:43 +0000 (19:57 +0200)]
r300/program_pair: Introduce driver-specific texture instruction structure

This is to prepare more experimentation and possible internal changes in the
compiler.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300/program_pair: Dynamically allocate instructions temporarily
Nicolai Hähnle [Wed, 15 Jul 2009 20:25:28 +0000 (22:25 +0200)]
r300/program_pair: Dynamically allocate instructions temporarily

In preparation of using TGSI, where we cannot easily predict the number
of instructions.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agor300: Detangle fragment program compiler from driver-specific structure
Nicolai Hähnle [Wed, 15 Jul 2009 15:36:42 +0000 (17:36 +0200)]
r300: Detangle fragment program compiler from driver-specific structure

This is in preparation of sharing the fragment program compiler with Gallium:
Compiler code is moved into its own directory and modified so that it no
longer depends on driver structures.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
15 years agoradeon: Add r6xx/r7xx chip family to get_chip_family_name
Pauli Nieminen [Mon, 27 Jul 2009 14:13:48 +0000 (17:13 +0300)]
radeon: Add r6xx/r7xx chip family to get_chip_family_name

This fixes problem that glxinfo was reporting r600+ cards as unknown.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
15 years agonouveau: swizzle a single row or column, doing it one pixel at a time
Patrice Mandin [Mon, 27 Jul 2009 08:57:53 +0000 (10:57 +0200)]
nouveau: swizzle a single row or column, doing it one pixel at a time

15 years agor600: fix textures
Alex Deucher [Mon, 27 Jul 2009 07:52:37 +0000 (03:52 -0400)]
r600: fix textures

We weren't allocating enough gprs for the fragment shader
in some cases.  There are likely other issues that still need
to be sorted out for textures, but at least they now work.

15 years agor600: don't draw when num indices is 0
Alex Deucher [Mon, 27 Jul 2009 06:25:24 +0000 (02:25 -0400)]
r600: don't draw when num indices is 0

fixes engine demo

15 years agor600: set VGT NUM_INSTANCES as part of the draw command
Alex Deucher [Mon, 27 Jul 2009 06:07:59 +0000 (02:07 -0400)]
r600: set VGT NUM_INSTANCES as part of the draw command

set VGT NUM_INSTANCES as part of the draw command rather
than as state as recommended by the pm4 guide.  Also,
use the NUM_INSTANCES packet.

15 years agor600: Use R600_SCRATCH_REG_OFFSET rather than RADEON_SCRATCH_REG_OFFSET
Alex Deucher [Mon, 27 Jul 2009 05:57:25 +0000 (01:57 -0400)]
r600: Use R600_SCRATCH_REG_OFFSET rather than RADEON_SCRATCH_REG_OFFSET

noticed by vehemens on IRC.

15 years agor600: switch vtx resource setup to use SETfield macros
Alex Deucher [Fri, 24 Jul 2009 16:39:51 +0000 (12:39 -0400)]
r600: switch vtx resource setup to use SETfield macros

For consistency

15 years agor600: switch tex code to use SETfield macros
Alex Deucher [Fri, 24 Jul 2009 14:58:47 +0000 (10:58 -0400)]
r600: switch tex code to use SETfield macros

for consistency with the rest of the code.

15 years agor300g: Fix two trivial texture size issues.
Corbin Simpson [Mon, 27 Jul 2009 05:48:20 +0000 (22:48 -0700)]
r300g: Fix two trivial texture size issues.

Next thing to fix: progs/tests/mipgen.

15 years agoradeon-gallium: If BO allocation fails, return NULL.
Corbin Simpson [Mon, 27 Jul 2009 05:35:26 +0000 (22:35 -0700)]
radeon-gallium: If BO allocation fails, return NULL.

15 years agor300g: Add some debugging, correct little bits of math in texture setup.
Corbin Simpson [Fri, 24 Jul 2009 21:37:07 +0000 (14:37 -0700)]
r300g: Add some debugging, correct little bits of math in texture setup.

Simple stuff still works, but not sure about some of the more complex things.

15 years agonouveau: only swizzle square textures for copy
Patrice Mandin [Sun, 26 Jul 2009 20:30:35 +0000 (22:30 +0200)]
nouveau: only swizzle square textures for copy

15 years agonouveau: Take into account destination position for copy_swizzle, need to split copy...
Patrice Mandin [Sun, 26 Jul 2009 14:18:06 +0000 (16:18 +0200)]
nouveau: Take into account destination position for copy_swizzle, need to split copy a bit more

15 years agonouveau: Recursively swizzle an NPOT sized copy
Patrice Mandin [Sun, 26 Jul 2009 10:30:12 +0000 (12:30 +0200)]
nouveau: Recursively swizzle an NPOT sized copy

15 years agonouveau: use nv04_surface_copy_swizzle only for POT sizes
Patrice Mandin [Fri, 24 Jul 2009 21:37:46 +0000 (23:37 +0200)]
nouveau: use nv04_surface_copy_swizzle only for POT sizes

15 years agoradeon-gallium: remove old getparam ioctl
Joakim Sindholt [Fri, 24 Jul 2009 12:54:00 +0000 (14:54 +0200)]
radeon-gallium: remove old getparam ioctl

15 years agor600: fix segfault in morph3d
Alex Deucher [Thu, 23 Jul 2009 22:23:18 +0000 (18:23 -0400)]
r600: fix segfault in morph3d

These attributes still need work, but it shouldn't hurt to
enable them.

15 years agodraw: correct address for machine struct in llvm path
Keith Whitwell [Thu, 23 Jul 2009 17:48:04 +0000 (18:48 +0100)]
draw: correct address for machine struct in llvm path

This changed after a recent commit.

15 years agogallivm: updates for TGSI changes
Keith Whitwell [Thu, 23 Jul 2009 16:56:41 +0000 (17:56 +0100)]
gallivm: updates for TGSI changes

make linux-llvm succeeds, but doesn't seem to be working, at least with
llvm 2.5

15 years agor300g, radeon-gallium: Fix API, cleanup.
Corbin Simpson [Thu, 23 Jul 2009 14:14:07 +0000 (07:14 -0700)]
r300g, radeon-gallium: Fix API, cleanup.

Something called "validate" should return FALSE on failure, not TRUE.

15 years agoradeon-gallium: Build fixes wrt changed libdrm_radeon space check API
Nicolai Hähnle [Thu, 23 Jul 2009 14:05:21 +0000 (07:05 -0700)]
radeon-gallium: Build fixes wrt changed libdrm_radeon space check API

Had to be hacked up a bit to apply to master. Sorry 'bout that. :3

15 years agor300g: PIPE_CAP_BLEND_EQUATION_SEPARATE.
Corbin Simpson [Thu, 23 Jul 2009 08:04:26 +0000 (01:04 -0700)]
r300g: PIPE_CAP_BLEND_EQUATION_SEPARATE.

15 years agogallium: clean up opcode definitions
Keith Whitwell [Wed, 22 Jul 2009 10:31:41 +0000 (11:31 +0100)]
gallium: clean up opcode definitions

Remove commented-out opcodes.  Remove information about API mappings
to opcodes, but add a reference to tgsi-instruction-set.txt where
that information is better presented.

15 years agogallium: remove deprecated TGSI opcodes
Keith Whitwell [Wed, 22 Jul 2009 10:25:26 +0000 (11:25 +0100)]
gallium: remove deprecated TGSI opcodes

Various opcodes which can be implemented trivially with other TGSI opcodes,
such as matrix multiplication and negation.  These were not used by any
state tracker or implemented by any of the drivers.

15 years agor600: Remove CRLF line endings.
José Fonseca [Thu, 23 Jul 2009 13:11:10 +0000 (14:11 +0100)]
r600: Remove CRLF line endings.

15 years agoutil: Add support for Mac OS.
Vinson Lee [Thu, 23 Jul 2009 13:07:31 +0000 (14:07 +0100)]
util: Add support for Mac OS.

15 years agor300g: Actually mark shaders as translated/untranslated.
Corbin Simpson [Thu, 23 Jul 2009 06:58:35 +0000 (23:58 -0700)]
r300g: Actually mark shaders as translated/untranslated.

Also trust that Gallium will not give us TGSI that miscounts shader consts.

This creates a 20x speedup on glxgears, from 8 FPS to 160 FPS.

15 years agocell: update TGSI_OPCODE_ cases
Brian Paul [Thu, 23 Jul 2009 03:04:07 +0000 (21:04 -0600)]
cell: update TGSI_OPCODE_ cases

15 years agogallium: Fix PPC build.
Michel Dänzer [Wed, 22 Jul 2009 22:47:32 +0000 (00:47 +0200)]
gallium: Fix PPC build.

15 years agonouveau: nv30: wrong variable for format
Patrice Mandin [Wed, 22 Jul 2009 20:25:36 +0000 (22:25 +0200)]
nouveau: nv30: wrong variable for format

15 years agor300: fix address register handling in NQSSADCE
Maciej Cencora [Wed, 22 Jul 2009 20:10:22 +0000 (22:10 +0200)]
r300: fix address register handling in NQSSADCE

For address register we always use X component

15 years agonouveau: Take into account sx,sy parameters to read from source surface
Patrice Mandin [Wed, 22 Jul 2009 19:10:20 +0000 (21:10 +0200)]
nouveau: Take into account sx,sy parameters to read from source surface

15 years agogallium: remove multiple aliases for TGSI opcodes
Keith Whitwell [Fri, 12 Jun 2009 10:59:01 +0000 (11:59 +0100)]
gallium: remove multiple aliases for TGSI opcodes

This is a source of ongoing confusion.  TGSI has multiple names for
opcodes where the same semantics originate in multiple shader APIs.

For instance, TGSI includes both Mesa/GLSL and DX/SM30 names for
opcodes with the same semantics, but aliases those names to the same
underlying opcode number.

This makes it very difficult to visually inspect two sets of opcodes
(eg in state tracker & driver) and check if they implement the same
functionality.

This patch arbitarily rips out the versions of the opcodes not currently
favoured by the mesa state tracker and leaves us with a single name
for each distinct operation.

15 years agogallium: simplify tgsi_full_immediate struct
Keith Whitwell [Tue, 21 Jul 2009 23:39:00 +0000 (00:39 +0100)]
gallium: simplify tgsi_full_immediate struct

Remove the need to have a pointer in this struct by just including
the immediate data inline.  Having a pointer in the struct introduces
complications like needing to alloc/free the data pointed to, uncertainty
about who owns the data, etc.  There doesn't seem to be a need for it,
and it is unlikely to make much difference plus or minus to performance.

Added some asserts as we now will trip up on immediates with more
than four elements.  There were actually already quite a few such asserts,
but the >4 case could be used in the future to specify indexable immediate
ranges, such as lookup tables.

15 years agor600: fix dst reg indexing for real
Richard Li [Tue, 21 Jul 2009 21:56:06 +0000 (17:56 -0400)]
r600: fix dst reg indexing for real

This fixes segfaults in apps like teapot and tunnel

15 years agoRevert "r600: fix dst reg indexing"
Alex Deucher [Tue, 21 Jul 2009 21:44:36 +0000 (17:44 -0400)]
Revert "r600: fix dst reg indexing"

This reverts commit cc893d9a98255d3c26df7123ba5cc02e478c9328.

Richard has the proper fix.

15 years agor600: add stencil support
Alex Deucher [Tue, 21 Jul 2009 21:07:17 +0000 (17:07 -0400)]
r600: add stencil support

15 years agor600: use state functions to set default state
Alex Deucher [Tue, 21 Jul 2009 18:06:47 +0000 (14:06 -0400)]
r600: use state functions to set default state

15 years agor600: fill in point functions
Alex Deucher [Tue, 21 Jul 2009 17:46:15 +0000 (13:46 -0400)]
r600: fill in point functions

15 years agor600: set provoking vertex to last vertex for OGL
Alex Deucher [Tue, 21 Jul 2009 17:28:12 +0000 (13:28 -0400)]
r600: set provoking vertex to last vertex for OGL

15 years agor600: fill in r700UpdateViewportOffset
Alex Deucher [Tue, 21 Jul 2009 17:19:46 +0000 (13:19 -0400)]
r600: fill in r700UpdateViewportOffset

15 years agor600: first pass at polyoffset support
Alex Deucher [Tue, 21 Jul 2009 17:10:26 +0000 (13:10 -0400)]
r600: first pass at polyoffset support

not working yet

15 years agoradeon: fix colorbuffer pitch emission regarding tiling in KMS/CS case
Jerome Glisse [Tue, 21 Jul 2009 19:12:40 +0000 (21:12 +0200)]
radeon: fix colorbuffer pitch emission regarding tiling in KMS/CS case

We need to emit a relocation for pitch register so that kernel can
check and properly setup tiling on the color buffer.

15 years agoR600: fix up some build problems
Alex Deucher [Tue, 21 Jul 2009 15:09:05 +0000 (11:09 -0400)]
R600: fix up some build problems

15 years agor600: add alpha test support
Alex Deucher [Tue, 21 Jul 2009 05:58:05 +0000 (01:58 -0400)]
r600: add alpha test support

15 years agoTrack Radeon driver symlinks in Git.
Michel Dänzer [Tue, 21 Jul 2009 08:46:29 +0000 (10:46 +0200)]
Track Radeon driver symlinks in Git.

15 years agoAdd missing X11_INCLUDES to egl/drivers/demo and egl/main.
Peter Hutterer [Mon, 20 Jul 2009 06:11:26 +0000 (16:11 +1000)]
Add missing X11_INCLUDES to egl/drivers/demo and egl/main.

Compiling mesa on a system with no X headers installed in the default
include paths fails due to missing X11 includes. The header includes are
picked up by configure but not applied.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
15 years agoi965: Don't clip everything if FRONT_AND_BACK culling while culling disabled.
Eric Anholt [Tue, 21 Jul 2009 00:58:12 +0000 (17:58 -0700)]
i965: Don't clip everything if FRONT_AND_BACK culling while culling disabled.

Fixes everything-black with meta_clear_tris on quake4-mpdemo and doom3-demo.

Bug #18844, 22077.

15 years agor600: fix typo in blend code
Alex Deucher [Mon, 20 Jul 2009 23:33:05 +0000 (19:33 -0400)]
r600: fix typo in blend code

15 years agor600: fix dst reg indexing
Kevin DeKorte [Mon, 20 Jul 2009 22:56:47 +0000 (18:56 -0400)]
r600: fix dst reg indexing

This fixes segfaults in apps like teapot and tunnel

15 years agor600: add blending support
Alex Deucher [Mon, 20 Jul 2009 22:50:59 +0000 (18:50 -0400)]
r600: add blending support

15 years agor600: add user clip plane support
Alex Deucher [Mon, 20 Jul 2009 21:22:59 +0000 (17:22 -0400)]
r600: add user clip plane support

15 years agor600: add logicop support
Alex Deucher [Mon, 20 Jul 2009 19:27:28 +0000 (15:27 -0400)]
r600: add logicop support