summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r300g: Actually mark shaders as translated/untranslated.Corbin Simpson2009-07-233-2/+8
| | | | | | Also trust that Gallium will not give us TGSI that miscounts shader consts. This creates a 20x speedup on glxgears, from 8 FPS to 160 FPS.
* cell: update TGSI_OPCODE_ casesBrian Paul2009-07-221-18/+8
|
* gallium: Fix PPC build.Michel Dänzer2009-07-231-8/+8
|
* nouveau: nv30: wrong variable for formatPatrice Mandin2009-07-221-1/+1
|
* nouveau: Take into account sx,sy parameters to read from source surfacePatrice Mandin2009-07-221-2/+2
|
* gallium: remove multiple aliases for TGSI opcodesKeith Whitwell2009-07-227-210/+194
| | | | | | | | | | | | | | | | | This is a source of ongoing confusion. TGSI has multiple names for opcodes where the same semantics originate in multiple shader APIs. For instance, TGSI includes both Mesa/GLSL and DX/SM30 names for opcodes with the same semantics, but aliases those names to the same underlying opcode number. This makes it very difficult to visually inspect two sets of opcodes (eg in state tracker & driver) and check if they implement the same functionality. This patch arbitarily rips out the versions of the opcodes not currently favoured by the mesa state tracker and leaves us with a single name for each distinct operation.
* gallium: simplify tgsi_full_immediate structKeith Whitwell2009-07-2225-76/+79
| | | | | | | | | | | | | Remove the need to have a pointer in this struct by just including the immediate data inline. Having a pointer in the struct introduces complications like needing to alloc/free the data pointed to, uncertainty about who owns the data, etc. There doesn't seem to be a need for it, and it is unlikely to make much difference plus or minus to performance. Added some asserts as we now will trip up on immediates with more than four elements. There were actually already quite a few such asserts, but the >4 case could be used in the future to specify indexable immediate ranges, such as lookup tables.
* tgsi: get texturing working in vertex shader sse2 pathKeith Whitwell2009-07-201-0/+4
| | | | Missing file from previous commit.
* tgsi: get texturing working in vertex shader sse2 pathKeith Whitwell2009-07-201-6/+6
|
* tgsi: fix regression in indexed const lookupsKeith Whitwell2009-07-201-2/+4
| | | | | | | | | | | This function was calling get_input_base() and get_output_base() to get the names of a couple of register to use as temps. Those functions no longer return registers, so adjust it to get the registers elsewhere. This change doesn't address the issue that it's a fairly poor way to grab a register name by calling a function with an apparently unrelated meaning.
* r300g: Fix SCons build.Michel Dänzer2009-07-203-3/+8
|
* gallium/trace: Fix SCons build.Michel Dänzer2009-07-201-0/+1
|
* r300g: Guard R500 register writes by is_r500 check.Michel Dänzer2009-07-201-3/+5
| | | | | Flagged by the DRM command stream checker. This allows the driver to work on non-R500 cards.
* gallium: make g3dvl build againDave Airlie2009-07-183-3/+0
|
* Merge branch 'mesa_7_5_branch'Brian Paul2009-07-1710-19/+381
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile progs/glsl/multitex.c src/mesa/main/enums.c src/mesa/main/state.c src/mesa/main/texenvprogram.c src/mesa/main/version.h
| * python/retrace: Process the call no passed to --to option inclusively.José Fonseca2009-07-161-1/+1
| |
| * python/retrace: Dump the surface copy contents.José Fonseca2009-07-161-0/+10
| |
| * python/retrace: Flush stdout before calling the pipe driver.José Fonseca2009-07-161-0/+4
| | | | | | | | So that messages are in sync with stderr.
| * python: Hack to prevent segmentation faults when python exits.José Fonseca2009-07-161-1/+7
| |
| * wgl: Expose pipe_screen/pipe_context via an extension.José Fonseca2009-07-164-1/+133
| |
| * python: Obtain pipe_screen/pipe_context from the system's OpenGL driver.José Fonseca2009-07-162-3/+191
| |
| * softpipe: limit blend results to [0,1]Luca Barbieri2009-07-151-12/+30
| |
| * python/retrace: Interpret surface_copy.José Fonseca2009-07-151-0/+4
| |
| * python/samples: Use PIPE_FORMAT_Z16_UNORM instead of PIPE_FORMAT_Z32_UNORM.José Fonseca2009-07-151-1/+1
| | | | | | | | More common. True fix would be to use whatever the screen supports though.
* | st/egl: Fix broken build after EGL thread changesAndrew Randrianasulu2009-07-181-1/+1
| |
* | egl: Remove redundant DeletePending flag.Chia-I Wu2009-07-173-14/+4
| | | | | | | | | | | | | | | | A context or surface that is neither linked to a display nor current to a thread should be destroyed. Therefore, an unlinked context or surface implies a pending delete automatically. Signed-off-by: Chia-I Wu <[email protected]>
* | egl: Use the link functions to manage resources.Chia-I Wu2009-07-173-13/+15
| | | | | | | | | | | | | | | | This commit uses the newly introduced link functions to manage EGL contexts and surfaces. As a result of this, the API for drivers are changed. All drivers are updated for the change. Signed-off-by: Chia-I Wu <[email protected]>
* | draw: fix ppc build regressionKeith Whitwell2009-07-161-0/+1
| | | | | | | | Found by x.org tinderbox, reported by Chris Ball.
* | tgsi: simplify and fix sse KIL implementationKeith Whitwell2009-07-161-36/+28
| | | | | | | | | | | | Use sse_movmskps to extract the correct bits of the comparison result for use in updating the killmask. Simplify some logic around identifying the set of necessary comparisons to make.
* | rtasm: export sse_movmskpsKeith Whitwell2009-07-162-0/+10
| |
* | tgsi: initial texturing support on sse pathKeith Whitwell2009-07-162-19/+184
| | | | | | | | | | Most obvious problem is drawpixels comes out blocky, but this may be an existing issue of KIL on the sse path.
* | tgsi: make sse function callout mechanism more genericKeith Whitwell2009-07-161-40/+48
| | | | | | | | Take a list of arguments rather than hardcoding TEMP_R0.
* | tgsi: reduce x86 reg usage in tgsi_sse generated programsKeith Whitwell2009-07-164-150/+115
| | | | | | | | | | | | Pass the tgsi_exec_machine struct in directly and just hold a single pointer to this struct, rather than keeping one for each of its internal members.
* | tgsi: no need to separately malloc input and output arraysKeith Whitwell2009-07-162-27/+6
| | | | | | | | Can now guarantee alignment in the initial allocation of the tgsi exec machine.
* | gallium: reduce recursive include of tgsi_exec.hKeith Whitwell2009-07-165-1/+7
| | | | | | | | A lot of draw code no longer needs to see this header.
* | tgsi: make function call code in tgsi_sse.c less opaqueKeith Whitwell2009-07-162-25/+92
| | | | | | | | | | | | Explictly pass src and dst arguments (previously dst argument was also being used as a src). Separate argument handling from the rest of the function call emit.
* | gallium: proper constructor and destructor for tgsi_exec_machineKeith Whitwell2009-07-167-53/+71
| | | | | | | | | | Centralize the creation, initialization and destruction of this struct. Use align_malloc instead of home-brew alternatives.
* | dri-st: Unbreak GL_EXT_blend_equation_separate.Corbin Simpson2009-07-141-0/+1
| | | | | | | | | | | | | | | | | | Since it has a dispatch table entry (for BlendEquationSeparateEXT,) can't omit it from this list. It'll still get disabled if the cap (PIPE_CAP_BLEND_EQUATION_SEPARATE) isn't set. Somebody that doesn't suck at GL (read: not me) should probably add this into progs/samples/blendeq or similar so we can test it.
* | gallium: Define PIPE_CAP_BLEND_EQUATION_SEPARATE, remove extension from ↵Patrice Mandin2009-07-149-2/+15
| | | | | | | | default extension list
* | r300g: Small compile warning fixes.Nicolai Hähnle2009-07-133-2/+5
| | | | | | | | Signed-off-by: Corbin Simpson <[email protected]>
* | r300g, radeon: Whitespace fixes.Nicolai Hähnle2009-07-134-13/+13
| | | | | | | | Signed-off-by: Corbin Simpson <[email protected]>
* | r300g: Use align() instead of inline maths.Corbin Simpson2009-07-131-4/+7
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-07-137-17/+117
|\|
| * tgsi: update some assertionsBrian Paul2009-07-101-4/+4
| |
| * tgsi: tgsi: add semantic_names[] string for TGSI_SEMANTIC_FACEBrian Paul2009-07-101-1/+6
| | | | | | | | Same story as in the tgsi_dump.c code (see prev commit).
| * tgsi: add semantic_names[] string for TGSI_SEMANTIC_FACEBrian Paul2009-07-101-1/+6
| | | | | | | | | | | | | | | | Fixes TGSI dump output when front/back-face register is declared. Also, add some assertions to make sure the semantic/interpolate string arrays have as many elements as there are tokens in the p_shader_tokens.h file. That should catch problems like this in the future.
| * tgis: implement indirect addressing for destination registersBrian Paul2009-07-106-11/+101
| | | | | | | | Includes the TGSI interpreter, but not the SSE/PPC/etc code generators.
* | r300g: Remove VAP_CNTL_STATUS from invariant state.Corbin Simpson2009-07-081-6/+1
| | | | | | | | Seriously.
* | r300g: Disable MSPOS registers for glisse's CS security checker.Corbin Simpson2009-07-081-4/+7
| | | | | | | | These will come back in someday, when we can properly use them.
* | r300-gallium: Unify sampler and texture emit.Corbin Simpson2009-07-083-39/+26
| | | | | | | | They have to cross into each other's registers.