summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300
AgeCommit message (Collapse)Author
2007-04-30r300: Don't crash in radeonUpdatePageFlipping when !radeon->glCtx->DrawBuffer.Michel Dänzer
This feels like a kludge, maybe there's a better solution.
2007-04-29r300: Page flipping fixes.Michel Dänzer
Mostly making sure the page flipping state is respected when necessary.
2007-04-29r300: radeonMakeCurrent cleanups.Michel Dänzer
r300UpdateWindow is superfluous or even possibly wrong here; _mesa_make_current will set the viewport when necessary. So the conditional _mesa_set_viewport call can go as well.
2007-04-27"Fix" for bug 9170. May need more attention.Brian
2007-04-17r300: r300_render.c:391: warning: unused variable 'i'Oliver McFadden
2007-04-16move GL_EXT_stencil_two_side into alphabetical positionBrian
2007-04-16Fix glActiveStencilFaceEXT dispatch problem (bug 10523).Brian
OK, _all_ extensions that might get enabled by the driver need to be in the card_extensions[] list. driInitExtensions() is called at least twice: first during screen creation, then once for each context that's created. The first call sets up the dispatch table. The second call just sets the extension enable/disable flags.
2007-04-16remove _tnl_arb_vertex_program_stageBrian
2007-04-14r300: emit different clear paths for non-TCL, this gets the clear color correctDave Airlie
2007-04-14r300: remove unneeded semicolon from macroDave Airlie
2007-04-14r300: if we don't have TCL don't setup state emissions for vertex shadersDave Airlie
2007-04-10rs480: set vap cntl to what fglrx uses for non-TCL cardsDave Airlie
2007-04-10r300: don't enable VAP/TCL on cards that don't support itDave Airlie
2007-03-27r300: Fix radeonUpdatePageFlipping() function.Roland Scheidegger
Always call driFlipRenderbuffers() with pfCurrentPage value, in case it's initially 1 instead of 0. May fix some issues with pageflip, the same fix was applied to r128, radeon and r200 (6e0e6eff05727ac8833c2b2dffc51c6619427e77).
2007-03-27r300: Check ctx->WinSysDrawBuffer before calling function that dereferences it.Michel Dänzer
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10417 .
2007-03-26r300: Remove a warning when vertex programs produce an unused outputNicolai Haehnle
As far as we know, the hardware prefers outputs packed tightly together with no holes caused by outputs that are not even read by the fragment program. Therefore, we slightly rewrite vertex programs in this case. It would be interesting to test this interaction between vertex programs and fragment programs further, because some of that rewrite may be unnecessary. However, play it safe for now and don't change the current behaviour.
2007-03-26r300: Whitespace cleanup (remove trailing spaces)Nicolai Haehnle
2007-03-26r300: Fix warnings that were introduced by the glsl mergeNicolai Haehnle
2007-03-26merge of glsl-compiler-1 branchBrian
2007-03-25r300: Whitespace cleanup in r300_texmem.cNicolai Haehnle
2007-03-25r300: Whitespace cleanup in r300_texstate.cNicolai Haehnle
2007-03-25r300: Fix regression: unnecessary node indirectionNicolai Haehnle
The texture_rectangle fix introduced a bug where every texture instruction caused a new indirection.
2007-03-24r300: Fix texture coordinate calculation for rectangle texturesNicolai Haehnle
R300 hardware takes texcoords in the range 0..1 even for rectangle textures. Previously, the necessary texcoord conversion was applied to the texture coordinate during vertex processing in a render stage. This is obviously wrong when fragment programs are used, which can calculate arbitrary coordinates for TEX instructions. Therefore, we now inject an appropriate MUL instruction before a TEX that reference a rectangle texture.
2007-03-24r300: No assertion when accessing incomplete texture images.Nicolai Haehnle
There used to be an assertion when a fragment program accesses an incomplete texture image. Work around this assertion. Note: I am unsure whether this workaround produces the desired result (0,0,0,1) on all hardware.
2007-03-24r300: Fix: KIL instruction don't require texturesNicolai Haehnle
When no textures were enabled, a KIL instruction triggered an assertion in r300_setup_rs_unit.
2007-03-23r300: Whitespace cleanup (remove trailing spaces)Nicolai Haehnle
2007-03-21merge from masterBrian
2007-03-21r300: Remove the program-global const_sin indexNicolai Haehnle
The index is no longer necessary to share constants between multiple SIN/COS/SCS instructions inside a single fragment program, and storing a tiny implementation detail like this in the fragment_program structure itself was just nasty.
2007-03-20r300: Whitespace cleanup (remove trailing spaces)Nicolai Haehnle
2007-03-19r300: Cleanup fragment program constant allocation, share constantsNicolai Haehnle
The constant/parameter allocation was significantly simplified, removing one unnecessary copy operation of parameters. The dirty state tracking is unchanged and far from optimal, since all state is always re-fetched. Constants and parameters are now emitted only once, which significantly reduces the resource pressure on larger programs.
2007-03-19r300: Fix special case (tmp.x <= 0) in fragment program LIT instructionNicolai Haehnle
Also, fix a typo in a related comment.
2007-03-19r300: Clear fragment program instruction slots on first useNicolai Haehnle
Make sure that instruction slots are fully initialized with NOPs during find_and_prepare_slot(). This fixes a bug when a fragment program was translated more than once (e.g. due to a second call to glProgramStringARB). This partially fixes glean/fragProg1.
2007-03-19r300: Dump fragment program after translation if RADEON_DEBUG=pixel is setNicolai Haehnle
2007-03-19r300: Whitespace cleanup (remove trailing spaces)Nicolai Haehnle
2007-03-19r300: Fix WRITEMASK handling when writing to result.depthNicolai Haehnle
This is a necessary change to emit the right instructions when writing to result.depth. However, even with this test, Z-write doesn't work properly, and I don't fully understand why. In addition to this, we'll at least have to disable early-Z, but even that doesn't seem to be enough.
2007-03-19r300: Streamlined fragment program LIT implementationNicolai Haehnle
Fix a bug in the LIT implementation (clamp exponent to 128, not 0.5) and change the implementation around. In theory, the new implementation needs as little as 5 instruction slots. Unfortunately, the dependency analysis in find_and_replace_slot is not strong enough to look at individual components of a register yet.
2007-03-19r300: Fix fragment program reorderingNicolai Haehnle
Do not move an instruction that writes to a temp forward past an instruction that reads the same temporary.
2007-03-19r300: Fragment program dumps format tex instructionsNicolai Haehnle
2007-03-19r300: Fix hw fragment program dumpNicolai Haehnle
Dumps of fragment programs were incorrect when the program consisted of multiple nodes. Also, improved the formatting a bit.
2007-03-19r300: Fix fragment program instruction pairing and register allocationNicolai Haehnle
There were a number of bugs related to the pairing of vector and scalar operations where swizzles ended up using the wrong source register, or an instruction was moved forward and ended up overwriting an aliased register. The new algorithm for register allocation is quite conservative and may run out of registers before necessary. On the plus side, It Just Works. Pairing is done whenever possible, and in more cases than before, so in practice this change should be a net win.
2007-03-18r300: Removed the deprecated $XFree86$ CVS keywords.Oliver McFadden
2007-03-18r300: Corrected the string for polygon mode; it wasn't updated from unkXXX.Oliver McFadden
2007-03-17r300: change vendor string to DRI R300 ProjectDave Airlie
2007-03-15r300: Added _mesa_copy_instructions.Oliver McFadden
2007-03-15r300: Renamed r300_vertexprog.c to r300_vertprog.cOliver McFadden
2007-03-15r300: Use _mesa_alloc_instructions/_mesa_init_instructions instead of malloc.Oliver McFadden
Note that insert_wpos in r300_vertexprog.c is still a little flaky and could be improved.
2007-03-15r300: Updated R300 to use the new SWIZZLE macros.Oliver McFadden
2007-03-15r300: Fixed an unused variable warning and removed some cruft, too.Oliver McFadden
2007-03-15r300: Fixed a printf conversion warning.Oliver McFadden
2007-03-15r300: Fixed "no previous prototype for 'r300RefillCurrentDmaRegion'" warning.Oliver McFadden