Age | Commit message (Collapse) | Author | |
---|---|---|---|
2010-09-09 | nv50: address regs are 16 bit | Christoph Bumiller | |
2010-09-09 | nv50: duplicate interps in load_proj_tex_coords | Christoph Bumiller | |
Otherwise we might clobber the origin interpolation result or use the result of the RCP before its definition. | |||
2010-09-09 | nv50: create value references with the right type | Christoph Bumiller | |
Since atm our OPs aren't typed but instead values are, we need to take care if they're used as different types (e.g. a load makes a value u32 by default). Maybe this should be changed (also to match TGSI), but it should work as well if done properly. | |||
2010-09-09 | nv50: use actual loads/stores if TEMPs are accessed indirectly | Christoph Bumiller | |
2010-09-09 | nv50: don't parse again in tgsi_2_nc | Christoph Bumiller | |
2010-09-09 | nv50: prepare for having multiple functions | Christoph Bumiller | |
At some point we'll want to support real subroutines instead of just inlining them into the main shader. Since recursive calls are forbidden, we can just save all used registers to a fixed local memory region and restore them on a return, no need for a stack pointer. | |||
2010-09-09 | nv50: save tgsi instructions | Christoph Bumiller | |
2010-09-05 | nouveau: delete nouveau_class.h, move nv50 regs to nv50_reg.h | Luca Barbieri | |
nv50 should switch to rules-ng-ng too at some point. The classic Mesa Nouveau driver also includes a copy of nouveau_class.h, and should convert to rules-ng-ng too and remove it. | |||
2010-09-03 | nv50: load address register before using it, not after | Christoph Bumiller | |
2010-09-02 | Merge remote branch 'origin/master' into nv50-compiler | Christoph Bumiller | |
Conflicts: src/gallium/drivers/nv50/nv50_program.c | |||
2010-09-02 | nv50: fix build-predicate function | Christoph Bumiller | |
2010-09-02 | nv50: fix find_dom_frontier | Christoph Bumiller | |
2010-09-01 | nv50: fix XPD, was negated | Christoph Bumiller | |
2010-09-01 | nv50: must join SELECT inputs before MOV inputs | Christoph Bumiller | |
2010-09-01 | nv50: make use of TGSI immediate type | Christoph Bumiller | |
2010-09-01 | nv50: re-add proper TEXBIAS sequence | Christoph Bumiller | |
2010-09-01 | nv50: make FrontFacing -1 or +1 | Christoph Bumiller | |
2010-09-01 | nv50: SSG | Christoph Bumiller | |
2010-09-01 | nv50: DPH | Ben Skeggs | |
2010-09-01 | nv50: DST | Ben Skeggs | |
2010-09-01 | nv50: attempt at making more complicated loops work | Christoph Bumiller | |
Nested loops, and loops with multiple exits (BREAK, CONT). | |||
2010-09-01 | nv50: turn off verbose debug output by default | Christoph Bumiller | |
2010-09-01 | nv50: set the FragDepth output index | Christoph Bumiller | |
2010-09-01 | nv50: handle TEXTURE_SWIZZLE and GEOMETRY_SHADER4 caps | Christoph Bumiller | |
GP support will probably be re-added soon. | |||
2010-08-23 | nv50: fix check for sprite/point coord enable | Christoph Bumiller | |
2010-08-23 | nv50: yet another case we need a nop.exit | Christoph Bumiller | |
2010-08-23 | nv50: DP2, fix ARL | Christoph Bumiller | |
2010-08-21 | nv50: Silence incompatible pointer type initialization warning. | Vinson Lee | |
Silence the following GCC warning. warning: initialization from incompatible pointer type | |||
2010-08-21 | nv50: Disable unused code. | Vinson Lee | |
Disable release_hw and emit_mov_from_pred functions as they are currently not being used. | |||
2010-08-20 | nv50: use NV50TIC_0_2_TARGET_RECT | Luca Barbieri | |
2010-08-20 | gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT too | Luca Barbieri | |
Searched for them with: git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D' Behavior hasn't been changed. | |||
2010-08-18 | Merge remote branch 'origin/master' into nv50-compiler | Christoph Bumiller | |
2010-08-18 | nv50: emit predicate for interp | Christoph Bumiller | |
2010-08-17 | nv50: initialize edgeflag input index | Christoph Bumiller | |
2010-08-17 | nv50: check dst compatibility in CSE | Christoph Bumiller | |
2010-08-17 | nv50: fix PSIZ and PRIMID mapping | Christoph Bumiller | |
Initializing map to 0x40 (0x80) instead of 0 now, so need to clear it first. | |||
2010-08-17 | nv50: more TGSI opcodes (SIN, SCS, ARL, RET, KILP) | Christoph Bumiller | |
2010-08-17 | nv50: generate JOINs for outermost IF clauses | Christoph Bumiller | |
2010-08-17 | nv50: fix thinko in store to output reg possible check | Christoph Bumiller | |
2010-08-17 | nv50: flatten simple IF/ELSE/ENDIF constructs | Christoph Bumiller | |
Less branching means less instructions and less thread divergence. | |||
2010-08-15 | nv50: loops part 2 | Christoph Bumiller | |
At least the mesa demo glsl/mandelbrot should work now. | |||
2010-08-15 | nv50: more constant folding | Christoph Bumiller | |
2010-08-11 | auxiliary: fix u_split_prim naming convention | Luca Barbieri | |
Current practice is to start identifiers with "util_" instead of "u_". | |||
2010-08-11 | auxiliary: move Ben Skeggs' primitive splitter to common code | Luca Barbieri | |
This is a simple framework that handles splitting primitives in an abstract way. The user has to specify the primitive start, start index and count. Then, it can ask the primitive splitter to "draw" a chunk of the primitive, staying under a given vertex/index budget. The primitive splitter will then call user-supplied functions to emit a range of vertices/indices, as well as switch the edgeflag on or off. This is particularly useful for hardware that either has limits on the vertex count field, or where vertices are pushed on a FIFO or temporary buffer of limited size. Note that unlike other splitters, it does not manipulate data in any way, and merely asks a callback to do so, in vertex intervals. | |||
2010-08-10 | nv50: begin implementing loops | Christoph Bumiller | |
2010-08-10 | nv50: fix reg count | Christoph Bumiller | |
2010-08-05 | nv50: build proper phi functions in the first place | Christoph Bumiller | |
2010-08-05 | nv50: fix constbuf validation | Christoph Bumiller | |
We only uploaded up to the highest offset a program would use, and if the constant buffer isn't changed when a new program is used, the new program is missing the rest of them. Might want to introduce a "fill state" for user mem constbufs. | |||
2010-08-05 | nv50: don't eliminate loads to dedicated values | Christoph Bumiller | |
2010-07-31 | nv50: fixes for nested IFs | Christoph Bumiller | |