Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | nv50: add preliminary support for point sprites | Christoph Bumiller | 2009-09-15 | 3 | -2/+58 |
| | |||||
* | nv50: add support for point size per vertex | Christoph Bumiller | 2009-09-15 | 2 | -0/+15 |
| | |||||
* | nv50: add support for light-twoside | Christoph Bumiller | 2009-09-15 | 2 | -0/+22 |
| | |||||
* | nv50: proper linkage between VP and FP | Christoph Bumiller | 2009-09-15 | 4 | -161/+298 |
| | | | | | | | | | | | | | | | | | | | | | This moves construction of the mapping between VP outputs and FP inputs into validation. The map also contains slots for special outputs like clip distance and point size, so we need to at least merge the VP related and FP related parts on validation if we want to support those. Now we match every single FP input component with results from the VP and leave those not read out of the map, or replace those not written by 0 (xyz) or 1 (w). The bitmap indicating linear interpolants is also filled, and flat FP inputs are mapped in only after non-flat ones, as is required. Furthermore, we can save some space by only fetching VP attrs we actually use, and avoid wasting any output regs because of TGSI using less than 4 components. | ||||
* | nv50: move allocation of pc regs | Christoph Bumiller | 2009-09-15 | 1 | -155/+129 |
| | | | | | Make use of tgsi_shader_info to determine how many nv50_regs we need to allocate, whether program uses KIL, or writes DEPR. | ||||
* | nv50: nicer initialization of nv50_regs | Christoph Bumiller | 2009-09-15 | 1 | -51/+42 |
| | |||||
* | nv50: handle CEIL and TRUNC opcodes | Christoph Bumiller | 2009-09-15 | 1 | -0/+16 |
| | |||||
* | nv50: handle SEQ, SGT, SLE, SNE opcodes | Christoph Bumiller | 2009-09-15 | 1 | -30/+61 |
| | |||||
* | nv50: SIN and COS use src0.w for dst.w | Christoph Bumiller | 2009-09-15 | 1 | -16/+20 |
| | |||||
* | nv50: use broadcast TEMP reg in tx_insn | Christoph Bumiller | 2009-09-15 | 1 | -60/+28 |
| | | | | | Makes some opcode cases nicer and might reduce the total nr of TEMPs required, or save some MOVs. | ||||
* | nv50: add nv50_tgsi_insn to handle swizzles safely | Christoph Bumiller | 2009-09-15 | 1 | -19/+128 |
| | |||||
* | nv50: add functions for swizzle resolution | Christoph Bumiller | 2009-09-15 | 1 | -30/+118 |
| | | | | | | We're going to try to reorder the scalar ops of a vector instr to accomodate swizzles that would otherwise require us to emit to an additional TEMP first (like MOV R0.xy, R0.zx). | ||||
* | nv50: extend insn src mask function | Christoph Bumiller | 2009-09-15 | 1 | -46/+72 |
| | | | | | Extend its usage to avoiding e.g. emission of negation instructions in tx_insn for sources we don't need. | ||||
* | st/g3dvl: pass color values to softpipe clear function | Cooper Yuan | 2009-09-15 | 2 | -2/+9 |
| | |||||
* | st/xorg: add some debugging helpers | Zack Rusin | 2009-09-14 | 2 | -14/+33 |
| | |||||
* | st/xorg: fix ureg_DECL_constant() parameters | Brian Paul | 2009-09-14 | 1 | -5/+5 |
| | | | | | | This fixes the compilation errors reported in bug 23945 but someone more familiar with the code should review for correctness and close the bug report. | ||||
* | gallium: Add pipe_transfer_map/unmap inlines. | José Fonseca | 2009-09-14 | 1 | -0/+13 |
| | |||||
* | util: Add _BitScanForward intrinsic's declaration. | José Fonseca | 2009-09-14 | 1 | -1/+3 |
| | | | | It is missing in some Microsoft DDKs. | ||||
* | nv50: Fix m2mf positions. | Marcin Kościelnicki | 2009-09-14 | 1 | -2/+2 |
| | |||||
* | llvmpipe: Make lp_type a regular union. | José Fonseca | 2009-09-14 | 36 | -272/+270 |
| | | | | | Union not worth the hassle of violating C99 or adding a name to the structure. | ||||
* | util: Fix a1r5g5b5's format description. | José Fonseca | 2009-09-14 | 1 | -1/+1 |
| | |||||
* | g3dvl: update tgsi_opcode in order to build g3dvl library | Cooper Yuan | 2009-09-14 | 2 | -8/+8 |
| | |||||
* | tgsi: handle some src/dst aliasing in tgsi_sse2.c | Keith Whitwell | 2009-09-13 | 1 | -8/+23 |
| | | | | | | | | | | | | Src/Dst aliasing (aka SOA dependencies) requires some care to ensure intermediate results do not overwrite yet-to-be read source registers. This change ensures that MOV/SWZ handle this correctly, which is poor but no worse than the current tgsi_exec.c path. Remove the fallback as there is nothing to be gained correctness-wise between the two implementations now. Fixing this properly looks like a bit of work in this code, but might be easily achieved by sending destination writes to temporary storage. | ||||
* | llvmpipe: Compute derivatives. | José Fonseca | 2009-09-13 | 1 | -4/+87 |
| | |||||
* | llvmpipe: Remove dead references to pipe_winsys. | José Fonseca | 2009-09-13 | 1 | -4/+1 |
| | |||||
* | llvmpipe: Use const keyword for input array arguments. | José Fonseca | 2009-09-13 | 4 | -11/+12 |
| | |||||
* | llvmpipe: Delay storing into the dst register to prevent clobbering the src ↵ | José Fonseca | 2009-09-13 | 1 | -134/+103 |
| | | | | | | | registers. How I'm thankful for regular expressions -- just a couple of them were all that was needed to do this otherwise tiresome and bug prone change. | ||||
* | llvmpipe: Translate more TGSI opcodes. | José Fonseca | 2009-09-13 | 1 | -23/+116 |
| | | | | | Basically cover all low hanging fruit, and mark the still missing opcodes as "fixme" or deprecated. | ||||
* | llvmpipe: Add a few more common arithmetic functions. | José Fonseca | 2009-09-13 | 2 | -0/+111 |
| | | | | | We are relying on SSE4.1 for round/trunc/ceil/floor. We'll need to eventually find alternatives for the rest of the world. | ||||
* | llvmpipe: Rename function to free up lp_build_trunc to the usual arithmetic ↵ | José Fonseca | 2009-09-13 | 1 | -7/+7 |
| | | | | meaning. | ||||
* | tgsi: implement saturation | Keith Whitwell | 2009-09-12 | 1 | -17/+26 |
| | | | | Fix recent performance regression. | ||||
* | tgsi: add missing implementation of constant decl change | Keith Whitwell | 2009-09-12 | 1 | -8/+61 |
| | |||||
* | r300g: delete unused flag due to commit: 09b566e1610 | Cooper Yuan | 2009-09-13 | 1 | -1/+0 |
| | |||||
* | ureg: add a mechanism to get the built tokens rather than a full shader | Keith Whitwell | 2009-09-12 | 2 | -0/+30 |
| | | | | | | Previously ureg would always call the driver's create-shader function. This allows the caller the opportunity to hold onto the tokens if it needs to reuse them, eg. to create an internal draw shader. | ||||
* | ureg: add generic emitters for tex and branch instructions | Keith Whitwell | 2009-09-12 | 2 | -11/+80 |
| | | | | Couldn't previously emit these except by calling the opcode-specific helper. | ||||
* | tgsi/ureg: give ureg_DECL_constant an explicit index parameter | Keith Whitwell | 2009-09-12 | 3 | -4/+8 |
| | | | | | Avoid the need to emit all constant declarations in order. Makes referring to a specific constant in the constant buffer much easier. | ||||
* | tgsi/ureg: VS inputs don't have any semantic tags, just an index | Keith Whitwell | 2009-09-12 | 4 | -50/+44 |
| | | | | Fix ureg_DECL_vs_input to reflect this and fix up all callers. | ||||
* | tgsi: free tokens on error | Keith Whitwell | 2009-09-12 | 1 | -0/+3 |
| | |||||
* | tgsi: sanity check ureg programs | Keith Whitwell | 2009-09-12 | 1 | -0/+10 |
| | |||||
* | tgsi: add const qualifier | Keith Whitwell | 2009-09-12 | 2 | -2/+2 |
| | |||||
* | r300g: There is no such thing as "texture stride" | Nicolai Hähnle | 2009-09-12 | 6 | -24/+47 |
| | | | | | | | | | Individual texture images have a stride, but textures as a whole do not. There are still pieces of code which are confused about this, but the core of the confusion is hopefully gone. Signed-off-by: Nicolai Hähnle <[email protected]> | ||||
* | r300g: only allocate one BO for vertex buffers, default size is 64*1024 | Cooper Yuan | 2009-09-11 | 1 | -35/+33 |
| | | | | it can fix redbook/sceneflat, scene, scenebamb, surface, nurbs and so on | ||||
* | llvmpipe: set dirty_render_cache in llvmpipe_clear() | José Fonseca | 2009-09-11 | 1 | -0/+1 |
| | | | | | | Based on Brian's softpipe change on commit 988db641195819c948249a1bb2d59f13577a482f. We don't use the tile cache for zsbuf though, only for color buffers. | ||||
* | llvmpipe: Update status in README and TODO/FIXME comments throughout the code. | José Fonseca | 2009-09-11 | 9 | -36/+36 |
| | |||||
* | softpipe: remove no-op softpipe_init_texture_funcs() function | Brian Paul | 2009-09-10 | 3 | -10/+0 |
| | |||||
* | softpipe: remove unused #includes, move comment | Brian Paul | 2009-09-10 | 1 | -7/+1 |
| | |||||
* | util: remove unneeded #includes | Brian Paul | 2009-09-10 | 1 | -6/+0 |
| | |||||
* | softpipe: reformatting, clean-ups, comments | Brian Paul | 2009-09-10 | 2 | -15/+30 |
| | |||||
* | util: minor clean-ups, reformatting | Brian Paul | 2009-09-10 | 1 | -17/+12 |
| | |||||
* | softpipe: remove unneeded #includes | Brian Paul | 2009-09-10 | 2 | -3/+0 |
| |