Commit Graph

21324 Commits

Author SHA1 Message Date
Corbin Simpson b16d439989 r300-gallium: Include-guard r300_emit.h 2009-02-16 03:16:59 -08:00
Corbin Simpson 1b77138a1e r300-gallium: Add draw_arrays and friends.
This is the last bit of Gallium-side plumbing for drawing things.
From this point on, the only missing parts should be in r3xx-specific
code areas...
2009-02-16 03:16:59 -08:00
Corbin Simpson 82722a75c5 r300-gallium: Add SC_CLIP_RULE to clear.
This is a register that is in r300_demo but not r300_surface, so adding it in
to see if it helps.
2009-02-16 03:16:59 -08:00
Brian Paul 9576ddd97d cell: minor Makefile clean-up 2009-02-15 14:03:25 -07:00
Brian Paul 37c4f7eed2 cell: new/tighter code for computing fragment program inputs 2009-02-15 14:03:24 -07:00
Brian Paul 96b19195ec cell: combine eval_z(), eval_w() functions 2009-02-15 14:03:24 -07:00
Corbin Simpson 484858ae48 r300-gallium: Fix scissors.
Don't use SCISSORS_OFFSET since we're DRI2,
and don't forget to set scissors in clear.
2009-02-15 05:05:59 -08:00
Corbin Simpson 4e309b5d64 r300-gallium: Grab bag of goodies.
Some fixes from glisse, moar swtcl emit setup, cleanup a bunch of regs,
properly do clear flush, and BEGIN_CS count fixes.
2009-02-15 05:05:59 -08:00
Corbin Simpson 39d0ac4826 r300-gallium: Clean up some clear registers. 2009-02-15 05:05:59 -08:00
Corbin Simpson f176c94e49 r300-gallium: Use fui instead of a roll-my-own.
Man, util/u_math just gets better by the day.
2009-02-15 05:05:58 -08:00
Nicolai Haehnle 8520b15018 r300: Redirect constant TEX coordinates
R3xx/R5xx fragment program texture constants must come from a hardware
register instead of the constant file, so we redirect if necessary during
the native rewrite phase.

The symptoms of this bug started appearing when the Mesa fixed function
texenvprogram code started using STATE_CURRENT_ATTRIB constants for
texture coordinates when the corresponding attributes were constant across
all vertices.

Signed-off-by: Nicolai Haehnle <nhaehnle@gmail.com>
2009-02-14 17:36:04 +01:00
Corbin Simpson 76142d2b8b radeon-gallium: Clean out extensions explicitly enabled by Mesa.
This cleans up some of the cruft from the old DRI setup, and
it turns out that only the GLSL extensions are still off if we
let st_extensions.c handle the setup instead.
2009-02-14 02:51:02 -08:00
Corbin Simpson 5352ec3b87 r300-gallium: Update r300_screen comments and add a few formats. 2009-02-14 02:24:30 -08:00
Corbin Simpson 9a20ef0a52 r300-gallium: Enable all four colorbuffer render targets.
As far as I can tell all the state emission necessary has been set up.
Well, except for the fragment shader, but c'mon, gimme a break. :3
2009-02-14 02:07:29 -08:00
Corbin Simpson 1c533bdeb6 r300-gallium: Add Z/stencil buffer format emit.
Also set BEGIN_CS correctly.
2009-02-14 02:06:17 -08:00
Corbin Simpson b45e5e2a12 r300-gallium: Emit Z/stencil buffer offset. 2009-02-14 01:55:38 -08:00
Corbin Simpson e511110b71 r300-gallium: Add derived state for vertex formats.
Next up: The evil RS block.
2009-02-13 23:22:39 -08:00
Brian Paul c51c822ee0 i965: rewrite the code for handling shader subroutine calls
Previously, the prog_instruction::Data field was used to map original Mesa
instructions to brw instructions in order to resolve subroutine calls.  This
was a rather tangled mess.  Plus it's an obstacle to implementing dynamic
allocation/growing of the instruction buffer (it's still a fixed size).

Mesa's GLSL compiler emits a label for each subroutine and CAL instruction.
Now we use those labels to patch the subroutine calls after code generation
has been done.  We just keep a list of all CAL instructions that needs patching
and a list of all subroutine labels.  It's a simple matter to resolve them.

This also consolidates some redundant post-emit code between brw_vs_emit.c and
brw_wm_glsl.c and removes some loops that cleared the prog_instruction::Data
fields at the end.

Plus, a bunch of new comments.
2009-02-13 17:18:36 -07:00
Brian Paul 74b6d55864 i965: add missing break for OPCODE_RET case
This doesn't effect correctness, but we were emitting an extraneous ADD.
2009-02-13 17:18:36 -07:00
Brian Paul 97937e0ac8 i965: the return value of translate_insn() is never used. Make it void. 2009-02-13 17:18:36 -07:00
Brian Paul 2f2082bf16 i965: minor clean-ups 2009-02-13 17:18:36 -07:00
Brian Paul 2f78d4a2cd i965: code clean-ups, comments, and minor refactoring 2009-02-13 17:18:36 -07:00
Brian Paul 7cffcaaba1 i965: updated comments 2009-02-13 17:18:35 -07:00
Brian Paul 643d940138 intel: turn on GL_ARB_shading_language_120
It's done in the Mesa GLSL compiler.  The only part of it that might
matter in drivers is the centroid sampling option for MSAA.
2009-02-13 17:18:35 -07:00
Brian Paul 11b75eafc7 i965: more reformatting/clean-up 2009-02-13 17:18:35 -07:00
Brian Paul 1a693e90b5 i965: s/__inline/INLINE/ 2009-02-13 17:18:35 -07:00
Brian Paul 984c9636ed i965: formatting and indentation fixes 2009-02-13 17:18:35 -07:00
Brian Paul 14dc493733 i965: fix inconsistant indentation in brw_wm.c 2009-02-13 17:18:35 -07:00
Robert Ellison 88b702e8c4 i965: Eric Anholt's patch for bumping up texture sizes
I'm committing this because it fixes a conform failure; the failure occurs
on the TextureProxy test, where the test attempts to create proxy textures
at every level, but fails at the last level (border == 1, width == 1,
height == 1) because it's beyond MAX_TEXTURE_LEVELS.

Eric's original comment was:

idr said that in his review swrast was ready for it, and the 965 driver is
advertising it already though it has been resulting in many crashes due to
arrays using these defines not being big enough.
2009-02-13 15:19:04 -07:00
Corbin Simpson 073a73e4c7 r300-gallium: Various thingies.
Add formats to framebuffer emit, fix up shader function names,
make sure fragment format is emitted for r500.
2009-02-13 08:18:26 -08:00
Dan Nicholson c273dfe6a2 Add dummy install target for glew to fix 'make install'
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13 07:41:51 -08:00
Dan Nicholson 2977cee38e autoconf: Add GLEW needed by progs when building GLUT
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13 07:41:51 -08:00
Brian Paul ac53b1b034 mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential segfault
_tnl_free_vertices() is called from several places during context tear-down.
Depending on the order in which the swrast, swrast_setup and tnl context is
destroyed we could hit a null pointer here.  This doesn't seem to be an
actual issue with any Mesa drivers, but let's be safe.
2009-02-13 08:11:01 -07:00
Brian Paul 6559107c7a mesa: add additional texture size/limit assertions 2009-02-13 07:44:15 -07:00
Jakob Bornecrantz afe24b94b3 egl: Doesn't depend on xorg or pixman 2009-02-12 03:59:07 +01:00
Corbin Simpson 8a2d0005af r300-gallium: Take care of various bad dereferences in shader setup.
Unbreaks glxinfo.
2009-02-12 23:36:21 -08:00
Corbin Simpson fe7863f3f8 r300-gallium: Fix linker error a few linker warnings.
A few prototypes, a missing header, a misspelled macro.
2009-02-12 20:47:15 -08:00
Corbin Simpson 1d2c31df41 r300-gallium: Fix build errors. 2009-02-12 20:35:17 -08:00
Joakim Sindholt 92661bcbad r300-gallium: fix OUT_CS_ONE_REG and use where applicable
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-02-12 20:24:27 -08:00
Corbin Simpson 0d60a3f33c r300-gallium: r300 passthrough shader, static shader objects, and clear code. 2009-02-12 20:20:41 -08:00
Corbin Simpson 637b24a590 r300-gallium: Add r300 passthrough shader. 2009-02-12 20:01:09 -08:00
Joakim Sindholt f2a36d334c r300: minor fixes and clear up some surface_fill
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-02-12 18:14:48 -08:00
Corbin Simpson affe0311fa r300-gallium: Add r500 passthrough shader assembly.
This allows a simple passthrough fragment shader to be provided on r500.
2009-02-12 18:09:14 -08:00
Corbin Simpson 08e324fff3 r300-gallium: Fix typo in texture buffer size request. 2009-02-12 18:09:03 -08:00
Jakob Bornecrantz e46dca58b2 intel: Only build winsys with built state trackers 2009-02-13 01:21:51 +01:00
Jakob Bornecrantz 3ede3776e2 gallium: Add a bunch of autoconf options
./configure --help for more info
2009-02-13 01:21:51 +01:00
Benjamin Close 25ac2801d7 galium: Makefile fixes: -Werror=implicit-function-declaration -> -Werror-implicit-function-declaration
Found-By: Tinderbox
2009-02-13 10:12:17 +10:30
Jakob Bornecrantz 67fc3ace65 intel: Make gem export the drm_api_hocks 2009-02-12 22:05:37 +01:00
Jakob Bornecrantz 5ac8b4e4d9 intel: Remove the old depricated dri1 winsys 2009-02-12 22:05:37 +01:00
Jakob Bornecrantz 56d88aece9 intel: Remove the ttm backend
RIP ttm, its been fun knowing you.
2009-02-12 22:05:37 +01:00