summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2009-02-17draw: add map/unmap directives for swtnl driver interfaceKeith Whitwell
Previously draw module asked for a pointer into (mapped) vertex data, which it would incrementally fill and emit draw commands against. This was hard for the drivers to deal with, especially in the case where a draw command would force a flush and thus an unmap of the vertex data. With this change, the draw module explicitly maps & then unmaps vertex data prior to emitting draw commands.
2009-02-16mesa: remove old commentsBrian Paul
Note: the default value for EmitCondCodes is FALSE. This means the GLSL compiler will emit code like this: SEQ TEMP[0].x, A, B; IF TEMP[0].x; ... ENDIF But if EmitCondCodes is TRUE, condition codes will be used instead: SEQ.C TEMP[0].x, A, B; IF (NE.xxxx); ... ENDIF
2009-02-16i965: tell GLSL compiler to emit code using condition codesBrian Paul
The default for EmitCondCodes got flipped when gallium-0.2 was merged. This fixes GLSL if/else/endif regressions. Drivers that use GLSL should always explicitly set the flag to be safe.
2009-02-16nouveau: oops :-)Patrice Mandin
2009-02-16glsl: silence some uninit var warningsBrian Paul
2009-02-16cell: use some SPU intrinsics to get slightly better code in eval_inputs()Brian Paul
Suggested by Jonathan Adamczewski. There may be more places to do this...
2009-02-16r300-gallium: Add verbosity level to debugging.Corbin Simpson
Makes it a bit more manageable to read through the console logs.
2009-02-16r300-gallium: Fix BEGIN_CS and END_CS counting and mismatch.Corbin Simpson
2009-02-16r300-gallium: Set up draw rasterizer.Corbin Simpson
2009-02-16dri2: support glXWaitX & glXWaitGL by using fake front buffer.Alan Hourihane
2009-02-16r300-gallium: Ooops, forgot to apply this stash.Corbin Simpson
"git stash": The cause of, and solution to, all my problems.
2009-02-16r300-gallium: Include-guard r300_emit.hCorbin Simpson
2009-02-16r300-gallium: Add draw_arrays and friends.Corbin Simpson
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-16r300-gallium: Add SC_CLIP_RULE to clear.Corbin Simpson
This is a register that is in r300_demo but not r300_surface, so adding it in to see if it helps.
2009-02-15cell: minor Makefile clean-upBrian Paul
2009-02-15cell: new/tighter code for computing fragment program inputsBrian Paul
2009-02-15cell: combine eval_z(), eval_w() functionsBrian Paul
2009-02-15r300-gallium: Fix scissors.Corbin Simpson
Don't use SCISSORS_OFFSET since we're DRI2, and don't forget to set scissors in clear.
2009-02-15r300-gallium: Grab bag of goodies.Corbin Simpson
Some fixes from glisse, moar swtcl emit setup, cleanup a bunch of regs, properly do clear flush, and BEGIN_CS count fixes.
2009-02-15r300-gallium: Clean up some clear registers.Corbin Simpson
2009-02-15r300-gallium: Use fui instead of a roll-my-own.Corbin Simpson
Man, util/u_math just gets better by the day.
2009-02-14r300: Redirect constant TEX coordinatesNicolai Haehnle
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-14radeon-gallium: Clean out extensions explicitly enabled by Mesa.Corbin Simpson
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-14r300-gallium: Update r300_screen comments and add a few formats.Corbin Simpson
2009-02-14r300-gallium: Enable all four colorbuffer render targets.Corbin Simpson
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-14r300-gallium: Add Z/stencil buffer format emit.Corbin Simpson
Also set BEGIN_CS correctly.
2009-02-14r300-gallium: Emit Z/stencil buffer offset.Corbin Simpson
2009-02-13r300-gallium: Add derived state for vertex formats.Corbin Simpson
Next up: The evil RS block.
2009-02-13i965: rewrite the code for handling shader subroutine callsBrian Paul
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-13i965: add missing break for OPCODE_RET caseBrian Paul
This doesn't effect correctness, but we were emitting an extraneous ADD.
2009-02-13i965: the return value of translate_insn() is never used. Make it void.Brian Paul
2009-02-13i965: minor clean-upsBrian Paul
2009-02-13i965: code clean-ups, comments, and minor refactoringBrian Paul
2009-02-13i965: updated commentsBrian Paul
2009-02-13intel: turn on GL_ARB_shading_language_120Brian Paul
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-13i965: more reformatting/clean-upBrian Paul
2009-02-13i965: s/__inline/INLINE/Brian Paul
2009-02-13i965: formatting and indentation fixesBrian Paul
2009-02-13i965: fix inconsistant indentation in brw_wm.cBrian Paul
2009-02-13i965: Eric Anholt's patch for bumping up texture sizesRobert Ellison
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-13r300-gallium: Various thingies.Corbin Simpson
Add formats to framebuffer emit, fix up shader function names, make sure fragment format is emitted for r500.
2009-02-13Add dummy install target for glew to fix 'make install'Dan Nicholson
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13mesa: check if TNL state is null in _tnl_free_vertices() to avoid potential ↵Brian Paul
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-13mesa: add additional texture size/limit assertionsBrian Paul
2009-02-12egl: Doesn't depend on xorg or pixmanJakob Bornecrantz
2009-02-12r300-gallium: Take care of various bad dereferences in shader setup.Corbin Simpson
Unbreaks glxinfo.
2009-02-12r300-gallium: Fix linker error a few linker warnings.Corbin Simpson
A few prototypes, a missing header, a misspelled macro.
2009-02-12r300-gallium: Fix build errors.Corbin Simpson
2009-02-12r300-gallium: fix OUT_CS_ONE_REG and use where applicableJoakim Sindholt
Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2009-02-12r300-gallium: r300 passthrough shader, static shader objects, and clear code.Corbin Simpson