summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* gs: make sure we end primitives when finishing executing shadersZack Rusin2010-06-153-26/+23
|
* draw/gs: make sure gs works with elts and doesn't overrun the bufferZack Rusin2010-06-152-11/+43
|
* graw: test multiple cb's in geometry shadersZack Rusin2010-06-152-18/+82
|
* graw: fix setup for multiple constant buffersZack Rusin2010-06-152-21/+64
|
* draw: run the pipeline with the correct number of vertsZack Rusin2010-06-151-1/+1
| | | | verts per primitive, not total count
* draw: fix primitive indexing in the pipelineZack Rusin2010-06-151-2/+4
| | | | spotted by Keith
* draw: finish the new pipeline setupZack Rusin2010-06-159-245/+238
| | | | | | | Keith came up with a new way of running the pipeline which involves passing a few info structs around (for fetch, vertices and prims) and allows us to correctly handle cases where we endup with multiple primitives generated by the pipeline itself.
* softpipe/gs: fix a crash when a gs isn't presentZack Rusin2010-06-151-16/+20
|
* draw wipKeith Whitwell2010-06-158-319/+342
|
* r300g: initialize US_CODE_BANK on r4xxMarek Olšák2010-06-141-1/+4
|
* gallivm: Omit references to NoFramePointerElimNonLeafJosé Fonseca2010-06-141-3/+0
| | | | It was added after 2.7.
* util: Use int type for format field width.José Fonseca2010-06-141-1/+1
| | | | As suggested by gcc warning.
* gallivm: Override some of the default target options.José Fonseca2010-06-142-0/+31
| | | | | | | In particular: - enable LLVM <-> GDB integration for JIT code - disable frame-pointer elimination on debug/profile builds - enable fast-math.
* gallivm: Use func_to_pointer().José Fonseca2010-06-141-16/+1
|
* util: Add a func_to_pointer util function too.José Fonseca2010-06-141-0/+11
|
* graw: small fixups for the gs examplesZack Rusin2010-06-142-5/+5
|
* r300g: fix uploading RC state shader constants on r3xxMarek Olšák2010-06-141-1/+1
| | | | | | I've messed this up in one of my previous commits. Reported-by: Igor Murzov
* r300g: drop begin_cs/end_csMarek Olšák2010-06-143-38/+0
| | | | | | | | | | I have had a look at the libdrm sources and they just contain more or less the same checking we do in macros, and begin_cs may realloc the CS buffer if we overflow it, which never happens with r300g. So these are pretty much useless. There is a small but measurable performance increase by dropping the two functions.
* r300g: rewrite occlusion queriesMarek Olšák2010-06-147-159/+168
| | | | | | | | The previous implementation had issues with queries spanning over several command streams as well as using a very large number of queries. This fixes flickering in Enemy Territory: Quake Wars. The driver now renders everything correctly in this game and the graphics is awesome.
* r300g: emit viewport state as a dword tableMarek Olšák2010-06-141-6/+1
|
* r300g: subclass pipe_surfaceMarek Olšák2010-06-143-44/+51
|
* r300g: simplify reloc macrosMarek Olšák2010-06-142-35/+9
|
* r300g: count CS dwords on debug builds onlyMarek Olšák2010-06-142-25/+36
|
* r300g: optimize emission of fragment shader constantsMarek Olšák2010-06-133-27/+26
|
* r300g: turn fragment shader into a CBMarek Olšák2010-06-135-129/+126
|
* r300g: turn depth stencil state into a CBMarek Olšák2010-06-133-17/+48
|
* r300g: turn clip state into a CBMarek Olšák2010-06-135-26/+35
|
* r300g: turn blend color into a CBMarek Olšák2010-06-134-27/+34
|
* r300g: turn blend state into a CBMarek Olšák2010-06-133-35/+49
|
* r300g: add API for building command buffersMarek Olšák2010-06-132-0/+145
| | | | | | The idea is to build a hardware command buffer for every CSO and memcpy the buffer to a command stream at bind time (or dirty-state-emission time, to be precise).
* r300g: inline FLUSH_CSMarek Olšák2010-06-132-10/+4
| | | | The fewer macros, the better.
* r300g: reorder CS macros and document them a littleMarek Olšák2010-06-132-38/+52
|
* r300g: drop DBG_CSMarek Olšák2010-06-133-47/+1
| | | | | I'd like the CS macros to be as lightweight as possible for performance reasons.
* r300g: inline CHECK_CSMarek Olšák2010-06-131-4/+1
|
* r300g: replace r300_cs_info with simplier get_cs_free_dwordsMarek Olšák2010-06-134-23/+9
|
* r300g: fix multiple render targetsMarek Olšák2010-06-131-11/+6
| | | | This fixes tests/drawbuffers.
* r300g: remove r300_state.hMarek Olšák2010-06-134-34/+8
|
* r300g: move two-sided stencilref fallback to its own fileMarek Olšák2010-06-135-130/+164
|
* r300g: move index buffer translate functions to their new homeMarek Olšák2010-06-133-130/+144
|
* r300g: add fallback for unaligned/unsupported vertex stride/offset/formatMarek Olšák2010-06-137-9/+209
| | | | | There is a problem though, the translate module cannot emit half float vertices.
* r300g: upload only vertex buffers referenced by vertex elementsMarek Olšák2010-06-131-17/+20
|
* draw/gs: copy the outputs only if we emitted somethingZack Rusin2010-06-121-3/+5
|
* softpipe: small cleanupZack Rusin2010-06-121-1/+3
|
* scons: Disable i965g build if using MSVC.Vinson Lee2010-06-111-0/+4
| | | | i965g uses C99 constructs that are not supported by MSVC.
* scons: Disable i915g build if using MSVC.Vinson Lee2010-06-111-0/+4
| | | | i915g uses C99 constructs that are not supported by MSVC.
* r300/compiler: Implement simple loop emulationTom Stellard2010-06-111-3/+3
| | | | | | | The loop emulation unrolls loops as may times as possbile while still keeping the shader program below the maximum instruction limit. At this point, there are no checks for constant conditionals. This is only enabled for fragment shaders.
* gallium/softpipe/draw: support samplers in geometry shadersZack Rusin2010-06-1111-5/+153
|
* tgsi: support 2d indirect addressingZack Rusin2010-06-115-18/+86
|
* st/egl: Do not build non-working driver combinations.Chia-I Wu2010-06-111-0/+6
| | | | | | The KMS backend requires a hardware pipe driver. Do not build egl_kms_swrast. Also, only build egl_fbdev_swrast for fbdev backend. It is a pure software backend.
* st/egl: Add fbdev backend.Chia-I Wu2010-06-113-6/+501
| | | | | The backend is pure software. It implements EGL_MESA_screen_surface extension, and is kept simple by only exporting the current mode.