History log of /external/mesa3d/src/gallium/drivers/r600/r600_shader.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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