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 |
| | |||||
* | xvmc: Generate new resource ID in _XIDHandler, otherwise it's invalid. | Cooper Yuan | 2009-09-15 | 3 | -1/+10 |
| | |||||
* | st/xorg: add some debugging helpers | Zack Rusin | 2009-09-14 | 2 | -14/+33 |
| | |||||
* | r600: add span support for 1D tiles | Alex Deucher | 2009-09-14 | 3 | -1/+223 |
| | | | | | | | | | | | 1D tile span support for depth/stencil/color/textures Z and stencil buffers are always tiled, so this fixes sw access to Z and stencil buffers. color and textures are currently linear, but this adds span support when we implement 1D tiling. This fixes the text in progs/demos/engine and progs/tests/z* | ||||
* | r600: fix warning | Alex Deucher | 2009-09-14 | 1 | -0/+1 |
| | | | | Noticed by rnoland on IRC. | ||||
* | st/mesa: minor whitespace, comment clean-ups | Brian Paul | 2009-09-14 | 1 | -21/+9 |
| | |||||
* | 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. | ||||
* | intel: minor code clean-ups | Brian Paul | 2009-09-14 | 1 | -11/+8 |
| | |||||
* | intel: fix renderbuffer map/unmap regression | Brian Paul | 2009-09-14 | 1 | -14/+14 |
| | | | | | | Commit 36dd53a3cded9d003ec418732b7fc93c1476aa9b caused a few regressions because the glReadBuffer() buffer wasn't getting mapped when GL_READ_BUFFER != GL_DRAW_BUFFER. | ||||
* | intel: remove unneeded driver function assignments | Brian Paul | 2009-09-14 | 1 | -5/+0 |
| | | | | | These default swrast functions are already installed by _mesa_init_driver_functions(). | ||||
* | mesa/st: remove dead comment | Keith Whitwell | 2009-09-14 | 1 | -7/+0 |
| | |||||
* | st/mesa: convert to new tgsi_ureg mechanism for shader emit | Keith Whitwell | 2009-09-14 | 3 | -983/+625 |
| | | | | | | | | | Should be easier to read and work with than the older ways of emitting TGSI tokens. Also, emit simpler TGSI than previously: - translate away source and dest extended modifiers - translate away the SWZ opcode | ||||
* | 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. | ||||
* | mesa: remove unused SATURATE_PLUS_MINUS_ONE flag | Keith Whitwell | 2009-09-12 | 2 | -3/+0 |
| | | | | Never set in mesa. Remove from tgsi translation as well. | ||||
* | 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 |
| |