summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300
AgeCommit message (Collapse)Author
2009-08-21r300: Clean emit code.Pauli Nieminen
This fixes some state atom check functions from returing wrong emit size. There is emit code cleanup so that emit function selection is done in init time instead of runtime. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-18r300: Movde debug output from stdout to stderr in copiler.Pauli Nieminen
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-18radeon: Optimize memory handling for dma operations.Pauli Nieminen
We keep dma buffer objects in list untill they have been unused for many draw operations. Current limit of having 100 flushes is just guess for good performance/memory trade off. Moving WARN_ONCE macro to common context because it is used in multiple drivers. Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
2009-08-18r300: fix the build on big endianAlex Deucher
2009-08-18r300: remove warning introduced with OQDave Airlie
2009-08-18r300: OQ reworkDave Airlie
Move to common code base so radeon/r200 can add support for this. Make OQ start a state emitted like all normal state, and make no-tcl flushing work in proper places. Really need a generic post emit space reservation mechanism like max_state so we can reserve some space for the emit this code passes demos/arbocclude, piglit occlusion query and glean occlusion query with TCL and NO-TCL on my rv530.
2009-08-18r300: fix missing BEGIN/END batchesDave Airlie
2009-08-18r300: fix big endian buildDave Airlie
2009-08-17r300: split vbo rendering with big drawarray caseJerome Glisse
Split vbo rendering when the number of elements requested by drawarrays is bigger than 65536.
2009-08-16r300: disable ZTOP only when occlusion queries are usedMaciej Cencora
2009-08-15r300: enable ARB_occlusion_queryMaciej Cencora
Supported only on HW with TCL block and with proper radeon drm. Required minimum radeon drm version is 1.30 or KMS.
2009-08-15r300: temporary occlusion query hackMaciej Cencora
2009-08-15r300: clear not_flushed OQ list after flushMaciej Cencora
2009-08-15r300/oq: add some debugging infoMaciej Cencora
2009-08-15r300: add occlusion queries supportMaciej Cencora
TODO: - use proper interface for checking if bo is idle when it's available - disable ZTOP only when needed - make it work under KMS
2009-08-15r300: fixup space checks since VBO codeDave Airlie
Hopefully this gets the ordering correct so the space checks don't fail.
2009-08-15r300: add just in case warn I don't think this can actually happenDave Airlie
2009-08-15radeon: enable vertex splitting for IBsDave Airlie
Based on Maciej's code, just fixed up the alignments for INDX_BUFFER ut2004 runs AS-Convoy
2009-08-15Merge branch 'vbo_clean'Maciej Cencora
Conflicts: src/mesa/drivers/dri/r300/r300_draw.c
2009-08-15r300: mark VBO buffer objects as persistentMaciej Cencora
2009-08-14r300: unmap buffer objects after usageMaciej Cencora
2009-08-14r300: remove broken vertex splittingMaciej Cencora
Revert to previous behaviour of dropping to big render operations.
2009-08-14r300: rework index buffer setupMaciej Cencora
Copy elements directly to DMA bo to get rid of one memcpy, and prepare for using VBOs for index buffer.
2009-08-14r300: remove unused software TNL pathMaciej Cencora
This doesn't remove software TCL path - so RS480 and RS690 work as before.
2009-08-14r300: use VBOs for vertex attributesMaciej Cencora
2009-08-14r300: add required symlinksMaciej Cencora
Reported by adamk on #radeon
2009-08-14radeon: add VBO support (not enabled yet)Maciej Cencora
2009-08-12vbo: Avoid extra validation of DrawElements.Eric Anholt
This saves mapping the index buffer to get a bounds on the indices that drivers just drop on the floor in the VBO case (cache win), saves a bonus walk of the indices in the CheckArrayBounds case, and other miscellaneous validation. On intel it's a particularly a large win (50-100% in my app) because even though we let the indices stay in both CPU and GPU caches, we still end up waiting for the GPU to be done with the buffer before reading from it. Drivers that want the min/max_index fields must now check index_bounds_valid and use vbo_get_minmax_index before using them.
2009-08-02r300: Fix a regression on non-KMSNicolai Hähnle
The regression was introduced by 9a1c336253579d8b58b31910325227b22b4af395 Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-08-01r300: Fix corner-case of KIL on R300Nicolai Hähnle
R300 hardware (but _not_ R500) hardware requires an enabled texture unit if KIL is used in fragment programs. We now work around the CS checker correctly when enabling such a fake texture unit. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-08-01r300: Fix Z buffer re-emit after window resizeNicolai Hähnle
We used to not always correctly re-emit the Z buffer size in all cases, in particular the clear path, and invalidated state was not always picked up correctly. This fixes a bug where the kernel CS checker correctly complains about a Z buffer that is too small. Note that this bug was probably only visible with ridiculously high framerates, i.e. glxgears. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-31radeon: fix r100/r200 compressed texture strideRoland Scheidegger
This almost fixes compressed mipmapped textures on r200, though some small mip levels are still broken. Leave r300 compressed texture stride as is though afaik it's different to pre-radeon-rewrite too. Also do the fixup for rs600 uncompressed row stride at same place.
2009-07-30r300/compiler: Remove inst_offset from r500_fragment_program_codeNicolai Hähnle
The field is not used, and in any case it would be more interesting to manipulate from *outside* the compiler if we ever wanted to load several fragment programs at the same time or something. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-29r300: Cleanup r300_fragment_program_codeNicolai Hähnle
Configuration register values are now stored directly in that structure. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-29r300/compiler: Adapt AllocateHwInputs interface to common usage patternNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/compiler: Make calculate_inputs_outputs available to external usersNicolai Hähnle
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>
2009-07-27r300/compiler: Add vertex program code dumper from Gallium driverNicolai Hähnle
2009-07-27r300/compiler: Prepare for hookup to GalliumNicolai Hähnle
2009-07-27r300/fragprog: Move wpos_attr and fog_attr where they belongNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/fragprog: Remove hardcoded FRAG_ATTRIB_xxx constantsNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/fragprog: No longer rely on hardcoded FRAG_RESULT_xxx constantsNicolai Hähnle
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>
2009-07-27r300/fragprog: Move some of the attribute handling out of the compilerNicolai Hähnle
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>
2009-07-27r300/fragprog: Finally get rid of the duplicate program copyNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Move Mesa-dependent input/output handling out of compilerNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300: Remove ugly PSIZ hackNicolai Hähnle
Instead of setting Sourced, we simply force writemasks to begin with. Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Refactor wpos rewrite using rc_programNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Refactor fog_as_texcoord to use rc_programNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/vertprog: Refactor addArtificialOutputs to use rc_programNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/fragprog: Refactor wpos rewrite to use rc_programNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
2009-07-27r300/compiler: Refactor fragment program fog rewrite to use rc_programNicolai Hähnle
Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>