0c47d9dcab80923c61b3f5375128e9b511b842fb |
|
26-Jun-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: avoid unnecessary shader exports v2 In some cases TGSI shader has more color outputs than the number of CBs, so it seems we need to limit the number of color exports. This requires different shader variants depending on the nr_cbufs, but on the other hand we are doing less exports, which are very costly. v2: fix various piglit regressions Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
e3032a052321ea1fdfbca090618149ae1ed33911 |
|
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use a more clever way to disable per-vertex point size This uses point size clamping to force point size to a particular value, making the vertex shader output irrelevant. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
c2b800cf38b299c1ab1c53dc0e4ea00c7acef853 |
|
23-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: nuke the fallback for vertex and fragment color clamping
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
91d47296967ebfaf685f3870998ea0a1450ecf55 |
|
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement clip distances Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
725a820b926575265e6790601a0defd9c30947dc |
|
06-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement two-sided lighting (v3) v2: select the colors in the pixel shader v3: fix rs state creation for pre-evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
5b27b63de64167a84a03d820550e56c4b7bbc69d |
|
05-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: precalculate semantic indices for SPI setup There is no need to duplicate semantic mapping which is done in hw, so get rid of r600_find_vs_semantic_index. TGSI name/sid pair is mapped to the 8-bit semantic index for SPI. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
df121b868a13e7ca76f19d1488b625c02d632a47 |
|
04-Nov-2011 |
Alex Deucher <alexander.deucher@amd.com> |
Revert "r600g: precalculate semantic indices for SPI setup" This reverts commit c15f8569fddac5f8aee77863922fd5bb992cfe8a. This breaks r6xx.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
c15f8569fddac5f8aee77863922fd5bb992cfe8a |
|
04-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: precalculate semantic indices for SPI setup There is no need to duplicate semantic mapping which is done in hw, so get rid of r600_find_vs_semantic_index. TGSI name/sid pair is mapped to the 8-bit semantic index for SPI. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
4a47662beaa2092447939db7880531fb706afedd |
|
16-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename bc -> bytecode It took me a while to figure out what it stands for.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
dc1c0ca22a1c7fcaef90b787290144d8e3d77c33 |
|
29-Jul-2011 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: fix up vs export handling Certain attributes (position, psize, etc.) don't count as params; they are handled separately by the hw. However, the VS is required to export at least one param and r600_shader_from_tgsi() takes care of adding a dummy export if there is none. Make sure the VS param export count in the SPI properly accounts for this. Note: This is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
4f7dfd8ad3185f006e7ae8ed86bafd4d66ebc903 |
|
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of the superfluous family field from r600_shader. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
feec48114b261f43c8dc94c06cfccea3b6ef1689 |
|
25-Jun-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: eg+ support for FS_COLOR0_WRITES_ALL_CBUFS Evergreen+ don't support multi-writes so we need to emulate it in the shader. Fixes the following piglit tests: fbo-drawbuffers-fragcolor ati_draw_buffers-arbfp-no-option Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
eafd331cf3b024001abd3f64861f41cd33a9acb2 |
|
24-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement fragment and vertex color clamp Fixes https://bugs.freedesktop.org/show_bug.cgi?id=38440 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
3b1c1f02537544a11772b94a8f2e8c3d4c886ca8 |
|
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Store literal values in the r600_bc_alu_src structure. This is much easier to work with, and allows use to get rid of some of the literal handling hacks.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
5555cd776b970bce020be59193054474a2a63317 |
|
31-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: handle the write all cbufs property. This only works on r600/r700 so far, evergreen doesn't appear to have the multiwrite enable bit in the color control, so we may have to actually do a shader rewrite on EG hardware. remove some duplicate code reg defines also. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
96f8f8db7bcddec7ef0fce62cf0e23f1c2fb8c8d |
|
22-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rework literal handling
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
69251fc4cd5f71be403e08398bc43d19052a640d |
|
07-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: remove dead code Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
afc56b1861c1dae4137493af4c0e6dacc6ee41f9 |
|
06-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: avoid useless shader rebuild at draw call Avoid rebuilding constant shader state at each draw call, factor out spi update that might change at each draw call. Best would be to update spi only when revealent states change (likely only flat shading & sprite point). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
f609b2ab0342d77a8beca9efb5fbc5b66ff98295 |
|
18-Nov-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add fetch shader capabilities Use fetch shader instead of having fetch instruction in the vertex shader. Allow to restrict shader update to a smaller part when vertex buffer input layout changes. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
fc6caef4cb67fb13642c5ebccee53019d1764df6 |
|
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen interpolation support. On evergreen, interpolation has moved into the fragment shader, with the interpolation parmaters being passed via GPRs and LDS entries. This works out the number of interps required and reserves GPR/LDS storage for them, it also correctly routes face/position values which aren't interpolated from the vertex shader. Also if we noticed nothing is to be interpolated we always setup perspective interpolation for one value otherwise the GPU appears to lockup. This fixes about 15 piglit tests on evergreen.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
8a9f02c5d503089bdcc90ff934f6269e59356d52 |
|
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: only pick centroid coordinate when asked. TGSI tells us when to use this, its not hooked up from GLSL to MESA to TGSI yet though.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
d2c06b5037fe9282cbbc0c7acd84a1b286716507 |
|
05-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop use_mem_constant. since we plan on using dx10 constant buffers everywhere.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
e0b6df4fcce0964ea7930efeb40cb487b4c53337 |
|
15-Sep-2010 |
John Doe <glisse@localhost.localdomain> |
r600g: misc cleanup Avoid using r600_screen structure to get ptr to radeon winsys structure. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
d42efb9e8df6ef872ab4f142e3daf1b6cb9eff11 |
|
08-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add support for constants in memory buffers. DX9 constants were in the constant file, and evergreen no longer support cfile. r600/700 can also use constants in memory buffers, so add the code (disabled for now) to enable that as precursor for evergreen.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
4502b17901ad491e0598ee59a12d372c008ae03b |
|
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add KILP support passes glsl1-discard tests
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
b474478f206c6d81af78696d3d5ce156d4d413d7 |
|
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: really fix multi target support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
c3ad060488ffd98f1c6dc9127b46324c5201f434 |
|
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: finish multi target rendering support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
35e044ab562b65aa53f9d9d7b5885e6a887774bb |
|
29-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: switch btw flat/linear interpolation I am not sure how to properly handle flat shading regarding non color parameter to fragment shader. It seems we should still interpolate non color using linear interpolation and flat shade only apply to color. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
de553d906b4a205d811a9e1651f14212ec284e29 |
|
23-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: drop compiler stuff and switch over dumb tgsi assembler Writing a compiler is time consuming and error prone in order to allow r600g to further progress in the meantime i wrote a simple tgsi assembler, it does stupid thing but i would rather keep the code simple than having people trying to optimize code it does. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
4b2820534e3635a8ecd047f1e0139834e0a67d02 |
|
21-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add r600 compile mode to compiler. some of the ALU instructions are different on r6xx vs r7xx, separate the alu translation to separate files, and use family to pick which compile stage to use.
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
8556b77c56f3f1f0e75ce46d6b5c0d84c7b4eabd |
|
02-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600: use gallium list macros instead of making our own. before this change, r600 glxinfo segfaulted in the list code, and I wasn't debugging another linked list implementation, its 2010 after all. So add the two missing list macros to the gallium header from X.org list header file (after fixing them), then port all r600 lists to the new header. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
c6131879eb7dfdf26cd068109f6680608d608ab4 |
|
06-Jun-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add shader literal constant support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
4182d3ea00538b421222104cbc08d9bd656be32e |
|
29-May-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused struct r600_state What was the purpose of it?
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
e68b4e50536b3438a3bb8c3d12acebc6845461a8 |
|
27-May-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix driver + shader compiler backend change Change the way we translate from c_compiler to the asic specific representation. Should make things simpler. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|
72128962d640846472c1b0dc22cf4ac6ce875dc9 |
|
08-May-2010 |
Jerome Glisse <glisse@freedesktop.org> |
r600g: Initial import
/external/mesa3d/src/gallium/drivers/r600/r600_shader.h
|