summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/tgsi/tgsi_ureg.c
AgeCommit message (Collapse)Author
2010-02-09tgsi: Add ureg_DECL_fs_input_cyl().Michal Krol
Allows one to declare fragment shader inputs with cylindrical wrap info.
2010-02-03Merge branch 'gallium-embedded'José Fonseca
2010-02-02gallium: Make pipe_atomic a regular int32_t.José Fonseca
2010-02-02tgsi: ureg_DECL_gs_input() accepts shader semantics.Michal Krol
2010-01-29tgsi: add properties for fragment coord conventions (v3)Luca Barbieri
Changes in v3: - Documented the new properties - Added comments for property values - Rebased to current master Changes in v2: - Caps are added in a separate, subsequent patch This adds two TGSI fragment program properties that indicate the fragment coord conventions. The properties behave as described in the extension spec for GL_ARB_fragment_coord_conventions, but the default origin in upper left instead of lower left as in OpenGL. The syntax is: PROPERTY FS_COORD_ORIGIN [UPPER_LEFT|LOWER_LEFT] PROPERTY FS_COORD_PIXEL_CENTER [HALF_INTEGER|INTEGER] The names have been chosen for consistency with the GS properties and the OpenGL extension spec. The defaults are of course the previously assumed conventions: UPPER_LEFT and HALF_INTEGER.
2010-01-28tgsi: Constants declared with ureg_DECL_constant() are one-dimensional.Michal Krol
This is to maintain backward compatibility with drivers that don't support arrays of constant buffers.
2010-01-28tgsi: Add ureg_property_gs_output_prim/max_vertices().Michal Krol
2010-01-28gallium: Rename PIPE_MAX_CONSTANT to PIPE_MAX_CONSTANT_BUFFERS.Michal Krol
2010-01-28tgsi: Handle 2-D declarations.Michal Krol
2010-01-28tgsi: Silence uninitialized variable warning.Vinson Lee
2010-01-18tgsi: Allow TEMPORARY registers as indirect address into source operands.Michal Krol
2010-01-18tgsi: Add ureg_DECL_immediate_block_uint().Michal Krol
Allows declaring a contiguous block of immediates. Useful for relative indexing.
2010-01-15tgsi: Add ureg_property_gs_input_prim().Michal Krol
2010-01-15tgsi: Add ureg_src_dimension().Michal Krol
2010-01-05Merge branch 'master' into instanced-arraysMichal Krol
Conflicts: src/gallium/auxiliary/tgsi/tgsi_dump.c src/gallium/include/pipe/p_shader_tokens.h
2010-01-05tgsi/ureg: Improve immediate match & expand logic.Michal Krol
Do not pollute immediates with unsuccessfull attempts to expand them.
2010-01-05tgsi: Support signed/unsigned integer immediate types.Michal Krol
2009-12-31Merge branch 'mesa_7_7_branch'Brian Paul
Conflicts: configs/darwin src/gallium/auxiliary/util/u_clear.h src/gallium/state_trackers/xorg/xorg_exa_tgsi.c src/mesa/drivers/dri/i965/brw_draw_upload.c
2009-12-30tgsi: Support system values in ureg.Michal Krol
2009-12-27tgsi/ureg: Silence uninitialized variable warnings.Vinson Lee
2009-12-14tgsi/ureg: Add ureg_DECL_gs_input().Michal Krol
Allows one to declare GS input registers.
2009-12-08tgsi: fix some off-by-one errors in shader length, instruction lengthBrian Paul
The ureg and/or tgsi-simplification work introduced some inconsistencies between the ureg and traditional TGSI construction code. Now the tgsi_instruction::NrTokens field is consistant and the tgsi_header::BodySize field isn't off by one. Fixes bug 25455.
2009-12-03tgsi/ureg: Fix ureg_emit_src().Michal Krol
2009-12-01tgsi: fix ureg emit after version token changeKeith Whitwell
2009-12-01Merge commit 'origin/tgsi-simplify-ext'Keith Whitwell
Conflicts: src/gallium/drivers/r300/r300_vs.c
2009-11-27tgsi: Remove tgsi_version token.Michal Krol
2009-11-26tgsi/ureg: Add forgotten goto in ureg_DECL_constant().Michal Krol
2009-11-24tgsi: reduce repetition of structure name in its membersKeith Whitwell
Rename Semantic.SemanticName to Semantic.Name. Similar for SemanticIndex, and the members of the tgsi_version struct.
2009-11-24gallium: simplify tgsi tokens furtherKeith Whitwell
Drop anonymous 'Extended' fields, have every optional token named explicitly in its parent. Eg. there is now an Instruction.Label flag, etc. Drop destination modifiers and other functionality which cannot be generated by tgsi_ureg.c, which is now the primary way of creating shaders. Pull source modifiers into the source register token, drop the second negate flag. The source register token is now full - if we need to expand it, probably best to move all of the modifiers to a new token and have a single flag for it.
2009-11-24tgsi: Add ureg_DECL_loop().Michal Krol
2009-11-24tgsi: Account for gallium shader token representation changes.Michal Krol
2009-11-10tgsi/ureg: Simplify logic in tokens_expand().Michal Krol
2009-11-04tgsi/ureg: Allow for multiple extended instruction tokens.Michal Krol
For example, we would like to have a predicate and texture token in one instruction to do predicated texture sampling.
2009-11-02tgsi/ureg: Add negate and swizzle for predicates.Michal Krol
2009-11-02tgsi/ureg: Update for gallium interface changes.Michal Krol
2009-10-23gallium: remove extended negate also, and also the ExtSwz tokenKeith Whitwell
Likewise, the extended negate functionality hasn't been used since mesa switched to using tgsi_ureg to build programs, and has been translating the SWZ opcode internally to a single MAD.
2009-09-12tgsi: add missing implementation of constant decl changeKeith Whitwell
2009-09-12ureg: add a mechanism to get the built tokens rather than a full shaderKeith Whitwell
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.
2009-09-12ureg: add generic emitters for tex and branch instructionsKeith Whitwell
Couldn't previously emit these except by calling the opcode-specific helper.
2009-09-12tgsi/ureg: give ureg_DECL_constant an explicit index parameterKeith Whitwell
Avoid the need to emit all constant declarations in order. Makes referring to a specific constant in the constant buffer much easier.
2009-09-12tgsi/ureg: VS inputs don't have any semantic tags, just an indexKeith Whitwell
Fix ureg_DECL_vs_input to reflect this and fix up all callers.
2009-09-12tgsi: free tokens on errorKeith Whitwell
2009-09-12tgsi: sanity check ureg programsKeith Whitwell
2009-09-03aux/tgsi: pull back ureg work from 0.1 branchKeith Whitwell
Manual merge of ureg changes on the branch. Too much unrelated stuff for a proper merge.
2009-08-24tgsi: Only free temp uregs.José Fonseca
Shorthand. (cherry picked from commit de911220bbbe74cff0c79b260456ff36122b7b5b)
2009-08-24tgsi: Pass pipe_context as a parameter to ureg_create_shader.José Fonseca
Simplifies migration to tgsi_ureg. (cherry picked from commit f574398c07c41cb8d31249a7186fc178ef7d552a)
2009-08-24tgsi: add generic instruction builderKeith Whitwell
When translating an incoming shader (rather than building one from scratch) it's preferable to be able to call a single, generic instruction emitter rather than figuring out which of the opcode-specific functions to call.
2009-08-19tgsi: Add missing include.José Fonseca
(cherry picked from commit d2787c02c130b1fe20d0c032d468622f2fdaef79)
2009-08-19tgsi: Fix typo in ureg constant creation.José Fonseca
(cherry picked from commit aa40c9abc7787fdf46cb661a4d0bb8bec513fc63)
2009-08-19tgsi: silence compiler warningKeith Whitwell