09d09b219e34a4f6a7847ac7a4bcd516b357d849 |
|
19-Dec-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Remove all usage of ureg_SUB in nine_shader This is required to drop gallium SUB. Signed-off-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
caf93f531182eed09d81461b9ade1b02dd3f6c3d |
|
19-Dec-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Do not map SUB and ABS to their gallium equivalent. This is required for gallium SUB and ABS to be removed. Signed-off-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
f5f881fd3eac79fc2dad865bc1387bfcee40e352 |
|
01-Nov-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Change the way nine_shader gets the pipe The change is required with csmt, where depending on the thread you don't access the pipe the same way. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
c7237e2c5c9935d80f04f2793bde9489ca6bda9d |
|
28-Oct-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Access pipe_context via NineDevice9_GetPipe Except for nine_ff and nine_state. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
2cd8622fb33b72671feae3918850e7cc885aa030 |
|
18-Nov-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Do not generate gallium NOP on d3d NOP Some drivers crash if NOP is generated. Besides there is no point to generate NOP. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
98b8ad61c6bc531646bec1e773b0f57f99e47159 |
|
12-Oct-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Remove useless code in nine_shader Since 1604efa6fda9b780e8537a131ad77f3e83e5a67a, lconsti and lconstb don't need to be initialized. Remove some leftovers from the previous code (which has now invalid use of ARRAY_SIZE on a pointer instead of an array). Reported by Coverity. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
d2fd2966483dda23911dc89fdf9dbff02a87df6a |
|
30-Sep-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix the calculation of the number of vs inputs Fixes hangs on radeonsi, and assert on llvmpipe. Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "12.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
b9639c661fb6b52c8abb96c06263f85ca4bd78c1 |
|
19-Sep-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Initial ProcessVertices support For now only VS 3 support is implemented. This enables The Sims 2 to work. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
3bf02d383fe94a69dfec3ff54ede3e3b2e9dff6b |
|
17-Sep-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Partial software vertex processing support Software Vertex Processing allows: . Less limitations for shaders (more loops, etc) . Less limitations for ff (more enabled lights, 255 matrices for VertexBlend) In particular shaders can get more constants. This patch implements support for this (not using software rendering, but hardware rendering, as llvmpipe and dx10+ hw have the same limits...) This is considered a second class path. Even apps asking for "Mixed Vertex processing" (ie the ability to switch to swvp on demand) do not use the feature much. Some just initialize more constants than the normal limit at the start of the application, but never use more than the normal limit. When the apps do not need the software vertex processing features, they do not seem to turn it on. This means it is ok if that path is slow. Thus no care has been made to make the path optimized. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
1604efa6fda9b780e8537a131ad77f3e83e5a67a |
|
17-Sep-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Add support for swvp constants in shaders swvp has relaxed limits (more nested loops, etc). In particular it enables more constants. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
03f60a335767957dca451ff013a170557e0244b6 |
|
12-Jun-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement relative addressing for ps inputs To implement the feature we copy the ps inputs to a temp array. This is not optimal for performance, but it is the simplest solution. This is a feature that is very very rarely used. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
b0acebd41f45fba7914f3f7d77700be8029c8fcc |
|
30-Aug-2016 |
Eric Engestrom <eric.engestrom@imgtec.com> |
st/nine: fix unreachable() typo Signed-off-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
4e89dcf0c4ad543e5404d28b1f949387d63f59ee |
|
19-Mar-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Add asserts for output/input packing Nine doesn't support vs output/ps input packing. We haven't found any application requiring that, and implementing it properly is complex. Add asserts for now. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
ca7c78a88ecc828a1b08dc18667d2a70d9d0e09d |
|
12-Mar-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix output shift calculation We were getting it wrong for negative values. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
89344a80fc4479fa3ac466cb17706cf12070afe1 |
|
06-Mar-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix Pointsize in programmable shader Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
d11d913987acdec3e9ced0fcc0b77a574ab90931 |
|
09-Feb-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: PositionT and Tessfactor are forbidden as PS input According to wine tests, they are forbidden as PS input, which makes sense. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
44068af92e7500a63425905fc7a3a6a0db5c665a |
|
09-Feb-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix some shader failures not triggering error Some failures during shader translation would not raise errors before this patch. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
a77d8cd710ec5091e9c31167032427189ae77437 |
|
21-Feb-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Forbid POSITION0 for PS3.0 POSITION0 input is forbidden for PS3.0 apparently. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
47b390fe45e5e6f982c60b58985892438959cd8e |
|
17-May-2016 |
Jan Vesely <jano.vesely@gmail.com> |
Treewide: Remove Elements() macro Signed-off-by: Jan Vesely <jano.vesely@gmail.com> Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
c9e5a7df61d92aa5525dcc825bc3c6cb3a60f96b |
|
16-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
gallium: remove helpers converting to/from TGSI_PROCESSOR_* Acked-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
af249a7da9bf2621ab836d5074ef692677b11bbf |
|
16-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
gallium: use PIPE_SHADER_* everywhere, remove TGSI_PROCESSOR_* Acked-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
8a8affdfdace486f4e416e66e2dd0ed122505a90 |
|
21-Feb-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Use Position input helper for ps3 declared inputs When the semantic is Position (which can happen with index 0 only), use the helper to get Position input. Cc: "11.2" <mesa-stable@lists.freedesktop.org> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
f08c990af53e91114257b19e5679e2dbbc277e45 |
|
21-Feb-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Introduce helper for Position shader input Cc: "11.2" <mesa-stable@lists.freedesktop.org> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
24ddadbba9ddfde579cc4cc65f58b063122b8d02 |
|
09-Jan-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Enforce centroid for color input when multisampling is on The color inputs must automatically use centroid whether multisampling is used or not. Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
d5389bb92d5dfa1676cf28a80392f0fcb0eb8dc8 |
|
28-Jan-2016 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix centroid flag sem.reg.mod & NINED3DSPDM_CENTROID is worth 4 when centroid is requested, whereas TGSI_INTERPOLATE_LOC_CENTROID is worth 1. Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
495727af6b6568e152703d8e3e518ee56ec64106 |
|
12-Dec-2015 |
Patrick Rudolph <siro@das-labor.org> |
st/nine: Fix shade mode flat Shade mode flat is only working if pixelshaders have interpolate set to TGSI_INTERPOLATE_COLOR on color inputs. Fixes failing WINE tests visual.c test_shademode(). Signed-off-by: Patrick Rudolph <siro@das-labor.org> Reviewed-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
aa4454ae85770c61adf8c0c0ed323a18e56bc126 |
|
11-Nov-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix rounding issue with vs1.1 a0 reg vs1.1 rounds a0 to lowest integer, while other versions do round to closest. To use the same path as the other versions (with ARR), we were substracting 0.5 for vs1.1 to get round to lowest. This gives wrong result if a0 is set to 0: round(0 - 0.5) = -1 Instead just use ARL for vs1.1 Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
dbb03f6b5be628e65e09cc822d71f9e6b962a070 |
|
17-Oct-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix D3DPMISCCAPS_FOGANDSPECULARALPHA support The documentation of the flag doesn't make sense. To sum up the doc, if not set, specular alpha contains fog, and if set specular alpha contains 0 (except for ff). However in practice when the flag is there, apps do use specular alpha as if it could be used normally, which makes much more sense than the doc. Signed-off-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: Patrick Rudolph <siro@das-labor.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
1e463d20ba38d0af409b7b9b825b31330f4b4f0b |
|
08-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
nine: allow fragment shader POSITION and FACE to be system values Reported-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
3cc205bbeb19d417b17be0f6200cb5cda9adca8a |
|
16-Aug-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Silent warning in sm1_declusage_to_tgsi release build was complaining Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
f5effeb8eaf16e39a2f561b4b277f3810a69fc88 |
|
14-May-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Better check shader constant limits Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
4a00e4cdc970582df338ebf880168a4ef4ec05d9 |
|
14-May-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Programmable ps D3DTTSS_PROJECTED support The implementation used Wine tests for conformance Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
8f39ffc11e8b6fdf7c940f9c1853a362a886977a |
|
12-May-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Finish Fog implementation Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
dd4802c8deedc0b2bad7d361c487761be31f2b56 |
|
08-May-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Begin programmable shader fog support Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
360ba5b74858b3854784e3d4678c242140088395 |
|
30-Jan-2015 |
Tiziano Bacocco <tizbac2@gmail.com> |
st/nine: Implement TEXBEM,TEXBEML and BEM Signed-off-by: Tiziano Bacocco <tizbac2@gmail.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
a2a1a5805fd617e7f3cc8be44dd79b50da07ebb9 |
|
21-Jul-2015 |
Ilia Mirkin <imirkin@alum.mit.edu> |
gallium: replace INLINE with inline Generated by running: git grep -l INLINE src/gallium/ | xargs sed -i 's/\bINLINE\b/inline/g' git grep -l INLINE src/mesa/state_tracker/ | xargs sed -i 's/\bINLINE\b/inline/g' git checkout src/gallium/state_trackers/clover/Doxyfile and manual edits to src/gallium/include/pipe/p_compiler.h src/gallium/README.portability to remove mentions of the inline define. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Acked-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
a015b3952f568ad3da1ddfe42ff7ce6568f52780 |
|
20-May-2015 |
Marek Olšák <marek.olsak@amd.com> |
tgsi/ureg: add support for output array declarations
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
918ca4031f670066f054cdebcfe68ad75c963ac6 |
|
10-May-2015 |
Marek Olšák <marek.olsak@amd.com> |
tgsi/ureg: add support for FS input array declarations
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
5beb411bf753da4c86082c505929bcc9629c666c |
|
16-Feb-2015 |
Xavier Bouchoux <xavierb@gmail.com> |
st/nine: Fix computation of const_used_size Was sometimes too large for PS. Reviewed-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Xavier Bouchoux <xavierb@gmail.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
716bef2643367d3696aa20ab7178cbe19bf78abc |
|
21-Mar-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix wrong assert in nine_shader The sampler src index was wrong for texldl and texldd Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
8d3e063e6851ca6c33c8bac1d8e9b9b344d27294 |
|
23-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Handle special LIT case Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
2d2286d17c78af95c4bb5f56ef1b58a09eef7260 |
|
08-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix use of D3DSP_NOSWIZZLE D3DSP_NOSWIZZLE already contains the shift. Detected with Clang. Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
1f3b7d40392c2a9e0b80c56e199c4c9ffd0c88a0 |
|
07-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Check for the correct number of constants. This removes unneeded hack for Anno 1404. This app is not checking the number of supporting constants, and rely on the shader compilation to fail if it puts too many constants. This patch also checks for the correct number of constants for ps. Note that we don't check the official limitations for old vs and ps versions. The restrictions were fixed, unlike for the number of vertex shader constants for later versions. Likely apps use the correct number, and it's not a problem for us if it wants use more. Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
d0aeb4422bcc9f2d257d046935243f7cdf9bc620 |
|
07-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Introduce failure handling for shader parsing. Instead of crashing on buggy shaders, we should return an error. This patch introduces this behaviour in the case of invalid constant access Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
6fcc2c887279e6c03b2e7df0f869bd05c99faf28 |
|
07-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Print warnings for r500 when shader is likely to go wrong r500 hasn't enough float constants for vs to fill all needs. Overlapping issues can happen with complex shaders. The fix would be to recompile shaders to include the integer and boolean constants, instead of reserving slots for them. Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
70a523818f08f97b6d51f156dca383cfcab8efab |
|
07-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Declare constants only up to the maximum needed. Previously 276 constants were declared everytime. This patch makes shaders declare constants up to the maximum constant needed and moves the moment we print the TGSI shader after the moment we declare the constants. This is needed for r500, since when indirect addressing is used, it cannot reduce the amount of constants needed, and that it is restricted to 256 constant slots. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
a249c7a161cdbb995b17195f1af88ed14f69f8b6 |
|
07-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Refactor how user constbufs sizes are calculated Count explicitly the slots for float, int and bool constants, and deduce the constbuf size in nine_shader. Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
9690bf33d7af835eb36d9e4c5928ac8483ffeeaa |
|
06-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Correct rules for relative adressing and constants. relative adressing for constants is possible only for vs float constants. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
bce94ce831492333dae1b85d4387c66fdbfabf57 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXREG2AR, TEXREG2GB and TEXREG2RGB Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
9e23b64c15927225042b8caf7fdc549194610051 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXDP3TEX Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
09eb1e901f4d8e8b18675eb92e5f43dcbd831501 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXDP3 Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
f19e699368405f5fe74efe7b483f032c1a2c69be |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXDEPTH Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
3676ab02fbf14708c4aab94480d841003f33fcc7 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXM3x3SPEC Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
2b9f079ae3ebd1dcd50d1816d7835ec62f3a7782 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXM3x2TEX Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
fdff111dc8ce95c554371ac5aaaf611aa497c0f8 |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: implement TEXM3x2DEPTH Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
7865210670a735f268044b0c388a4895bed1ea4c |
|
28-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix TEXM3x3 and implement TEXM3x3VSPEC The fix is that this line: "src[s] = tx->regs.vT[s];" is wrong if s doesn't start from 0. Instead access tx->regs.vT directly when needed. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
b1259544e365c67ab60f0c67b7e6de6537cca793 |
|
08-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fill missing dst and src number for some instructions. Not filling them correctly results in bad padding and later crash. Reviewed-by: David Heidelberg <david@ixit.cz> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
5399119fb1ea646880c5e8a54e4c7f789be4c574 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Implement TEXCOORD special behaviours texcoord for ps < 1_4 should clamp between 0 and 1 the values. texcrd (texcoord ps 1_4) does not clamp and can be used with two modifiers _dw and _dz that means the channels are divided by w or z. Implement those in shared code, since the same modifiers can be used for texld ps 1_4. v2: replace DIV by RCP + MUL v3: Remove an useless MOV Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
30704bbc6e56e27b0dac325165133e84351db884 |
|
26-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix CALLNZ implementation Nothing seems to indicates the negation modifier would be stored in the instruction flags instead of the source modifier. tx_src_param has already handled it if it is in the source modifier. In addition, when the card supports native integers, the boolean are stored in 32 bits int and are equal to 0 or 0xFFFFFFFF. Given 0xFFFFFFFF is NaN if it was a float, better use UIF than IF. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
018407b5d8ce894815f940480c52e9791beb9e97 |
|
24-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Clamp ps 1.X constants This is wine (and windows) behaviour. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
8bbc5e27810a005b8e0c89ab1016a5ba6cff73d2 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Remove duplicated code for ps texcoord input declaration Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
3ca67f881040b4f3ecdf9b91a7f3f0bf51cf1544 |
|
25-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix CND implementation Signed-off-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Tiziano Bacocco <tizbac2@gmail.com> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
dd055176cc3ef716c5ad10459a0d0073f2b8da71 |
|
02-Jan-2015 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Match REP implementation to LOOP Previous implementation was behaving fine, but improve it by: . Improved documentation . Decreasing counter (comparing to 0 is likely to be faster than to constant) . Move the counter update at the end for better performance for shaders that break the loop earlier than when the count is done. Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
6a8e5e48be0bad4606b2d5d7ba736a3d2a277c55 |
|
08-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Rewrite LOOP implementation, and a0 aL handling Previous implementation didn't work well with nested loops. Instead of using several address registers, put a0 and aL into normal registers, and copy them to one address register when we need to use them. Wine tests loop_index_test() and nested_loop_test() now pass correctly. Fixes r600g crash while loading Bioshock - bug https://bugs.freedesktop.org/show_bug.cgi?id=85696 Tested-by: David Heidelberg <david@ixit.cz> Reviewed-by: Tiziano Bacocco <tizbac2@gmail.com> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
c9aa9a0addee01201d28a7bed10f7e320af591a1 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Correct LOG on negative values We should take the absolute value of the input. Also return -FLT_MAX instead of -Inf for an input of 0. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
f5e8e3fb806ef8516a7bd5fabdce4cc24e4c9636 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Handle NRM with input of null norm When the input's xyz are 0.0, the output should be 0.0. This is due to the fact that Inf * 0 = 0 for dx9. To handle this case, cap the result of RSQ to FLT_MAX. We have FLT_MAX * 0 = 0. Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
2487f7357449ee520a59f6d81506d297aca752f2 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Handle RSQ special cases We should use the absolute value of the input as input to ureg_RSQ. Moreover, an input of 0.0 should return FLT_MAX. Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
c12f8c208882a7e9aac0c488c08ee1771ead5a0d |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix POW implementation POW doesn't match directly TGSI, since we should take the absolute value of src0. Fixes black textures in some games Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
e0dd9ca9854b27104176d961d5c8b37b1e0637e5 |
|
26-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix typo for M4x4 Cc: "10.4" <mesa-stable@lists.freedesktop.org> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
53dc992f204678acb9af9d1b11c1be371400930c |
|
26-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Correctly declare NineTranslateInstruction_Mkxn inputs Let's say we have c1 and c2 declared in the shader and c0 given by the app Then here we would have read c0, c1 and c2 given by the app, instead of the correct c0, c1, c2. This correction fixes several issues in some games. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
9fb58a74a04df02904317acfbd383f53305eed67 |
|
03-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Saturate oFog and oPts vs outputs According to docs and Wine, these two vs outputs have to be saturated. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
a21483818110a1b474ea140f7e279f5960be7f30 |
|
22-Dec-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Remove some shader unused code Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
dc8898918900a584b1783c99e77b6310f3834f11 |
|
17-Dec-2014 |
Xavier Bouchoux <xavierb@gmail.com> |
st/nine: Fix D3DRS_POINTSPRITE support It's done by testing the existence of the point sprite output register *after* parsing the vertex shader. Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: David Heidelberg <david@ixit.cz> Reviewed-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: Xavier Bouchoux <xavierb@gmail.com> Cc: "10.4" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
9019e5e19532fe214fc6e45b9ee1f60bbe332456 |
|
22-Sep-2014 |
Matt Turner <mattst88@gmail.com> |
Remove useless checks for NULL before freeing See commits 5067506e and b6109de3 for the Coccinelle script. Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
5d6d260833e374404f80d1c36bc0e1854369a069 |
|
26-Nov-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: sm1_declusage_to_tgsi, do not restrict indices with TGSI_SEMANTIC_GENERIC With sm3, you can declare an input/output with an usage and an usage index. Nine code hardcodes the translation usage/index to a corresponding TGSI code. The translation was limited to a few usage/index combinations that were corresponding to most of the needs of games, but some games did not work. This patch rewrites that Nine code to map all possible usage/index combination to TGSI code. The index associated to TGSI_SEMANTIC_GENERIC doesn't need to be low for good performance, as the old code was supposing, and is not particularly bounded (it's UINT16). Given the index is BYTE, we can map all combinations. Cc: "10.4" <mesa-stable@lists.freedesktop.org> Tested-by: Yaroslav Andrusyak <pontostroy@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
d52328fc398aae4c3582172516b0ad98f0677b58 |
|
25-Nov-2014 |
Axel Davy <axel.davy@ens.fr> |
st/nine: Fix setting of the shift modifier in nine_shader It is an sint_4, but it was stored in a uint_8... The code using it was acting as if it was signed. Problem found thanks to Coverity Cc: "10.4" <mesa-stable@lists.freedesktop.org> Tested-by: David Heidelberg <david@ixit.cz> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
925cb75f894c312478e3e2f4124d2913c4d969ab |
|
20-Nov-2014 |
Jose Fonseca <jfonseca@vmware.com> |
nine: Drop use of TGSI_OPCODE_CND. This was the only state tracker emitting it, and hardware was just having to lower it anyway (or failing to lower it at all). v2: Extracted from a larger patch by Jose (which also dropped DP2A), fixed to actually not reference TGSI_OPCODE_CND. Change by anholt. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: David Heidelberg <david@ixit.cz>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
56fd7c63617ae9ec0f795c9685a89f54073cb0ea |
|
20-Nov-2014 |
Jose Fonseca <jfonseca@vmware.com> |
nine: Don't reference the dead TGSI_OPCODE_NRM. The translation is lowering it to not using TGSI_OPCODE_NRM, anyway. v2: Extracted from a larger patch by Jose that also dropped DP2A usage. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: David Heidelberg <david@ixit.cz>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
7c0acd8535b36077b832e78f1f3a53176e453d74 |
|
20-Nov-2014 |
Eric Anholt <eric@anholt.net> |
nine: Don't use the otherwise-dead SFL opcode in an unreachable path. Reviewed-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Axel Davy <axel.davy@ens.fr> Reviewed-by: David Heidelberg <david@ixit.cz>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|
fdd96578ef2dfe9c4ad5aab5858036298d444a64 |
|
04-Aug-2011 |
Joakim Sindholt <opensource@zhasha.com> |
nine: Add state tracker nine for Direct3D9 (v3) Work of Joakim Sindholt (zhasha) and Christoph Bumiller (chrisbmr). DRI3 port done by Axel Davy (mannerov). v2: - nine_debug.c: klass extended from 32 chars to 96 (for sure) by glennk - Nine improvements by Axel Davy (which also fixed some wine tests) - by Emil Velikov: - convert to static/shared drivers - Sort and cleanup the includes - Use AM_CPPFLAGS for the defines - Add the linker garbage collector - Restrict the exported symbols (think llvm) v3: - small nine fixes - build system improvements by Emil Velikov v4: [Emil Velikov] - Do no link against libudev. No longer needed. Acked-by: Jose Fonseca <jfonseca@vmware.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Axel Davy <axel.davy@ens.fr> Signed-off-by: David Heidelberg <david@ixit.cz>
/external/mesa3d/src/gallium/state_trackers/nine/nine_shader.c
|