8ff8c91893cee8b1893de91e145c8496a12ab9ca |
|
26-Oct-2012 |
Marek Olšák <maraeo@gmail.com> |
mesa: bump MAX_VARYING to 32 We're starting to get apps utilizing more than 16 varyings and most current hardware supports 32 anyway. Tested with r600g. swrast, softpipe and llvmpipe still advertise 16 varyings. This fixes a WebGL crash after launching this demo: https://developer.mozilla.org/en-US/demos/detail/falling-cubes Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54402 NOTE: This is a candidate for the stable branches. Acked-by: Kenneth Graunke <kenneth@whitecape.org> (cherry picked from commit b3921e1f53833420e0a0fd581f741744e7957a05) Conflicts: src/mesa/main/context.c
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
f5c41e16d7b09e7c342bff8ec5888db88c071be3 |
|
29-Jun-2012 |
José Fonseca <jfonseca@vmware.com> |
gallium/tgsi: Don't declare temps individually when they are all similar. tgsi_ureg was recently enhanced to support local temporaries, and as result temps are declared individually. This change avoids many TEMP register declarations on common shaders. (And fixes performance regression due to mismatches against performance sensitive shaders.) Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
b52e374ad3b568fc1eb35df80e90a39b4cb99289 |
|
26-Mar-2012 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi/ureg: Support local temporary emission.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
1b8aecc797b72a84c4a571639e952fe1f84e0fa5 |
|
08-Dec-2011 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi/ureg: Lift the restriction on releasing temporaries over UREG_MAX_TEMP.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
1279923d72942ee201fcc6ad40d552143f651f03 |
|
30-Apr-2012 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi: Move interpolation info from tgsi_declaration to a separate token. Move Interpolate, Centroid and CylindricalWrap from tgsi_declaration to a separate token -- they only make sense for FS inputs and we need room for other flags in the top-level declaration token.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
a5f44cc8c2ce0916809ce5da5a2490ad000ef099 |
|
01-May-2012 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi: Split sampler views from shader resources. This commit splits the current concept of resource into "sampler views" and "shader resources": "Sampler views" are textures or buffers that are bound to a given shader stage and can be read from in conjunction with a sampler object. They are analogous to OpenGL texture objects or Direct3D SRVs. "Shader resources" are textures or buffers that can be read and written from a shader. There's no support for floating point coordinates, address wrap modes or filtering, and, unlike sampler views, shader resources are global for the whole graphics pipeline. They are analogous to OpenGL image objects (as in ARB_shader_image_load_store) or Direct3D UAVs. Most hardware is likely to implement shader resources and sampler views as separate objects, so, having the distinction at the API level simplifies things slightly for the driver. This patch introduces the SVIEW register file with a declaration token and syntax analogous to the already existing RES register file. After this change, the SAMPLE_* opcodes no longer accept a resource as input, but rather a SVIEW object. To preserve the functionality of reading from a sampler view with integer coordinates, the SAMPLE_I(_MS) opcodes are introduced which are similar to LOAD(_MS) but take a SVIEW register instead of a RES register as argument.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
6951870e5790a4b563bfa3b943ed338f9c5922ac |
|
02-Jan-2012 |
Bryan Cain <bryancain3@gmail.com> |
gallium: add support for clip distances
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
8a9a37cebeff19b56afed43ae037d00950fa7594 |
|
09-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: utility helper functions for stream output
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
861a029ddb31e91bb4d8e18ab708d0d172f63aad |
|
15-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: interface changes necessary to implement transform feedback (v5) Namely: - EXT_transform_feedback - ARB_transform_feedback2 - ARB_transform_feedback_instanced The old interface was not useful for OpenGL and had to be reworked. This interface was originally designed for OpenGL, but additional changes have been made in order to make st/d3d1x support easier. The most notable change is the stream-out info must be linked with a vertex or geometry shader and cannot be set independently. This is due to limitations of existing hardware (special shader instructions must be used to write into stream-out buffers), and it's also how OpenGL works (stream outputs must be specified prior to linking shaders). Other than that, each stream output buffer has a "view" into it that internally maintains the number of bytes which have been written into it. (one buffer can be bound in several different transform feedback objects in OpenGL, so we must be able to have several views around) The set_stream_output_targets function contains a parameter saying whether new data should be appended or not. Also, the view can optionally be used to provide the vertex count for draw_vbo. Note that the count is supposed to be stored in device memory and the CPU never gets to know its value. OpenGL way | Gallium way ------------------------------------ BeginTF = set_so_targets(append_bitmask = 0) PauseTF = set_so_targets(num_targets = 0) ResumeTF = set_so_targets(append_bitmask = ~0) EndTF = set_so_targets(num_targets = 0) DrawTF = use pipe_draw_info::count_from_stream_output v2: * removed the reset_stream_output_targets function * added a parameter append_bitmask to set_stream_output_targets, each bit specifies whether new data should be appended to each buffer or not. v3: * added PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME for ARB_tfb2, note that the draw-auto subset is always required (for d3d10), only the pause/resume functionality is limited if the CAP is not advertised v4: * update gallium/docs v5: * compactified struct pipe_stream_output_info, updated dump/trace
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
06f217d80f3d1318da4974bf7b31ea7edcf5eb0b |
|
18-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: implement ARB_conservative_depth This adds a new TGSI property to represent the GLSL layout qualifier in TGSI.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
40864b85aa70b6bc523dbb9792449e6a3dfac4b2 |
|
15-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
gallium: add PIPE_SHADER_CAP_OUTPUT_READ It's intended to indicate whether the driver/hardware supports reading of the values written into shader outputs. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
2083a276eb270b748d1c2668eb9faa5aadc8e700 |
|
26-Aug-2011 |
Dave Airlie <airlied@redhat.com> |
tgsi: add support for texture offsets to the TGSI IR. (v2) This adds tokens for texture offsets, to store 4 * swizzled vec 3 for use in TXF and other opcodes. It also contains TGSI exec changes for softpipe to use this code, along with GLSL->TGSI support for TXF. v2: add some more comments, add back padding I removed. Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ff038170ff9042c0ee535be7c2837d200e06b0c0 |
|
29-May-2011 |
Marek Olšák <maraeo@gmail.com> |
tgsi/ureg: bump the limit of immediates Lowered indirect addressing can create lots of immediates. Fixes piglit/glsl-fs-uniform-array-7 on r300g. NOTE: This is a candidate for the 7.10 branch. Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
bdbe77f9c6f06cfaa155f27c2ade3c523d7fbea7 |
|
24-Jan-2011 |
Zack Rusin <zackr@vmware.com> |
gallium: implement modern sampling scheme largely a merge of the previously discussed origin/gallium-resource-sampling but updated. the idea is to allow arbitrary binding of resources, the way opencl, new gl versions and dx10+ require, i.e. DCL RES[0], 2D, FLOAT LOAD DST[0], SRC[0], RES[0] SAMPLE DST[0], SRC[0], RES[0], SAMP[0]
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
c9c8a5ed02408495b3132cabd7947cc352a117a2 |
|
18-Dec-2010 |
Dave Airlie <airlied@redhat.com> |
gallium: add fragment shader property for color writes to all buffers. (v2) For GL fragColor semantics we need to tell the pipe drivers that the fragment shader color result is to be replicated to all bound color buffers, this adds the basic TGSI + documentation. v2: fix missing comma pointed out by Tilman on mesa-dev. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ff531c5b05cb4c078b42c6b14e707646d3d158c9 |
|
27-Sep-2010 |
Luca Barbieri <luca@luca-barbieri.com> |
ureg: support centroid interpolation
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
23969670387bc0bb7d0761936905e5eb4df963dc |
|
11-Jun-2010 |
Zack Rusin <zack@kde.org> |
tgsi: support 2d indirect addressing
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
d4ef0f6c67aefe06d8dd647acf8d9005df39a709 |
|
09-Jun-2010 |
Zack Rusin <zack@kde.org> |
geometry shaders: make gs work with changable primitives and variable number of vertices lots and lots of fixes for geometry shaders. in particular now we work when the gs emits a different primitive than the one the pipeline was started with and also we work when gs emits more vertices than would fit in the original buffer.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
edbc302ad678e1a4a8803ba0e827a13dd27105d2 |
|
11-May-2010 |
José Fonseca <jfonseca@vmware.com> |
mesa/st+tgsi: Provide a free callback to match with ureg_get_tokens(). This fixes crashes with the memory debugging routines on Windows. NOTE: This is a candidate for the 7.8 stable branch
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
d288698a76e2ad8408d303570578856a05ea96d0 |
|
03-May-2010 |
José Fonseca <jfonseca@vmware.com> |
gallium: Remove loop register file. It was only used for D3D's REP/END/BGNFOR/ENDFOR. D3D's aL register is just like another address register now.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
1673bb38bbc4b05f823abecbfaae06e9ce52eb9b |
|
18-Apr-2010 |
Brian Paul <brianp@vmware.com> |
tgsi: replace 0xf with TGSI_WRITEMASK_XYZW
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
33a9fb35dd4c74945840ce1e1b496c43ecfc92de |
|
03-Feb-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_DECL_fs_input_cyl(). Allows one to declare fragment shader inputs with cylindrical wrap info.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
45dac0d82a5a69166e86dce77c2550f7512c541e |
|
03-Feb-2010 |
José Fonseca <jfonseca@vmware.com> |
Merge branch 'gallium-embedded'
|
38f6f23fcf37247fd709d1c612d08bfa9b124e69 |
|
02-Feb-2010 |
José Fonseca <jfonseca@vmware.com> |
gallium: Make pipe_atomic a regular int32_t.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ad83f3bf0a633d5d7360c849010f01063afc1702 |
|
02-Feb-2010 |
Michal Krol <michal@vmware.com> |
tgsi: ureg_DECL_gs_input() accepts shader semantics.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
73317139a4f78126af0dc4ddaef8206352740727 |
|
21-Jan-2010 |
Luca Barbieri <luca@luca-barbieri.com> |
tgsi: add properties for fragment coord conventions (v3) 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
9e895831bcb35b0a14f68538376b15ae4e94ae0d |
|
27-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Constants declared with ureg_DECL_constant() are one-dimensional. This is to maintain backward compatibility with drivers that don't support arrays of constant buffers.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
3ba2ab3a23099f00366bdbec09f18612bfa71225 |
|
27-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_property_gs_output_prim/max_vertices().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
7c5f255201f42303188137f56ea8acc030444f0e |
|
25-Jan-2010 |
Michal Krol <michal@vmware.com> |
gallium: Rename PIPE_MAX_CONSTANT to PIPE_MAX_CONSTANT_BUFFERS.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
4367de152cc5bd7240d75a33e75c1b1671b5cc16 |
|
19-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Handle 2-D declarations.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
5dcc088bf16c8c4659e5e7c272ab226f0ed95d75 |
|
28-Jan-2010 |
Vinson Lee <vlee@vmware.com> |
tgsi: Silence uninitialized variable warning.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
463351ea6c953c3db7f135ba97160a212562daef |
|
18-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Allow TEMPORARY registers as indirect address into source operands.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
4698a865e076998107c188b39db039bdcbaac3a9 |
|
18-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_DECL_immediate_block_uint(). Allows declaring a contiguous block of immediates. Useful for relative indexing.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
42d55953b19db8916a677abc606b8d0a923efb5d |
|
15-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_property_gs_input_prim().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
181adca5d6f03390dcfed567be6dfd9e14eb94a7 |
|
15-Jan-2010 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_src_dimension().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
9b21b3c52a8a7d58d08151d1a6bf25c472dec213 |
|
05-Jan-2010 |
Michal Krol <michal@vmware.com> |
Merge branch 'master' into instanced-arrays Conflicts: src/gallium/auxiliary/tgsi/tgsi_dump.c src/gallium/include/pipe/p_shader_tokens.h
|
08a3efee10034d9bd8809eb6707a372b81ea3957 |
|
23-Dec-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Improve immediate match & expand logic. Do not pollute immediates with unsuccessfull attempts to expand them.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ff56a12051a91c5c69db9afb85e4a3ebdb17ef96 |
|
23-Dec-2009 |
Michal Krol <michal@vmware.com> |
tgsi: Support signed/unsigned integer immediate types.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
25024d948298a9f3f3210a0b91486f79a3917b0f |
|
31-Dec-2009 |
Brian Paul <brianp@vmware.com> |
Merge branch 'mesa_7_7_branch' 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
|
5754185d39c147cd81b97fd331ccf78aebfad5e7 |
|
30-Dec-2009 |
Michal Krol <michal@vmware.com> |
tgsi: Support system values in ureg.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
0463ee64e39951257d0bb7c5a9b6c894fe761dd1 |
|
28-Dec-2009 |
Vinson Lee <vlee@vmware.com> |
tgsi/ureg: Silence uninitialized variable warnings.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
c14be63c5647e4406a0a4d80570a4def593b551b |
|
14-Dec-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Add ureg_DECL_gs_input(). Allows one to declare GS input registers.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
bc7567d9665924650c43c661d07ae9a922554bee |
|
07-Dec-2009 |
Brian Paul <brianp@vmware.com> |
tgsi: fix some off-by-one errors in shader length, instruction length 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
cdb6849fc1fa0c6e360c89a6388dc8bf19a746ca |
|
03-Dec-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Fix ureg_emit_src().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
574715d8368f99c0a5720a9676385d58d6cfdf30 |
|
01-Dec-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: fix ureg emit after version token change
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
87eec80c1120d2cd9749ee360b77922feabf7f10 |
|
01-Dec-2009 |
Keith Whitwell <keithw@vmware.com> |
Merge commit 'origin/tgsi-simplify-ext' Conflicts: src/gallium/drivers/r300/r300_vs.c
|
e6133564bf2e65fc86f626a45d7977bdeaff8579 |
|
27-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi: Remove tgsi_version token.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
75df599e30bda03b40c0442eff3e39ec84397ede |
|
26-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Add forgotten goto in ureg_DECL_constant().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
763426a0256f0ab06f8af53947bd630f8600183a |
|
24-Nov-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: reduce repetition of structure name in its members Rename Semantic.SemanticName to Semantic.Name. Similar for SemanticIndex, and the members of the tgsi_version struct.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ba1ca28cc62fed71c77902b95ae4ed36c6bf25f8 |
|
24-Nov-2009 |
Keith Whitwell <keithw@vmware.com> |
gallium: simplify tgsi tokens further 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
59a70c364df03c34abc72bca2cdca8fae12d8f68 |
|
24-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi: Add ureg_DECL_loop().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
5ee0d9f632383339088cc33005b7794b0915d4e0 |
|
24-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi: Account for gallium shader token representation changes.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
e44c77028c2964891943e4235e44d93c559de088 |
|
10-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Simplify logic in tokens_expand().
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
767bc8eb5a0bbaf9fde9d760e8460d34c51d2991 |
|
04-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Allow for multiple extended instruction tokens. For example, we would like to have a predicate and texture token in one instruction to do predicated texture sampling.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
c379fbbe244bf6778c5bd66c1f2118f83b08f90d |
|
02-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Add negate and swizzle for predicates.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
962ece954068646f8e2c0e9ea81395ab7eaf5ee8 |
|
02-Nov-2009 |
Michal Krol <michal@vmware.com> |
tgsi/ureg: Update for gallium interface changes.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
da253319f9e5d37d9c55b975ef9328545a3ac9b4 |
|
23-Oct-2009 |
Keith Whitwell <keithw@vmware.com> |
gallium: remove extended negate also, and also the ExtSwz token 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
055fe5768c6e455b3466be47e1771711c495f1c6 |
|
13-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: add missing implementation of constant decl change
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
11f41f54cf4ce1cdc19c4b5c45ed8d2083d96831 |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
ureg: add a mechanism to get the built tokens rather than a full shader 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
c23894295b593b9a8561e9775199e1c78ea4435d |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
ureg: add generic emitters for tex and branch instructions Couldn't previously emit these except by calling the opcode-specific helper.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
ae4704eabc237e13c9b06df9c44f31c9baca6208 |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi/ureg: give ureg_DECL_constant an explicit index parameter Avoid the need to emit all constant declarations in order. Makes referring to a specific constant in the constant buffer much easier.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
6d8dbd3d1ec888300fb0e9ac3cf61808ba8ecc2b |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi/ureg: VS inputs don't have any semantic tags, just an index Fix ureg_DECL_vs_input to reflect this and fix up all callers.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
149945c432115ef27788216063dd453624caa9e9 |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: free tokens on error
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
e90fb86ac3f3a000c91d2cd9fab2bf27d4ede0e7 |
|
12-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: sanity check ureg programs
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
848ab8be8c34b00b2afe6120882f8c29f047ced5 |
|
03-Sep-2009 |
Keith Whitwell <keithw@vmware.com> |
aux/tgsi: pull back ureg work from 0.1 branch Manual merge of ureg changes on the branch. Too much unrelated stuff for a proper merge.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
02c523dfbb1b6854eeab9619afe4efbd59a5c8fc |
|
24-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
tgsi: Only free temp uregs. Shorthand. (cherry picked from commit de911220bbbe74cff0c79b260456ff36122b7b5b)
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
acc7da90356a96efb93bb3a6a53e0b5f67ce993a |
|
24-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
tgsi: Pass pipe_context as a parameter to ureg_create_shader. Simplifies migration to tgsi_ureg. (cherry picked from commit f574398c07c41cb8d31249a7186fc178ef7d552a)
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
b570a7e6b6ebd05e94fd91f2df53de7d2e2e05d2 |
|
24-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: add generic instruction builder 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.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
c69d9296fbf02ed2a50e37456a733bef885995ca |
|
17-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
tgsi: Add missing include. (cherry picked from commit d2787c02c130b1fe20d0c032d468622f2fdaef79)
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
b2f3f7dd12eeab31c7edbc7c5ff52230bc8c4296 |
|
18-Aug-2009 |
José Fonseca <jfonseca@vmware.com> |
tgsi: Fix typo in ureg constant creation. (cherry picked from commit aa40c9abc7787fdf46cb661a4d0bb8bec513fc63)
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
65079afcde1be96d980b56e86bdd023d8e5a338b |
|
19-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: silence compiler warning
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
7dc55275922aa52f281b7d8d4a5d776a3799b762 |
|
19-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: remove unused function argument
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
265e210edb2fdf0f6ae777635676f05613b38eb7 |
|
19-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: add missing functionality to support instructions with labels Could previously emit opcodes with label arguments, but was no way to patch them with the actual destinations of those labels. Adds two functions: ureg_get_instruction_number - to get the id of the next instruction to be emitted ureg_fixup_label - to patch an emitted label to point to a given instruction number. Need some more complex examples than u_simple_shader, so far this has only been compile-tested.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
f2fcd5822a0b308e8b9410061996377c0b4a0a91 |
|
13-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: add simple facility for releasing and reusing temporaries
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
78918c876054fc428e6f78c02526c0323d134a6c |
|
13-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: turn off debugging
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
749e52049dee6717023309f6446efb2c89ed720c |
|
13-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: use REALLOC for growing token pool
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|
8a7d1e7b7681a4f0be9cee9e62477317dcd09caf |
|
13-Aug-2009 |
Keith Whitwell <keithw@vmware.com> |
tgsi: add tgsi_ureg, a simplified tgsi shader builder This is modelled on the nice & easy-to-use facilities we had for building shaders in mesa, eg. in texenvprogram.c and friends. Key points include pass-by-value register structs that can be manipulated in a functional style, eg: negate(swizzle(reg, X,X,X,X)) and per-opcode instruction functions, eg: emit_MOV( p, writemask(dst, 0x1), negate(src)); and similar. Additionally, the interface allows mixed emit of instructions and decls, which are sorted out internally to obey TGSI ordering. Immediates may be emitted at any time and are scanned against existing immediates to try and reduce redundancy. Not all TGSI functionality is accessible through this interface, but most or all of what mesa uses should be.
/external/mesa3d/src/gallium/auxiliary/tgsi/tgsi_ureg.c
|