42b73955808d7b33cf8f65fc8b4abe53aeaba135 |
|
20-Feb-2017 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: fix UINT/SINT clamping for 10-bit formats on <= CIK The same PS epilog workaround as for 8-bit integer formats is required, since the CB doesn't do clamping. Fixes GL45-CTS.gtf32.GL3Tests.packed_pixels.packed_pixels*. Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Marek Olšák <marek.olsak@amd.com> (cherry picked from commit 066a117be77fdc2b29c8eafabb4e2c2fa902a18e)
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
35cd7551a443477147293e562d8c1adfbe00dea9 |
|
17-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use the correct target machine when building shader variants If the shader selector is created with a different context than the shader variant, we should use the calling context's target machine for the shader variant. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99419 Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3ae3be6dd44dbc5ac6ec847ce67c53c10479a75c |
|
17-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move shader pipe context state into a separate structure Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d5234156097ec34d77d7159ddfdb0b7fdaa7e3b0 |
|
06-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement GL_FIXED vertex format Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
018fb2ecb3d962cfd732bab5f0d700c6419cd1d2 |
|
06-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement 32-bit SNORM/UNORM/SSCALED/USCALED vertex formats Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
44e9b67229c91d6741e4284cff4ea23cc350ed18 |
|
06-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: make fix_fetch 64-bit v2: add u_bit_consecutive64 Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6f356d15be008d23dc01707fcf3ff7a3b5a5c4d3 |
|
03-Jan-2017 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: cleanly communicate whether si_shader_dump should check R600_DEBUG Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Acked-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
72d48fcd8eb5862c72d27e5462c289c5de65396e |
|
29-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: apply a multi-wave workgroup SPI bug workaround to affected CIK chips All codepaths are handled except for clover. Cc: 13.0 <mesa-stable@lists.freedesktop.org> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
274fb601c2a335242903eb32aa68fbf1301c2ed7 |
|
26-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: count and report temp arrays in scratch separately v2: only do this if debug output of shader dumping is enabled Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> (v1)
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ef6c84b301ce15022d4907dfb0db5764e31e68f5 |
|
14-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: eliminate VS outputs that aren't used by PS at runtime A past commit added the ability to compile "optimized" shader variants asynchronously (not stalling the app). This commit builds upon that and adds what is basically a runtime shader linker. If a VS output isn't used by the currently-bound PS, a new VS compilation is started without that output. The new shader variant is used when it's ready. All apps using separate shader objects I've seen had unused VS outputs. Eliminating unused/useless VS outputs also eliminates the corresponding vertex attribute loads. Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
7e76f9a7a8041e2fe6aa557f1520358f1c323553 |
|
14-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: record information about all written and read varyings It's just tgsi_shader_info with DEFAULT_VAL varyings removed. Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ed3190b3f3a776fc8c75b1e6130a88079166d115 |
|
13-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't export ClipVertex and ClipDistance[] if clipping is disabled This is the first user of optimized monolithic shader variants. Cull distances can't be disabled by states. Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d984a324bf8702adde68c006f1c3454233871e1c |
|
13-Oct-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add infrastr. for compiling optimized shader variants asynchronously Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
fee71fec25efb9771a7c3fa15b120d4c816b59b5 |
|
13-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: simplify checking for monolithic compilation Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6d5c2a8b5c33122682d801f9b14a70e3d3d9a5cc |
|
13-Nov-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: split the shader key into 3 logical parts key->part.*: prolog and epilog flags only key->as_{ls,es}: special flags key->mono.*: flags for monolithic compilation only Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2c875158e2763d57e5dae8892af96a894bdb7dc9 |
|
02-Nov-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: fix vertex fetches for 2_10_10_10 formats The hardware always treats the alpha channel as unsigned, so add a shader workaround. This is rare enough that we'll just build a monolithic vertex shader. The SINT case cannot actually happen in OpenGL, but I've included it for completeness since it's just a mix of the other cases. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
908f92ad1f8562490468716d789f4d78b543399c |
|
31-Oct-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: generate GS prolog to (partially) fix triangle strip adjacency rotation Fixes GL45-CTS.geometry_shader.adjacency.adjacency_indiced_triangle_strip and others. This leaves the case of triangle strips with adjacency and primitive restarts open. It seems that the only thing that cares about that is a piglit test. Fixing this efficiently would be really involved, and I don't want to use the hammer of degrading to software handling of indices because there may well be software that uses this draw mode (without caring about the precise rotation of triangles). v2: - skip the GS prolog entirely if workaround is not needed - only check for TES (TES is always non-null when tessellation is used) Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3b2516721b91165936a25d1cfd88c65104ca04b1 |
|
31-Oct-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: make the GS copy shader owned by the GS selector The copy shader only depends on the selector. This change avoids creating separate code paths for monolithic vs. non-monolithic geometry shaders. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3ec9975555d1cc5365413ad9062f412904f944a3 |
|
18-Oct-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: eliminate trivial constant VS outputs These constant value VS PARAM exports: - 0,0,0,0 - 0,0,0,1 - 1,1,1,0 - 1,1,1,1 can be loaded into PS inputs using the DEFAULT_VAL field, and the VS exports can be removed from the IR to save export & parameter memory. After LLVM optimizations, analyze the IR to see which exports are equal to the ones listed above (or undef) and remove them if they are. Targeted use cases: - All DX9 eON ports always clear 10 VS outputs to 0.0 even if most of them are unused by PS (such as Witcher 2 below). - VS output arrays with unused elements that the GLSL compiler can't eliminate (such as Batman below). The shader-db deltas are quite interesting: (not from upstream si-report.py, it won't be upstreamed) PERCENTAGE DELTAS Shaders PARAM exports (affected only) batman_arkham_origins 589 -67.17 % bioshock-infinite 1769 -0.47 % dirt-showdown 548 -2.68 % dota2 1747 -3.36 % f1-2015 776 -4.94 % left_4_dead_2 1762 -0.07 % metro_2033_redux 2670 -0.43 % portal 474 -0.22 % talos_principle 324 -3.63 % warsow 176 -2.20 % witcher2 1040 -73.78 % ---------------------------------------- All affected 991 -65.37 % ... 9681 -> 3353 ---------------------------------------- Total 26725 -10.82 % ... 58490 -> 52162 v2: treat Undef as both 0 and 1 Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> (v1) Tested-by: Edmondo Tommasina <edmondo.tommasina@gmail.com> (v1)
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
7dddf0b7ab9a222a79b647082ebfb8787c8559ac |
|
12-Oct-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: adjust and clean up Z_ORDER and EXEC_ON_x settings The table was copied from the Vulkan driver. The comment lines are as long as the table for cosmetic reasons. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
77c81164bc1cd9ec98b32c40753f590791450434 |
|
09-Sep-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: support ARB_compute_variable_group_size Not sure if it's possible to avoid programming the block size twice (once for the userdata and once for the dispatch). Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3388f27d8439e75a0f4e64fd12f0433ccb2b3698 |
|
02-Oct-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: clean up lucky #include dependencies Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
275c073c6a49eacac85c21dc618d3c577f4d0495 |
|
10-Sep-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: export SampleMask from pixel shaders at full rate Heaven and Valley write gl_SampleMask and not Z. Use 16_ABGR instead of 32_ABGR if Z isn't written. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8dbf2a857008599a9432d64c1363c5a1139e6acd |
|
08-Aug-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: add DRAWID parameter to vertex shaders Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1e5f00f9d5f412526d025f8f4762160ce7b5f2ba |
|
22-Jul-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: pre-generate shader logs for ddebug This cuts down the overhead of si_dump_shader when ddebug is capturing shader logs, which is done for every draw call unconditionally (that's quite a lot of work for a draw call). Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
dd66f9d3e71ba27960040375709a05f87b7a735b |
|
22-Jul-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move the shader key dumping to si_shader_dump Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
0f7a6ea5e7b95cfe10dd5c176858ca078b36a197 |
|
05-Jul-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: report accurate SGPR and VGPR spills Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5c92c21369ee3b4f52eb5aed183092ba3ee7e079 |
|
11-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: do compilation from si_create_shader_selector asynchronously Main shader parts and geometry shaders are compiled asynchronously by util_queue. si_create_shader_selector doesn't wait and returns. si_draw_vbo(si_shader_select) waits for completion. This has the best effect when shaders are compiled at app-loading time. It doesn't help much for shaders compiled on demand, even though VS+PS compilation should take as much as time as the bigger one of the two. If an app creates more shaders, at most 4 threads will be used to compile them. Debug output disables this for shader stats to be printed in the correct order. (We could go even further and build variants asynchronously too, then emit draw calls without waiting and emit incomplete shader states, then force IB chaining to give the compiler more time, then sync the compilation at the IB flush and patch the IB with correct shader states. This is great for compilation before draw calls, but there are some difficulties such as scratch and tess states requiring the compiler output, and an on-disk shader cache will likely be a much better and simpler solution.) Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
850cd953b16a12c85d39a454302da38b00cfe68c |
|
11-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: separate the compilation chunk of si_create_shader_selector The function interface is ready to be used by util_queue. Also, si_shader_select_with_key can no longer accept si_context. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4d1f32376d845c08d2fd7cc868f143bc7cf6f9c9 |
|
30-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't interpolate colors if flatshading is enabled use v_interp_mov for those Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4accb02d7a3722b3e1eb12252201846353f002b7 |
|
30-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: enable the barycentric optimization in all cases Handle the bc_optimize SGPR bit if both CENTER and CENTROID are enabled. This should increase the PS launch rate for big primitives with MSAA. Based on discussion with SPI guys. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
476e9cee1d0cbe321c401277214e6c36ce5b18c9 |
|
30-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: compute only one set of interpolation (i,j) when MSAA is disabled This should increase the PS launch rate for shaders using at least 2 pairs of perspective (i,j) and same for linear. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
a675c6a00036e1718230359ff0407592ef10db9a |
|
30-Jun-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: split ps.prolog.force_persample_interp into persp and linear bits This reduces the number of v_mov's in the prolog. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b42bc90b6add0d0f81d915d49712761d32329afa |
|
01-Jun-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: enable WQM in PS prolog when needed WQM is needed when the PS prolog computes a VGPR that is consumed by a shader with (implicit or explicit) derivatives. Depends on http://reviews.llvm.org/D20839 / LLVM r272063 for this to be effective (otherwise it's just a no-op). Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95130 Cc: 12.0 <mesa-dev@lists.freedesktop.org> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
26f436132bbeebb7ec5efd56c1473a13719daccf |
|
10-May-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Remove LDS layout user SGPR's from TES. They are unused. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6217716e8f6091f7bbacbb9fa2f52997d3ac5d03 |
|
03-May-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Store inputs to memory when not using a TCS. We need to copy the VS outputs to memory. I decided to do this using a shader key, as the value depends on other shaders. I also switch the fixed function TCS over to monolithic, as otherwisze many of the user SGPR's need to be passed to the epilog, which increases register pressure, or complexity to avoid that. The main body of the fixed function TCS is not that interesting to precompile anyway, since we do it on demand and it is very small. v2: Use u_bit_scan64. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c49e68dc4bcc14cac529d1e3be5fe0090ed4d146 |
|
10-May-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Add user SGPR for the layout of the offchip buffer. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d9a0c54f6f9811cfe6411a0ed4af8a1086b01b9d |
|
01-May-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Use correct parameter index for LS_OUT_LAYOUT. This happens to be in the right position, but that changes when TCS/TES get new parameters. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5c34562d7ce5d278c2948b4f27d16fcb3e4fd22d |
|
02-May-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Add offchip tessellation parameters. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3cbd8cfc7a19b58a57e7eb16c9a73fff42c68563 |
|
19-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: decrease GS copy shader user SGPRs to 2 const buffers are no longer used since the clip plane const buffer was moved to RW buffers Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3138a28ff2a6a7c9bbf315538412f84b549d694a |
|
19-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move default tess level constant buffer to RW buffers Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
38f4cee3ff36970254ddce238638c4b9724669e3 |
|
21-Apr-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: Add config parameter to si_shader_apply_scratch_relocs. shader->config is not updated for compute kernels. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
84a6761ae34105fbdb38757a07e229b2392545d3 |
|
29-Mar-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: add shared memory Declares the shared memory as a global variable so that LLVM is aware of it and it does not conflict with passes like AMDGPUPromoteAlloca. v2: - Use ctx->i8. - Dropped null-check for declare_memory_region. - Changed memory region array to single region. Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
753a3e472b4c026d96f9984b02b53f596a0d595e |
|
17-Mar-2016 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
radeonsi: lower compute shader arguments Signed-off-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ed66c75784e3a51d414a6c4e90820d908d724b80 |
|
16-Apr-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use enums in si_shader.h Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c495c0ad37dc6a4505a726e3ac0e3d83adc46d30 |
|
15-Mar-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: implement set_shader_buffers Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e85cf35a6516c44e33663fcd9637c6b434bb63ee |
|
07-Feb-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: implement set_shader_images (v2) Whether DCC is disabled depends on the access flags with which the image is bound: image_load supports DCC, but store and atomic don't. v2: remove an unnecessary masking of images->desc.enabled_mask Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
74b4ce81fbbb513198b8d2cae0460aa779574964 |
|
25-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: allow dumping shader disassemblies to a file Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d0f3b524cdb8489a6872ba3639a13813de221fc2 |
|
22-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use re-Z This can increase perf for shaders that kill pixels (kill, alpha-test, alpha-to-coverage). v2: add comments Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ff360a52e6700d1085876169ed3b328910b394de |
|
11-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement binary shaders & shader cache in memory (v2) v2: handle _mesa_hash_table_insert failure other cosmetic changes Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1fe73d55e3f92b1dfbd619d46fd892fd169ae796 |
|
11-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move some struct si_shader members to new struct si_shader_info This will be part of shader binaries. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
10fa269f4f8e3d58c10e7b3ab317e2d65f8f2f3c |
|
11-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use smaller types for some si_shader members in order to decrease the shader size for a shader cache. v2: add & use SI_MAX_VS_OUTPUTS Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3c98e0b369aa79b3adcbbd299fa510e825866416 |
|
28-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: compile non-GS middle parts of shaders immediately if enabled Still disabled. Only prologs & epilogs are compiled in draw calls, but each variant of those is compiled only once per process. VS is always compiled as hw VS. TES is always compiled as hw VS. LS and ES stages are always compiled on demand. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4636d9be4a40138d0a10cadcb1b63eea89d95e34 |
|
15-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add PS prolog Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e79bb746ab8525d56f71948ebf3d6dbf8a3bdd4d |
|
27-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add PS epilog Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
eb10919b835a7eef420a839f479f02c7f0cd10e6 |
|
27-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add TCS epilog Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e1b21696a3c2c23ba401fab58ef042d31f7f6273 |
|
27-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add VS epilog It only exports the primitive ID. Also used by TES when it's compiled as VS. The VS input location of the primitive ID input is v2. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
70de433dea31c75a2e3f02ba3e060634ee66730d |
|
27-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add VS prolog This is disabled with use_monolithic_shaders = true. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
19a92886a8c495c1bd7816faf974967776488f05 |
|
15-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: first bits for non-monolithic shaders Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
17eb99d8b9fa633776ff01abe4ccffcf81729d5c |
|
26-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add code for combining and uploading shaders from 3 shader parts Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
dc2745619459171ee8e5367c1d126d4695e92691 |
|
26-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: separate out shader key bits for prologs & epilogs Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d995d4830e77d55552972dcc9d64e106f55fdc3f |
|
03-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: compute how many input VGPRs fragment shaders have Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
fe1b6ede0134168815527fedbff8ce06cca5a3aa |
|
01-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: compute how many input SGPRs and VGPRs shaders have Prologs (shader binaries inserted before the API shader binary) need to know this, so that they won't change the input registers unintentionally. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
7aedbbacae6d3ec3d06735fff2eb662964773ad2 |
|
06-Feb-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: put image, fmask, and sampler descriptors into one array The texture slot is expanded to 16 dwords containing 2 descriptors. Those can be: - Image and fmask, or - Image and sampler state By carefully choosing the locations, we can put all three into one slot, with the fmask and sampler state being mutually exclusive. This improves shaders in 2 ways: - 2 user SGPRs are unused, shaders can use them as temporary registers now - each pair of descriptors is always on the same cache line v2: cosmetic changes: add back v8i32, don't load a sampler state & fmask at the same time Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
dc5fc3c2f60b4c208369e0eddbf416af059d88c7 |
|
26-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: make LLVM IR dumping less messy Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b6d5666fbf2a4196462db7ea82918feae883daae |
|
26-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove useless code that handles dx10_clamp_mode "enable-no-nans-fp-math" is a wrong string and there was a disagreement about fixing it. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5a53628f45787370636b3b0a0c7d29cb80e1ada7 |
|
06-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: read SPI_PS_INPUT_ADDR from LLVM if it returns it Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b9126dcda834ba9cf58af32e97f4b5d93c9817a3 |
|
03-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement forcing per-sample_interpolation using the shader key only It was partly a state and partly emulated by shader code, but since we want to do this in a fragment shader prolog, we need to put it into the shader key, which will be used to generate the prolog. This also removes the spi_ps_input states and moves the registers to the PS state. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4596f3c1b8bbcc83b841b6c7ea4a287a6f3210f7 |
|
02-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove si_shader::ps_input_interpolate tgsi_shader_info has this too. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6dda2455c88a752d513d842cc9be1833fe98a89c |
|
02-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move BCOLOR PS input locations after all other inputs BCOLOR inputs were immediately after COLOR inputs. Thus, all following inputs were offset by 1 if color_two_side was enabled, and not offset if it was not enabled, which is a variation that's problematic if we want to have 1 variant per shader and the variant doesn't care about color_two_side (that should be handled by other bytecode attached at the beginning). Instead, move BCOLOR inputs after all other inputs, so BCOLOR0 is at location "num_inputs" if it's present. BCOLOR1 is next. This also allows removing si_shader::nparam and si_shader::ps_input_param_offset, which are useless now. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
efc4142acd0e5e43b9896440c1c8191d41ff273a |
|
21-Jan-2016 |
Jan Vesely <jan.vesely@rutgers.edu> |
r600,compute: Plug few memory leaks v2: drop inline keyword drop radeon_llvm_dispose_kernel_module wrapper v3: move definitions to .c file use in radeonsi Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Signed-off-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c55b9499d5e3d2bb6772f0194b7556b87abf44b9 |
|
22-Jan-2016 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: move is_gs_copy_shader to si_shader_context It is only used during shader creation now, so no need to keep it around afterwards. Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
99dfeb01bd5c3e059968e934f3ec88b2fe43e3f4 |
|
15-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: disable SPI color outputs the shader doesn't write Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
f1f01588372a26b7c217fa1898eefea75290feed |
|
15-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add shader conversion code for all SPI color formats Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8667a1aea2ac3fee9b1b663132dc1bea8ec21cda |
|
11-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use SPI_SHADER_COL_FORMAT fields instead of export_16bpc This does change the behavior slightly: If a shader writes COLOR[i] and that color buffer isn't bound, the shader will export MRT_NULL instead and discard the IR tree that calculates the output. The only exception is alpha-to-coverage, which requires an alpha export. v2: - update a comment about 16BPC - account for MRTZ when when fixing alpha-test/kill Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
bca18057a359f98b5db0a6453abe4dc7dd70a31d |
|
06-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: adjust the parameters of si_shader_dump The function will be extended to dump all binaries shaders will consist of, so si_shader* makes sense here. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b0df5f4c19f2c084fe65b13f5712433c91ad83d0 |
|
03-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: inline si_shader_binary_read Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c9c031f3d0ed28a65b78748ed1e6e2ec29336451 |
|
03-Jan-2016 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move si_shader_dump call out of si_shader_binary_read Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ccd7d7e13d708e6f4128bc09b42dd88bd606d49b |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add si_shader_destroy_binary Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5c9f104567c3b072aa103902ee5868a08ded4835 |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't pass si_shader to si_compile_llvm Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
63345cfc3a8a0f2d9bb16deef2a24cebe9045642 |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't pass si_shader to si_shader_binary_read Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2d3a96448a6ce28a9955ef7b4d5c62228703e4a3 |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't pass si_shader to si_shader_binary_read_config Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
20b9b5d7f527ca29f603242dc5355bd2e29c654d |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add struct si_shader_config There will be 1 config per variant, which will be a union of configs from {prolog, main, epilog}. For now, just add the structure. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e00f3f23b13e2ad99977005da2c1538f181e401d |
|
23-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: set SPI color formats and CB_SHADER_MASK outside of compilation Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
746a7a74983a708edfd60ac2e501939844eacfc0 |
|
23-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: determine SPI_SHADER_Z_FORMAT outside of shader compilation Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2cb8bf90cd21cdeba708ed4ee875a9e4ada128ae |
|
23-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: determine DB_SHADER_CONTROL outside of shader compilation because the API pixel shader binary will not emulate alpha test one day, so the KILL_ENABLE bit must be determined elsewhere. Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
86fa48426cef42d7224139603b52a7d16bd35eb5 |
|
28-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove unused parameter from si_shader_binary_read_config Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b6d95248f0c423dfde573617cffddb4fa2d3c8ab |
|
27-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move si_shader_binary_upload out of si_shader_binary_read Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
fd7000bd7897565a7a019a7ec3aacb832d696d22 |
|
27-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: pass TGSI processor type to si_shader_binary_read for dumping the parameter will be used later Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3ce0a2fd7f4270b036b4449a312cff8dcfd5925e |
|
27-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: pass TGSI processor type to si_compile_llvm for dumping the parameter will be used later Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
dd79034ca68be7216615c824bac07ccae889004f |
|
30-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: rename shader parameter definitions and variables for more clarity Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4bb1c8dfecef133822511f6147eac317e4690345 |
|
30-Dec-2015 |
Nicolai Hähnle <nicolai.haehnle@amd.com> |
radeonsi: pass pipe_debug_callback down into si_shader_binary_read (v2) This will allow us to send shader debug info. Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com> (v1) Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
51603af3901b2e401d2009ec27b99996fc9ccffb |
|
10-Dec-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use tgsi_shader_info::colors_written Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
95e051091676584fd7bfba9d0316c3747bf17f35 |
|
16-Nov-2015 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi: Rename si_shader::ls_rsrc{1,2} to si_shader::rsrc{1,2} In the future, these will be used by other shaders types. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3694d58e6c4a39bd84e8aef0d8e67c3ae9447f33 |
|
15-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove dead code after ES-GS linkage change Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d79a3449a70b35a7fd38e7b4e17cafcbc28dda0d |
|
15-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: link ES-GS just like LS-HS This reduces the shader key for ES. Use a fixed attrib location based on (semantic name, index). The ESGS item size is determined by the physical index of the highest ES output, so it's almost always larger than before, but I think that shouldn't matter as long as the ESGS ring buffer is large enough. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b1c5f3faa9d7a227150b677469df1a5832236541 |
|
08-Nov-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: calculate optimal GS ring sizes to fix GS hangs on Tonga I discovered that increasing the ESGS ring size fixes GS hangs on Tonga, so let's do it properly. There is now a separate init_config_gs_rings state that is not immutable, because GS rings are resized when needed. This also saves some memory. Most apps won't need more than 1MB per ring per shader engine. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4acd856088c31ab7ebbfbe5010db1fbcca72845c |
|
08-Nov-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: calculate ESGS_RING_ITEMSIZE in create_shader Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
a0cf58996197d99cc7d743b76be977cc2359dca9 |
|
08-Nov-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move maximum gs stream calculation into create_shader Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
3ab0c49f04e5039655ddc8b81cac325709b154fe |
|
08-Nov-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: clean up small duplication in si_shader_gs Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
38391835b5cbdd52e7a3221ff98f402aefa1639b |
|
17-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: fix the export_prim_id field size in the shader key Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
9b54ce3362f117b4d46497b578211bb26554dd78 |
|
07-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: support thread-safe shaders shared by multiple contexts The "current" shader pointer is moved from the CSO to the context, so that the CSO is mostly immutable. The only drawback is that the "current" pointer isn't saved when unbinding a shader and it must be looked up when the shader is bound again. This is also a prerequisite for multithreaded shader compilation. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5bc871a4caf97f4e07830ea463f445994c8d13b5 |
|
07-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement vertex color clamping This is only supported in the compatibility profile (without GS and tess). Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
208d1ed38ddb7de8211a9ffc3d89ae176ef7e9d4 |
|
07-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement fragment color clamping using the shader key for now. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c4f086f3999894c9b6fe2de466add3bb09c8b354 |
|
09-Oct-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove an unused ctx parameter in si_shader_destroy Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b3c55fc669b54589e57a112df75094405e16ff52 |
|
28-Sep-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: do force_persample_interp in shaders for non-trivial cases Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
c2a42d1f9ff104c562822d7ab2cbaa361666266b |
|
29-Aug-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't rebind GSVS ring buffers every draw call using GS Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
f6a10f60b75821c20ce7cf338b519b92ed0330fc |
|
28-Aug-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: optimize scissor states - convert 16 states to 1 atom - only emit 1 scissor if VIEWPORT_INDEX isn't written - use only one packet when emitting consecutive scissors Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
9b510a9652297a63677f1d55b2bf444694fd94e1 |
|
29-Aug-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: fix a Unigine Heaven hang when drirc is missing Cc: 10.6 11.0 <mesa-stable@lists.freedesktop.org> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Acked-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
93d97db3492cc1af8fb401ed5eb6766e608f744e |
|
11-Jul-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: allow si_dump_key to write to a file Acked-by: Christian König <christian.koenig@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e7a52a5cb810de49a8282cb9f9caea5d554c3348 |
|
10-Aug-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add support for gl_PrimitiveID in the fragment shader It must be obtained from the VS. The GS scenario A must be enabled for PrimID to be generated for the VS. + 4 piglits Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
4b6c1efb225777231459de54903484367d0b1ca1 |
|
17-Jul-2015 |
Dave Airlie <airlied@redhat.com> |
radeonsi: split out interpolation input selection This is prep work for using it in the interpolation code later. Also add storage for the input interpolation mode so we can pick it up later. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
ebfd9e007191d582e22d252e9ff9b93fe4f8c593 |
|
22-Feb-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add tessellation shader states ls_rsrc# will be emitted as part of the derived tessellation state Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
aa2fa6723a0f8ab86ce2e55b1ac093f2cffd87c6 |
|
22-Feb-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: update si_get_vs_info and si_get_vs_state for tessellation Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
fff16e4ad2cf51749e01e04805908effe49217d1 |
|
22-Feb-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add shader code generation for tessellation Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2ecb06b946ff8bf4a96de79ab81926fa1bf5a93f |
|
06-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: make ES2GS offset sgpr location dynamic It will have a different location in the tessellation evaluation shader. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
50a957c5de842b18e10c361f7b0310aa46bb483f |
|
10-Jul-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: upload shader rodata after updating scratch relocations Cc: 10.5 10.6 <mesa-stable@lists.freedesktop.org> Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e4d738f6c6b98a78830c10ab7b89704d847637a5 |
|
10-Jul-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove redundant parameter in si_shader_binary_read Reviewed-by: Tom Stellard <thomas.stellard@amd.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
248b26429f52d0f19949a083aa3e0aeebcbe2138 |
|
06-Jul-2015 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Use param export count from si_llvm_export_vs in si_shader_vs This eliminates the error prone logic in si_shader_vs recalculating this value. It also fixes TGSI_SEMANTIC_CLIPDIST outputs incorrectly not being counted for VS exports. They need to be counted because they are passed to the pixel shader as parameters as well. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91193 Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
556dd4af76ca0be9b0698139c06e6d12d52e8ff3 |
|
25-Jun-2015 |
Dave Airlie <airlied@redhat.com> |
radeonsi: add support for geometry shader invocations. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d64adc3a79e419062432cfa8d1cbc437676a3fbd |
|
26-Mar-2015 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Cache LLVMTargetMachineRef in context instead of in screen Fixes a crash in genymotion with several threads compiling shaders concurrently. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89746 Cc: 10.5 <mesa-stable@lists.freedesktop.org> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
303d23e10d2caad69b2d122f45c78fee2906fc09 |
|
15-Mar-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: add shader code for smoothing The fragment shader multiplies the alpha channel with gl_SampleMaskIn. If blending is enabled, it looks like MSAA. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
bbfa1c323917cc54162a64e7882cecaaaa9a7b70 |
|
06-Mar-2015 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi/compute: Use value from compiler for COMPUTE_PGM_RSRC1.FLOAT_MODE Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6c5af1dc4e7871ddd0383713b9d5382318a34fc9 |
|
31-Jan-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: implement polygon stippling Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2397a721291457c146c7f4bcd48adcb3b2d979bd |
|
10-Dec-2014 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi: Enable VGPR spilling for all shader types v5 v2: - Only emit write SPI_TMPRING_SIZE once per packet. - Use context global scratch buffer. v3: - Patch shaders using WRITE_DATA packet instead of map/unmap. - Emit ICACHE_FLUSH, CS_PARTIAL_FLUSH, PS_PARTIAL_FLUSH, and VS_PARTIAL_FLUSH when patching shaders. v4: - Code cleanups. - Remove unnecessary multiplies. v5: - Patch shaders in system memory and re-upload to vram. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
32206c5e560cea8c992ec983e7f5324493385ead |
|
23-Jan-2015 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi: Add radeon_shader_binary member to struct si_shader Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1829f9c928836940fa13b12a8b073f09c26dc782 |
|
04-Jan-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: enable LLVM optimizations that assume no NaNs for non-compute shaders v2: complete rewrite Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
15a7fff69a644856945f461e4b2c62c3a13872fb |
|
04-Jan-2015 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove flatshade from the shader key Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
161534737c643e15bacf77b389daa18da325b74f |
|
07-Dec-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: get info about VS outputs from tgsi_shader_info Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1f4e48d5b53e73605832971f3fb06cb3402f97a5 |
|
26-Sep-2014 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi/compute: Enable PIPE_SHADER_IR_NATIVE for compute shaders v2 v2: - Drop dependency on LLVM >= 3.5.1 - Rename si_create_shader() to si_shader_binary_read()
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
80677327404490e1bb4a37c065b4536940e74f73 |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove shader->input[] and output[] arrays and dependencies They were reinventing tgsi_shader_info. They are unused now. radeon_llvm_context::load_input can be NULL if input fetching is implemented in some other way. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8b057ddaeaa1e5ef65f1dbd548b59f8bd0a943b1 |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move param_offset out of shader->input[] and output[] Those are going away. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
fa933438a2fe19eab62a3f35b64d834b1176f8eb |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use tgsi_shader_info in si_shader_ps Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
34e82005998138504147fd265f87825e4aace31f |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't recompile shaders when changing nr_cbufs from 0 to 1 Both cases are equivalent. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5e0fbe1b631d883eb0e033938a534a259c8d95fd |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove vs.ucps_enabled from the shader key Written CLIPDIST outputs are simply disabled in PA_CL_VS_OUT_CNTL. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
a9592cd3ac20143e01126ef1df372ecca54b41d1 |
|
04-Oct-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: assume ClipDistance usage mask is always 0xf No code in Mesa sets the usage mask to any other value. The final mask is AND'ed with enable bits from the rasterizer state anyway. If somebody implements setting usage masks in st/mesa, we can use tgsi_shader_info to get it more easily. This is a prerequisite for the following commit. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1f6c0b55df9f3553b18062ad2c7e2dc021d4c731 |
|
23-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: set number of userdata SGPRs of GS copy shader to 4 It only needs the constant buffer with clip planes and read-write resources for the GS->VS ring and streamout. That's 2 pointers. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
91f1a79f78f7dfa84f93abe1e3efa68535e191a3 |
|
25-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: make the vertex shader key smaller We only support 16 vertex attribs, not 32. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
10e386f4aa3ef8ce1c60ec5be0865cc61bd093e2 |
|
30-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove interp_at_sample from the key, use TGSI_INTERPOLATE_LOC_SAMPLE st/mesa has the same flag in its shader key, we don't need to do it in the driver anymore. Instead, use TGSI_INTERPOLATE_LOC_SAMPLE, which is what st/mesa sets. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
0a2d6f0c4e2230739aad6b6938925bf91d55d9d4 |
|
30-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move geometry shader properties from si_shader to si_shader_selector Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6c9f61c97e4d06afc5d86e50a83d22d60c35834a |
|
30-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove unused variable si_shader::gs_input_prim Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8860584045f8c534264f9d456bfafdb545d81437 |
|
30-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: get fs_write_all from tgsi_shader_info directly Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
5233568861b082ee288d845f447012fa47e8bd1e |
|
30-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: get tgsi_shader_info only once before compilation Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
1abb1a97b0559b103c4a458def317c6440491a76 |
|
17-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't pass the context to the shader translator This should prevent accessing context state there. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
e29353ff20a2761a5a1caeaed78398557797207c |
|
17-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: don't snoop currently-bound GS shader when compiling ES Instead, pass the layout of GS inputs in memory to the ES using the shader key. Only 64 bits are needed to represent the layout in the key. Mixing and matching different VS and GS shaders should now always work. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
2774abd4cec70d95cb73f83c2c150e9f5171c50d |
|
16-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: shorten si_pipe_* prefixes to si_* This was the original naming convention in r600g and it somehow crept into radeonsi. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8c37c16cbc4fd84bbb648cac2189b02633e3f806 |
|
16-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: merge si_pipe_shader into si_shader One is part of the other anyway. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
dba4c5baf449108f8d1f910af33998ce3c21b47a |
|
19-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: move DB_SHADER_CONTROL into db_render_state I will need this for fixing sample shading with 1 sample. The good news is that all shader pm4 states no longer use the current context state, so we can generate the pm4 states outside of draw_vbo if needed. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
adc5797f54260ccf60020c00c231d9c00a00b13d |
|
19-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: set KILL_ENABLE during shader compilation, remove uses_kill flag Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
a34c9f70b1f64b8802d22114900475e520b143e6 |
|
19-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove shader.ps_conservative_z, set db_shader_control instead Also set the field on SI too. It's not just specific to CIK. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
a768b43bc36c98451e4b3669a7e6a22769fa4cb7 |
|
16-Sep-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: remove unused variable si_pipe_shader::sprite_coord_enable Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
b0f780345ed4b75485a0fdd8cea65fa77c7675bd |
|
18-Jul-2014 |
Tom Stellard <thomas.stellard@amd.com> |
radeonsi/compute: Add support scratch buffer support v2 The scratch buffer will be used for private memory and also register spilling. v2: - Code cleanups
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
09056b352d6de42d24decafdcd6819ad70dc98f1 |
|
23-Apr-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: use an SGPR instead of VGT_INDX_OFFSET The draw indirect packets cannot set VGT_INDX_OFFSET, they can only set user data SGPRs. This is the only way to support start/index_bias with indirect drawing. Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
6a2b38381ee90b7fc9584b05b84284c0e609bb6d |
|
14-Jun-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: pass ARB_conservative_depth parameters to the hardware Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
99df120e006dbbce7aaf4b1466db423aa2432e54 |
|
06-May-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: interpolate varyings at sample when full sample shading is enabled
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d9e102b220701c15730329290daa0176751af09a |
|
06-May-2014 |
Marek Olšák <marek.olsak@amd.com> |
radeonsi: prepare depth export registers at compile time Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
f8e16010e51eef19ed7030ac7248438f729ae511 |
|
28-Jan-2014 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Put GS ring buffer descriptors with streamout buffer descriptors And mark the constant buffers as read only for the GPU again. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8afde9fa23db6ac1802f7a2c74123f10db96f552 |
|
09-Jan-2014 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Take GS into account for VS state in more places Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
d8b3d806fc328ee2997c1d9f9bb630682f49cce5 |
|
08-Jan-2014 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Handle TGSI_SEMANTIC_PRIMID Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
7c7d7380f13d5863de846fef60d80ad13836634e |
|
09-Jan-2014 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Generalize counting of shader parameters Now it covers ES->GS as well as VS->PS. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
404b29d765e2fe4d2bf80d17063e5672d2d59ca1 |
|
21-Nov-2013 |
Michel Dänzer <michel.daenzer@amd.com> |
radeonsi: Initial geometry shader support Partly based on the corresponding r600g work by Vadim Girlin and Dave Airlie. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
8662e66bf237a820a704df112718be599136098b |
|
11-Jan-2014 |
Andreas Hartmetz <ahartmetz@gmail.com> |
radeonsi: Rename the commonly occurring rctx/r600 variables. The "r" stands for R600. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
238aeabce0e5cfd850279a68fe0c816adc175294 |
|
11-Jan-2014 |
Andreas Hartmetz <ahartmetz@gmail.com> |
radeonsi: Rename r600->si for structs in si_pipe.h. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|
786af2f963925df2c2a6fb60b29a83e8340f03c7 |
|
04-Jan-2014 |
Andreas Hartmetz <ahartmetz@gmail.com> |
radeonsi: Apply si_* file naming scheme. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/radeonsi/si_shader.h
|