78222e63630280b96488de0d51d1b2578e26f814 |
|
30-Jan-2013 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add cs memory usage accounting and limit it v3 (backport for mesa 9.0) We are now seing cs that can go over the vram+gtt size to avoid failing flush early cs that goes over 70% (gtt+vram) usage. 70% is use to allow some fragmentation. The idea is to compute a gross estimate of memory requirement of each draw call. After each draw call, memory will be precisely accounted. So the uncertainty is only on the current draw call. In practice this gave very good estimate (+/- 10% of the target memory limit). v2: Remove left over from testing version, remove useless NULL checking. Improve commit message. v3: Add comment to code on memory accounting precision This version is a backport for mesa 9.0 Signed-off-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
41d14eaf193c6b1eb87fe1998808a887f1c6c698 |
|
06-Sep-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix num of dwords needed for alphatest_state atom Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
64db3cc6ad2d52dec46119e5b80030393cb60bf4 |
|
30-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement MSAA for Cayman Everything works except for blitting MSAA colorbuffers, which isn't so trivial on Cayman. It's a rarely-used feature anyway.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
187d7fb2fec7da889f25366696faaac4c2e8f9c4 |
|
24-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement draw_rectangle callback The color resolve on r6xx needs PT_RECTLIST. Using conventional primitive types (triangles and quads) produces an ugly line between two diagonally opposite corners. I guess a rectangular point sprite would work too.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a3d9d7ec79d6f7205fab2324e47d8ea185431de0 |
|
12-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement compression for MSAA colorbuffers for evergreen This adds the FMASK and CMASK buffers. They share the same resource with color data. COMPRESSION and FAST_CLEAR are always enabled if both FMASK and CMASK are allocated. We initialize the CMASK to a "compressed" state (not "fast cleared"), so that we can keep FAST_CLEAR enabled all the time. Both FMASK and CMASK must be present at the moment. If either one is missing, the other one is not used. v2: add cayman regs in the list Reviewed-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
48edfe0505ee79d35f770f53b9c9b7ca3c69fd2b |
|
13-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup names around depth decompression for consistency with the upcoming color decompression naming Reviewed-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
8d1a9a984f33d8e45f932a9f47cdd57da617a919 |
|
21-Aug-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix lockups with dual_src_blend v2 Disable blending when dual_src_blend is enabled and number of color exports in the current fragment shader is less than 2. Fixes lockups with ext_framebuffer_multisample- alpha-to-coverage-dual-src-blend piglit test. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
951ac46a6a0a901b53a518c8dcde734578cbf228 |
|
14-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename r600_resource_texture to r600_texture
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d663a557fd27d7c238248e19f22f2e6b05f03030 |
|
10-Aug-2012 |
Brian Paul <brianp@vmware.com> |
r600: update sampler, sampler_view code for the future For when we have pipe->set_sampler_states(pipe, shader, start, num, samplers), etc. Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a01791add08fbcb5386e0e9209ba21ed58fbdc42 |
|
22-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement set_sample_mask
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
26cb887ea213be2445e0fd64364d9264ed4fbfd2 |
|
04-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement alpha-to-one
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2df399c34bb39122a45bdd5b430b48346542e1cb |
|
01-Aug-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: atomize sampler state v2 Use atom for sampler state. Does not provide new functionality or fix any bug. Just a step toward full atom base r600g. v2: Split seamless on r6xx/r7xx into it's own atom. Make sure it's emited after sampler and with a pipeline flush before otherwise it does not take effect. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c3c83af380d703cdc24475bd39baa1722c333b44 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: setup streamout before calling last r600_need_cs_space before drawing This fixes CS checker errors due to registers not being initialized, because the flush occured after dirty state was emitted but before drawing.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
f237fd431b512f1d67c88a8d29581b5bef143bbf |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: update R600_MAX_DRAW_CS_DWORDS to take draw-opaque into account
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
30257c32910c3f7ac2b9cc24399d6be196d34d26 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move VGT_STRMOUT_DRAW_OPAQUE_OFFSET initialization into invariant state
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d9ba1b0beb6a78e208128e758bd22173fe4a8234 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: only set the index type if drawing is indexed
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
ff9a49328e5d8b647aeb7511a01e5a41592a2799 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_context_draw_opaque_count
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
de4fd087cbccd47e703f750968b79525ddbe4554 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: always derive alphatest state from the first colorbuffer
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
bc2f5fc01e678ecd19f921e5bc7bd55c131dde66 |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: atomize alphatest state
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5130196c0b3cbdb1944918d7f8d4db24d026deea |
|
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: try to fix line stippling with lineloops The piglit test is failing, but visually it looks almost correct.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c26fadf195876271e559f844c1fc88effa6a60c1 |
|
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused code after conversion of sampler views
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5d8d4252f2f6632fc455dcf1079c95495ef445ac |
|
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: convert sampler view emission into atoms Vertex and constant buffers are emitted in the same way. This is mainly a simplification of the code. The cleanup is in another patch.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
7022f49b52cb8b414a3716a08deb741cce9ed75c |
|
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: only make constant buffers dirty if there's something to update
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
80755ff56317446a8c89e611edc1fdf320d6779b |
|
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: properly track which textures are depth This fixes the issue with have_depth_texture never being set to false.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
ba48f47ebf7f017db0507b92a3ca83e404dc586c |
|
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate code for setting sampler views and fix bugs in the process Issues fixed: - set_vs_sampler_views for evergreen is now properly implemented. - Added the missing inval_texture_cache call for evergreen. - have_depth_texture was sometimes incorrectly set to false on evergreen even if there were depth textures in other shader stages. To fix this, set it to true once and never set it to false again. It's stupid, but it matches the r600 code. The proper fix is left to another patch. - Optimizaton: The sampler views which aren't changed aren't updated.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d1ca16b2738644d17c10e736ca36981f69f5fa87 |
|
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused flag have_depth_fb This is a leftover from: commit fe1fd675565231b49d3ac53d0b4bec39d8bc6781 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Jul 8 03:10:37 2012 +0200 r600g: don't flush depth textures set as colorbuffers
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
585baac652ffa172fb3fbbdd4c7559d03b7c27ef |
|
06-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: do fine-grained vertex buffer updates If only some buffers are changed, the other ones don't have to re-emitted. This uses bitmasks of enabled and dirty buffers just like emit_constant_buffers does.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
bc6bff79475ab0996923a105fa699a19fb65455e |
|
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: compute needed CS space for vertex buffers correctly
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c2f444c54db82a53f63fa7a103770ee5eedc3559 |
|
12-Jul-2012 |
Tom Stellard <tstellar@gmail.com> |
r600g: Emit vertex buffers using the same method as constant buffers Signed-off-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5a17d8318ec2c20bf86275044dc8f715105a88e7 |
|
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: flush depth textures bound to vertex shaders This was missing/broken. There are also minor code cleanups. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
dee58f94af833906863b0ff2955b20f3ab407e63 |
|
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: do fine-grained depth texture flushing - maintain a mask of which mipmap levels are dirty (instead of one big flag) - only flush what was requested at a given point and not the whole resource (most often only one level and one layer has to be flushed) Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
df79eb59566f20a7fa8e11d87b63b81ec35eaf25 |
|
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove is_flush from DSA state we can just update the state when decompressing, there's no need to add additional info into the DSA state Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
4fe74412cfdba9af6ce878aebbb0c367f19cbb4b |
|
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move CB_SHADER_MASK setup into cb_misc_state Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a1a1ff5ec09acda0c4849c9e41a37ae82a80f000 |
|
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move MULTIWRITE setup into cb_misc_state for r6xx-r7xx Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0ea76916e63f8fc556f5e8f5a46c196d317cd5ad |
|
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move CB_TARGET_MASK setup into new cb_misc_state to remove some overhead from draw_vbo. This is a derived state. BTW, I've got no idea how compute interacts with 3D here, but it should use cb_misc_state, so that 3D and compute don't conflict. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e00e1586dd94c1bbcd1ecfd9649fde9281be1977 |
|
25-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add pkt_flag parameter to r600_context_block_emit_dirty() This allows the shader type bit to be set in the pm4 header when emitting registers for compute shaders. Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b75f1d973c7b626dba567b792be5a3539855a705 |
|
26-Jun-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: enable DUAL_EXPORT mode when possible on r6xx/r7xx DUAL_EXPORT can be enabled on r6xx/r7xx when all CBs use 16-bit export and there is no depth/stencil export. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
470d00c0e270c6079232d0d5ab10bf3219768faf |
|
26-Jun-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: enable DUAL_EXPORT mode when possible It seems DUAL_EXPORT on evergreen may be enabled when all CBs use 16-bit export mode (EXPORT_4C_16BPC), also there should be at least one CB, and the PS shouldn't export depth/stencil. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
4acf71f01ea1edb253cd38cc059d4af1a2a40bf4 |
|
11-Jun-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: cache shader variants instead of rebuilding v3 Shader variants are stored in the list, the key for lookup is based on the states that require different hw shaders - currently it's rctx->two_side (all gpus) and rctx->nr_cbufs (evergreen/cayman, when writes_all property is set). v2: - use simple list instead of keymap as suggested by Marek on irc - call r600_adjust_gprs from r600_bind_vs_shader for r6xx/r7xx (r600_shader_select isn't used for vertex shaders currently) v3: - fix call to r600_adjust_gprs - do it after updating current shader Improves performance for some apps, e.g. FlightGear - see https://bugs.freedesktop.org/show_bug.cgi?id=50360 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
cc2cd8b356e137c83600d5e1804fd6162ce687c9 |
|
26-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't disable streamout if it hasn't been started
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
31a25dac98ea20ba853128f98987c6358d8e0598 |
|
27-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: setup COLOR1 for possible dual-src in the framebuffer bind As pointed out by Marek, if we have only one cb, we may as well add this single register write here rather than adding it in the draw loop. Reviewed-by: Marek Olšák <maraeo@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
bb4c5d72d7c7cb1d9e7016e2c07c36875f30011a |
|
11-May-2012 |
Marek Olšák <maraeo@gmail.com> |
Merge branch 'gallium-userbuf' Conflicts: src/gallium/docs/source/screen.rst src/gallium/drivers/nv50/nv50_state.c src/gallium/include/pipe/p_defines.h src/mesa/state_tracker/st_draw.c
|
4a26454e979251db25bab68685835fa32c099429 |
|
22-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: bypass alpha for integer types (v2) This moves the alpha test control to derived state and disables alpha testing for integer fbs. fbo-blending test in piglit gets further when we do this (not a pass but less fail). v2: drop the fb_sx_alpha_test_control Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0b7d48cbad86eaac21fce3793da41b46db8be3b4 |
|
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add void *user_buffer to pipe_constant_buffer This reduces CPU overhead when updating constants.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
bf469f4edc60bd1c5fd770cb231b8d5ab801427f |
|
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add void *user_buffer in pipe_index_buffer Adapted drivers: i915, llvmpipe, r300, r600, radeonsi, softpipe. User index buffers have been disabled in nv30, nv50, nvc0 and svga to keep things working.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
507337864fa80caf9f26602324d2c28dd0a75d61 |
|
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: change set_constant_buffer to be UBO-friendly
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0a6120244e66494db070ce875c0a464fbc5b15a1 |
|
26-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
winsys/radeon: simplify buffer map/unmap functions The idea is not to use pb_map and pb_unmap wrappers, calling straight into the winsys.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
23b948057ad33cf0b27e5c88a8e9ff7dbfa0573c |
|
01-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move updating vertex buffer state into set_vertex_buffers
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
428855eea3e99d94474df6df0cb8dfc4a8819702 |
|
11-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't share u_upload_mgr with u_vbuf, create its own
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a52b3338c6e51421e3836ae210cd98d9c1ec337b |
|
10-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: remove u_vbuf_resource
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5ec7c28fdbc2e05d20b1a07cba1fe6ac3b6658f9 |
|
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override draw_vbo
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
889238c8b1e6b8ac5eed30ec3122be94216ca7cf |
|
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override create/bind/destroy_vertex_elements_state
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2d03d4f4a365d7af5f4dac20700009152eba1682 |
|
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override set_vertex_buffers
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
31714ea4d5a20285f398286fe45b53d0609926dd |
|
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override set_index_buffer This makes u_vbuf_mgr call the driver instead of the other way around.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
62b0323cf6af90aa2be89ec76ec3693213b0de5e |
|
23-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: split add_reg into add_reg and add_reg_bo variants This shaves 2k off the final dri.so, and removes lots of pointless NULL, 0 passing. most like pointless - but it looked nicer to me. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d1cc87c0b64c2221b079015a6c3b593af83f0758 |
|
24-Mar-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: initial r600 dual src blending support survives piglit with no regressions on rv610/evergreen Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
34e53adc51ade8d53d74b6ae35bec90f1a6b9b29 |
|
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_upload_index_buffer
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e9abb2cd6e93681504fbcf323c790e3950304734 |
|
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_upload_const_buffer
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
82a7fe6f5c93e6787f99124974af0dbcafef5fb1 |
|
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle DISCARD_WHOLE_RESOURCE for buffers This should prevent stalls and therefore increase perfomance in some cases. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
68bbfc1afe210d82acfb14a78b0fd8c436a8f78c |
|
01-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework state emission of constant buffers Framerate in ipers: before: 43.6 FPS after: 46.6 FPS Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c76462b45f1e3a0aa2ee7971191e30e8a5f52015 |
|
30-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework state emission of vertex buffers This reduces a little of CPU overhead. The idea is to translate pipe vertex buffers directly into the CS and not using any intermediate representations. Framerate in Torcs: before: 32.2 after: 34.6 Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5c03d1fa0fbe130153a2e4c937f684c680ca20b2 |
|
30-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: kill off the fallback for crazy src_offset values st/mesa doesn't allow src_offset to be greater than stride and the maximum stride r600 supports is 2047. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
7f2156c9bd35893a82eff92ae780ca97e52f389d |
|
03-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dead code in r600_update_derived_state
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
80e4d18f84748f903cea07b9bba2d519cfa4163a |
|
08-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: rework rasterizer discard for evergreen" I will use SX_MISC instead. This reverts commit 734792e83fdc526623d8fe0a60479648c936bd53. Conflicts: src/gallium/drivers/r600/evergreen_hw_context.c src/gallium/drivers/r600/evergreen_state.c src/gallium/drivers/r600/r600_hw_context.c src/gallium/drivers/r600/r600_pipe.h
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e363dd5c7d8ba40984d937ad7487abbb5be439bc |
|
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: replace atom_ prefix with _state and _cmd suffixes
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
330b6c85c961b32f704ce8ec7dbf8cb7fc0b80a8 |
|
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup includes
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
6ed5855009a0ab8c6f88cad1ae517e49d8953d98 |
|
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move r600_context_bo_reloc to r600_pipe.h so that we don't have to include r600_hw_context_priv.h outside of the *hw_context* files.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
428146c14fed5b41e3da9e72488396f214b23b0d |
|
27-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: initialize VS_GS_OUT_PRIM_TYPE Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
f71f5edf78572ae87b9efb897df49efab1a53558 |
|
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: if pixel shader is NULL, bind a dummy one Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
734792e83fdc526623d8fe0a60479648c936bd53 |
|
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework rasterizer discard for evergreen Implement it right using STRMOUT_CONFIG.RAST_STREAM. This fixes rasterizer discard with points and lines. This also adds another derived state. It's a combination of rasterizer discard and streamout enable. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
aacd653834264b70a2537aff7914762b39f0683f |
|
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework scissor for r600-r700 We must use VPORT_SCISSOR, because that's the only one we can use for multiple scissor rectangles in ARB_viewport_array. R700 can use the VPORT_SCISSOR_ENABLE bit, but R600 doesn't have that and must emit a 8192x8192 rectangle if scissor is disabled. This commit also cleanups magic numbers in create_rs_state. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
370c8b5ee7666f4f515d63603afe8282b1b3c682 |
|
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove obsolete todo comments Also use XXX in the other ones, because it's the most used word for that purpose in Mesa. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
edc0ce292b5a34ba1e2ef96c0b530fbf8428e67d |
|
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove duplicated set_xx_resource functions Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e2809849ecac69615ece294a55ee355afaac33d3 |
|
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: add a depth misc state which depends on occlusion queries This is a state which is derived from other states and is actually the first state which doesn't correspond to any gallium state. There are two state flags: bool occlusion_query_enabled bool flush_depthstencil_enabled Additional flags can be added later if needed, e.g. bool hiz_enabled. The emit function will have to figure out the register values by itself. It basically just emits the registers when the state changes. This commit also adds a few helper functions for writing registers directly into a command stream.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
8f5c172c854a52b2a69b8383a55c76f1faa5f704 |
|
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate the main draw code The code was almost the same for r600 and eg. What can't be consolidated is in the *_prepare functions.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
182fd4c54476ced92b61412b0cac5be32e257b53 |
|
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move all invariant state from draw_vbo into start_cs
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
f126253040654d52db134063a69ebaf0c417d410 |
|
31-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: turn init_config into a command buffer for starting a CS This is the first pure command buffer. It contains CS initialization packets and emits invariant state (i.e. the registers which never or rarely change). The affected registers are removed from *_hw_context.c, so that both ways of emitting commands can co-exist. v2: emit context_control in cayman's start_cs too
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b0b81218132b6952de987dca21b9750d8d51b7f0 |
|
16-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove the workaround for quads and provoking vertex
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
73191026b4198a3dce86dac015f973616f76363a |
|
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant r600_context::vs_so_stride_in_dw
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
014198ec8860d8a0abfd6aa0ddd8db9d26febdbb |
|
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate set_blend_color code
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5cc9aa0e02f222fd6a8f16f65d8c7f5eda06f893 |
|
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate more translate functions
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9a20130e5f703e9e9279965183993b95907c7d6b |
|
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate some translate functions
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b0337b679ad4c2feae59215104cfa60b58a619d5 |
|
31-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: shorten expressions accessing family and chip_class
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0813e58a3e41faf6f2072d034dfdc6198a3a1fee |
|
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework cache flushing This also significantly improves the RV670 flush by using the CB1 flush *always* and also DEST_BASE_0_ENA, which appears to magically fix some tests. I am not entirely sure, but it's possible that RV670 flushing is fixed completely. v2: fix cayman by flushing texture cache instead of vertex cache Thanks to Dave Airlie for testing Cayman.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2fe521fa419ee153afb6295289dc5e95d3229858 |
|
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: add a new simple API for state emission
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
3b0467192057cc561b6d495d6445b2ed04fc3ebf |
|
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate some context_draw code
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e4340c1908a6a3b09e1a15d5195f6da7d00494d0 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: merge r600_context with r600_pipe_context The split made no sense.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
78293b99b23268e6698f1267aaf40647c17d95a5 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove u8,u16,u32,u64 types
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
85db52025189c88437f82369716ffe88429dc08b |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use r600_context_reg on r6xx-r7xx Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b1b969f670c50a15110fd41527ccbc7e885e1cdd |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use r600_context_reg on evergreen Just getting rid of things which use the register mask. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9344ab382a1765c1a7c2560e771485edf4954fe2 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: get rid of the mask in r600_pipe_reg Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
4a058aebb2ce340d0e03434a8820fdf5853b971e |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: get rid of the mask parameter in pipe_state_add_reg Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a494301f7fd4c93df67396d296a3edc6acfa44c3 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for PA_CL_CLIP_CNTL Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
97acf2ca59defd3bcba946cdb014ee7b440f9186 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for PA_CL_VS_OUT_CNTL Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a652cc40b9641d0b51e0a8533924a50073a50aae |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for PA_SU_SC_MODE_CNTL It's always emitted in draw_vbo. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2000086fcd5174f121f61dd6df5948c67101e148 |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't add PA_SC_LINE_STIPPLE to rasterizer_state It's always emitted in draw_vbo. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
84b4b2a8aacf6655d3f2a9f03dec3913a00aabdb |
|
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for CB_COLOR_CONTROL on r6xx-r7xx Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a2361946e782b57f0c63587841ca41c0ea707070 |
|
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework and consolidate stencilref state setting Stop using the register mask. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
1a9d2b764295f561aa9c24f504bd8cf3f95e7f54 |
|
24-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix linear and flat interpolation Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
54e8dcaad65cbe3603730414fd8d76ac53f89a86 |
|
20-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement clip vertex v2 Clip planes are uploaded as a constant buffer and used by the vertex shader to produce corresponding clip distances for hw clipping. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
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_state_common.c
|
2449695e822421fdcaf1c66dffc12d7d705ea69d |
|
17-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: improve the pipe_stream_output_info struct (v2) There are 3 changes: 1) stride is specified for each buffer, not just one, so that drivers don't have to derive it from the outputs 2) new per-output property dst_offset, which specifies the offset into the buffer in dwords where the output should be stored, so that drivers don't have to compute the offsets manually; this will also be useful for gl_SkipComponents from ARB_transform_feedback3 3) register_mask is removed, instead, there is start_component and num_components; register_mask with non-consecutive 1s doesn't make much sense (some hardware cannot do packing of components) Christoph Bumiller: fixed nvc0. v2: resolve merge conflicts in Draw and clean it up
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
bb1f0cf3508630a9a93512c79badf8c493c46743 |
|
02-Dec-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add support for virtual address space on cayman v11 Virtual address space put the userspace in charge of their GPU address space. It's up to userspace to bind bo into the virtual address space. Command stream can them be executed using the IB_VM chunck. This patch add support for this configuration. It doesn't remove the 64K ib size limit thought this limit can be extanded up to 1M for IB_VM chunk. v2: fix rendering v3: fix rendering when using index buffer v4: make vm conditional on kernel support add basic va management v5: catch the case when we already have va for a bo v6: agd5f: update on top of ioctl changes v7: agd5f: further ioctl updates v8: indentation cleanup + fix non cayman v9: rebase against lastest mesa + improvement from Marek & Michel v10: fix cut/paste bug v11: don't rely on updated radeon_drm.h Signed-off-by: Jerome Glisse <jglisse@redhat.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
ce44bae366ade59fb2dbdfbfe5a1ab8d24518a57 |
|
03-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: implement another upload codepath which unrolls indices Improves performance from cca 1 fps to 23 fps in Cogs. This new codepath is not always used, instead, there is a heuristic which determines whether to use it. Using translate for uploads is generally slower than what we have had already, it's a win only in a few cases.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
543b2331d7b45a29ccd3530daa2389e87e65d89b |
|
08-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement transform feedback r600: DONE. r700: MOSTLY (done but locks up). Evergreen: MOSTLY (done but doesn't work for an unknown reason). The kernel support will come soon.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e98521e0f3ef430adc0eb2587ffe83844e24be06 |
|
02-Dec-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: check shaders presence in r600_draw_vbo This patch should prevent the crashes when some shaders are absent, see https://bugs.freedesktop.org/show_bug.cgi?id=43341 Note this is a candidate for the stable branch. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c95bd12bec0834715894ee42e89e26c31a4ffac4 |
|
20-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use u_vbuf_mgr to set/get the index buffer
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
dd2227e3fd30970793e4998ca7837cb887fd52d5 |
|
20-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set MIN/MAX_VTX_INDX to 0 and ~0, respectively The CS checker doesn't check the regs and the state-tracker-provided values are not to be trusted. This also removes the hack for non-zero index bias.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
391e33ffbf01180d66d4c4e9a6c91fc17f9feaca |
|
06-Nov-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial linestipple support. It seems line loop stipple in hardware needs something I don't know, it might need a proper geometry shader who knows. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e532c710c60f0895e32af6562ac2855aa7d5eb63 |
|
04-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: move SPI setup to PS setup SPI semantic indices for PS/VS are now static, so we don't need to update spi config for every shaders combination. We can move the functionality of r600_spi_update to r600(evergreen)_pipe_shader_ps. Flatshade state is now controlled by the global FLAT_SHADE_ENA flag instead of updating FLAT_SHADE for all inputs. Sprite coord still requires the update of spi setup when sprite_coord_enable is first changed from zero (enabled), and then only when it's changed to other non-zero value (enabled for other input). Change to zero (disabling) and back to the same value is handled via global SPRITE_COORD_ENA. New field "sprite_coord_enable" added to "struct r600_pipe_shader" to track current state for the pixel shader. It's checked in the r600_update_derived_state. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
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_state_common.c
|
9212637f34c6600daaf162f95ca49e3c42abbc40 |
|
04-Nov-2011 |
Alex Deucher <alexander.deucher@amd.com> |
Revert "r600g: move SPI setup to PS setup" This reverts commit 9804cf3118ae7249098af2a9c78b36f4fb576ee4. This breaks r6xx.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9804cf3118ae7249098af2a9c78b36f4fb576ee4 |
|
04-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: move SPI setup to PS setup SPI semantic indices for PS/VS are now static, so we don't need to update spi config for every shaders combination. We can move the functionality of r600_spi_update to r600(evergreen)_pipe_shader_ps. Flatshade state is now controlled by the global FLAT_SHADE_ENA flag instead of updating FLAT_SHADE for all inputs. Sprite coord still requires the update of spi setup when sprite_coord_enable is first changed from zero (enabled), and then only when it's changed to other non-zero value (enabled for other input). Change to zero (disabling) and back to the same value is handled via global SPRITE_COORD_ENA. New field "sprite_coord_enable" added to "struct r600_pipe_shader" to track current state for the pixel shader. It's checked in the r600_update_derived_state. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
a19e6a8f2840be9a59e46c8d408658715ae47bf0 |
|
27-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant variable r600_pipe_context::blit
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
69e48e7220f018d874e85eea6962ec58b1feba87 |
|
26-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant assignment of pipe_draw_info in draw_vbo
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
344039d81d3cc079dd73b3b703ff613c344904e0 |
|
26-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup draw_vbo and add comments
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
765503bb5dc21dd9cacf11039fa1555b887804f2 |
|
25-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: move some code out of draw_vbo into new r600_update_derived_state
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
3d7934760930fdf208032aca2d933baf7768fdfc |
|
25-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup some magic numbers
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
dc651aff0c725846c86a32c1c076d66b3b38318f |
|
25-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't render if pipe_draw_info::count is 0 Also call r600_conv_pipe_prim earlier.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
6101b6d442b06a347c001fe85848d636ab7df260 |
|
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: merge r600_bo with r600_resource I have moved 'last_flush' and 'binding' from r600_bo to winsys/radeon. The other members are now part of r600_resource. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
44afac04eaac08eb49938001a65363bef6bd3d3b |
|
26-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: add index_bias to index buffer bounds This fixes ARB_draw_elements_base_vertex with max_index != ~0. NOTE: This is a candidate for the 7.11 branch.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
28fb79891101c23c75982726c81112caa96f9275 |
|
25-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: s/u_vbuf_mgr_/u_vbuf_
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0b3270b9b72c2ca4fad172752045d8fa93c1ad6e |
|
25-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: cleanup original vs real vertex buffer arrays It can now override both buffer offsets and strides in additions to resources. Overriding buffer offsets was kinda hackish and could cause issues with non-native vertex formats.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9f0dc855b274cb2591fc6896149f9a9cabcbcab5 |
|
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove r600_resource_buffer struct This subclass of r600_resource doesn't contain any useful members, so let's just use r600_resource.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c4519c3aec37f5cb3db8fe7e8ead13ae04e792b5 |
|
02-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix texture array filtering This fixes piglit/fbo-generatemipmap-array. It looks like SQ_TEX_SAMPLER_WORD0_0.TEX_ARRAY_OVERRIDE should be set for array textures in order to disable filtering between slices, which adds a dependency between sampler views and sampler states. This patch reworks sampler state updates such that they are postponed until draw time. TEX_ARRAY_OVERRIDE is updated according to bound sampler views. This also consolidates setting the texture state between vertex and pixel shaders.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
8fb7f1a8a4cbab5365491b4b41e50ff3f03306c8 |
|
27-Aug-2011 |
Kai Wasserbäch <kai@dev.carbon-project.org> |
r600g: Fix include style As explained in the thread starting at [0], the internal include style should be »#include "path/to/header.h"« for non-system includes. [0] <http://news.gmane.org/find-root.php?message_id=%3c4E5802BE.6020206%40vmware.com%3e> Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org> Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
01680ce2f350f44073e8f1adf3b36d48424d21fa |
|
16-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement NV_primitive_restart functionality (v2) Needed for GL3. v2: evergreen support I don't set PA_SU_SC_MODE_CNTL.MULTI_PRIM_IB_ENA. piglit/primitive-restart does pass though. Tested on RV730 and EG-REDWOOD.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
47dcfb8dab517e2c92af2f4813b0f5ad200b8b07 |
|
07-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set read/write usage flags for each relocation This takes advantage of the new GEM_WAIT ioctl when mapping buffers. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
041ed559e11ee99d720c8132428c07d8fe57ec81 |
|
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove an unused parameter from r600_bo_destroy Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e69dde5233a2fc6ad4c5483d079e1ea3a2123a59 |
|
23-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dummy function r600_bo_offset Always returned 0.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b3b946b0ab88c1d7edeab183d8ad5125ba223392 |
|
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Store the chip class in r600_pipe_context. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
3acae4591566ed9560798e23edb5416e6a614a21 |
|
25-Jun-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: limit fs_write_all shader rebuild to eg+ Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
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_state_common.c
|
d81126b714cd4de0ab036bb22bf4103f5fcec015 |
|
24-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: optimize spi update Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e251b3903a6aadd49cec6a9ce1ce466e3fcbbdcd |
|
21-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: use maths instead of a loop to work out mask. This is equivalent results with less looping. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
59a402cecd74e0a7a277f5af0b8a2707857846ed |
|
21-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: optimise draw vbo function a bit more. this drop a bunch of unnecessary checks (i.e. should be trapped at gallium level), and also removes the switch statement in favour of some calculated values for the vgt values. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d1f66a9424d087f81d0040aafde033bd5cb1ca72 |
|
19-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmask
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
016621ee142682153cb292cd3774e6d9377871ae |
|
14-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600: fix SPI inputs setup on r600/r700 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9346d895e7ff6c1f01b46513694542026ffba5cc |
|
13-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: skip SPI setup for position and face inputs fixes fdo bug 38145 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2743851c1a73305dd83e42b99edc49906d9c0a51 |
|
07-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: move depth texture flushing out of line. this needs a piglit run. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
04554c7d3a3b28e8103e50ed54f1ac57c6c11017 |
|
08-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: adjust vs/ps gprs on r600/r700 cards when needed. Ideally we'd have a compiler and register spilling and all that but this is good enough for now to avoid the gpu hang in piglit, glsl-vs-vec4-indexing-temp-dst-in-nested-loop-combined on r600/r700 cards. based on r600c patch Andre Maasikas <amaasikas@gmail.com> r600c: bump sq gpr resources if a shader needs more than default Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e66053d01c011e3bdcf1cdab8ea9224b868ae246 |
|
07-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: take alpha ref update out of line. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
cf0f02e501eb2eb8edcf2c4f6db826b0cdd31c9b |
|
03-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: move resource setting to its own structures. resource setting could be a fair bit more lightweight, this patch just separates the resource structs from the standard reg tracking structs in the driver, later patches will improve the winsys. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
4077336fc79353ca369dc5865f5fada920fc96e0 |
|
03-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: move spi update to only when states change. This updates the spi state after ps/vs binding or rasteriser state change. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
de0adb691feb2ae7f64dd74ed6bc5a9e0f493631 |
|
03-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: make conv pipe prim table driven. This is a lot more branch predictor friendly, it actually showed up in cachegrind profiles. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
51d0892ee2daaa442a48abff2329e1485dd337e8 |
|
03-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: sampler and texture state doesn't need a range/block. These are handled separately in the winsys, so don't need the calculations done at this point. this manifested as a crash in point-sprite, Thanks to XoD on #radeon for pointing it out. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b0dc2d0c3b964c2670554a91b4ee79360fd5934a |
|
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add spi state and move spi/vgt to modify register This modifies the VGT state and move the SPI setup to its own discrete state. It then just sets the SPI state up and the VGT state up once and modifies them thereafter. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
573758fd094431c8b3220786cea28dfdb4cfad1c |
|
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: decrease CPU time on set buffer resources This splits the initialisation and the setting of values in the resource buffers. We only should end up initialising once and updateing with new values when needed. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
4423c79ddf6853d1d4594afda3e1262c1b9af4f5 |
|
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: work out range/block etc at state build time. This moves the overhead of working out the range/block to state build time, it also allows the compiler to use constants for a lot of things instead of working them out each time. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
42502b6f03230b828121f60143190c39bc5c8dda |
|
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: deinline r600_pipe_state_add_reg. This is going to get too big to be a forced inline. Also going to remove it from some hotpaths. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9eb86f89a9d6471a92519064547a3937a6f89762 |
|
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: optimise state setting in r600_draw_vbo. This drop the r600_draw_vbo CPU usage on a run of nexuiz from 1.40% to 0.72% in sysprof for me on my Fusion APU. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
f60235e73a5260f92630ce472e06d8c5c00414fb |
|
05-May-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Match alpha ref precision to color format precision. This fixes piglit fbo-alphatest-formats on Evergreen. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d7577ae3a6d6e174ab36d244f6bd4dedd63c3d1d |
|
25-Apr-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Cleanup the big endian support a bit. In particular, make sure the code is at least compiled on little endian systems. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
d737857ed2ff4313fd6046dcd80018c6308a53c5 |
|
25-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: drop r600_helper.c no point in it move the one function into state common Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0a9cec3475fb14be8aa5fa66557d338556cd8ed5 |
|
24-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix glean clipflat test. the provoking vertex doesn't apply to quad/strip/polygon. This fixes clipFlat on r600g. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
843dfe3206c4f397c7911b748373dde5540392a4 |
|
19-Apr-2011 |
Cédric Cano <ccano@interfaceconcept.com> |
r600g: add big endian support for r6xx/r7xx Signed-off-by: Cedric Cano <ccano@interfaceconcept.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
719f07e45a4cd43d1edce196512b54f36ada53b1 |
|
08-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: set start instance correctly
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
c33e091d17b90df61f7b3873a2f124c4f26adf06 |
|
28-Feb-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: indentation fixes Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
96bbc627f369c0100b950f81531b1fe9ef586c34 |
|
28-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: implement instanced drawing support
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
e9d993e9b9d7ea2b4a9be7caa4e5a73fe5126cbe |
|
14-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: do not destroy the original index buffer when translating indices Because we only translate a subrange of the buffer.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
077c448d184799e0d9ec962013ec784c6a5c1807 |
|
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Add support for relative addressing on constant buffers. Relative addressing of constant buffers can't work properly through the kcache, since you can only address within the currently locked kcache window. Instead, this patch binds the constant buffer as a shader resource, and then explicitly fetches the constant using a vertex fetch with fetch type VTX_FETCH_NO_INDEX_OFFSET from the shader. There's probably still some room for improvement, doing the fetch right before the instruction that needs the value may not be quite optimal for example.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
5c59eebfae55240a2308c02b0a6ad971c9b83304 |
|
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Generalize the pipe_add_vertex_attrib() functions. This allows them to be used for VS or PS buffer resources as well.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b9fd1a1e4b2121225195056ea1b679d62c399ddb |
|
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Remove vs_resource and ps_resource from the pipe context. These are practically unused, only the vs_resource array is being abused for fetch shader resources.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
aa8a2224a3df111a1613f0baefebc00883e1b70b |
|
07-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use the new vertex buffer manager
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
b13b7b86b2e1165b24a2df20cb67f9f3baa17b13 |
|
03-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: rework dirty / depth texture tracking. this adds a flag to keep track of whether the depth texture structure is the flushed texture or not, so we can avoid doing flushes when we do a hw rendering from one to the other. it also renames flushed to dirty_db which tracks if the DB copy has been dirtied by being bound to the hw. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
7fb722c35c2d2cb74b14417a8ddc0684ed6dd838 |
|
31-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix invalid ref count handling in r600_set_constant_buffer Only decrement ref count if r600_upload_const_buffer really changes the buffer.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
38b54158b68479e1f97c8452ba0d67f50dce7582 |
|
30-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Update the flushed depth texture after drawing to the corresponding texture. I know Jerome will probably rewrite the way depth textures work sometime soon. For the time being this should at least make common depth texture usage for shadowing work properly though.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
73a40d1383071fe25599509d218f4c40d049988d |
|
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework vertex format fallback 1) Only translate the [min_index, max_index] range. 2) Upload translated vertices via the uploader.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
70e656b4ebdd3cd2962ce66544ae9af349ecd59a |
|
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix vertex format fallback This fixes: - piglit/draw-vertices - piglit/draw-vertices-half-float
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
8c631cfeae29b5236928f759e222aa35e6e4984c |
|
28-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework vertex buffer uploads Only upload the [min_index, max_index] range instead of [0, userbuf_size]. This an important optimization. Framerate in Lightsmark: Before: 22 fps After: 75 fps The same optimization is already in r300g.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
15730a8207374936e354d945730070cb29c9547c |
|
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate set_constant_buffer functions
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
73fb2b7c9074c8878e8ff617ad6d6a21b93b66f2 |
|
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate vertex_buffer_update functions
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2d7738eb2bee41656953d1173926f546c6711bad |
|
28-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate draw_vbo functions (v2) Added a conditional to spi_update per Dave's comment.
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
02f8f134643f631364ca621fe0b6d6b72449e00c |
|
28-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: add back u_upload_mgr integration I can't see a performance difference with this code, which means all the driver-specific code removed in this commit was unnecessary. Now we use u_upload_mgr in a slightly different way than we did before it got dropped. I am not restoring the original code "as is" due to latest u_upload_mgr changes that r300g performance benefits from. This also fixes: - piglit/fp-kil
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
2dd189a824d4c5c5157aaf381d5e424317a8d1e4 |
|
22-Dec-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix evergreen segfaults. evergreen was crashing running even gears here. This is a 7.10 candidate if its broken the same. Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
abe9ffc25c8d65b48ae02cdc8445b212b9f61632 |
|
20-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: properly unset vertex buffer Fix bug http://bugs.freedesktop.org/show_bug.cgi?id=32455 Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
54773415f407678eb9728ac347cc8302e2d76c74 |
|
14-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix segfault when translating vertex buffer Note the support for non float vertex draw likely regressed need to find what we want to do there. candidates for 7.10 branches Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
4523285e518702ac9be839851765d8d0d2461eca |
|
13-Dec-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix rendering with a vertex attrib having a zero stride The hardware supports zero stride just fine. This is a port of 2af8a1983180fc0168c1e0e53bcc69ee3d684ea4 from r300g. NOTE: This is a candidate for both the 7.9 and 7.10 branches. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
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_state_common.c
|
fa86fc564aea4e40c89f6fc889e6a5bf817634b3 |
|
04-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: build fetch shader from vertex elements Vertex elements change are less frequent than draw call, those to avoid rebuilding fetch shader to often build the fetch shader along vertex elements. This also allow to move vertex buffer setup out of draw path and make update to it less frequent. Shader update can still be improved to only update SPI regs (based on some rasterizer state like flat shading or point sprite ...). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
0b841b0349d7aca218eac4e9d9b7b1406ad71944 |
|
03-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: update polygon offset only when rasterizer or zbuffer change Aim is to build as little state as possible in draw functions. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
7ffd4e976fd11b8c083c2927effd25a2f79ac841 |
|
17-Nov-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: code cleanup (indent, trailing space, empty line ...) Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
a20c2347a0bb9e0e1591b070ee5d0cac81168114 |
|
24-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop more common state handling code
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9612b482e2c8e994709bcaab79185224b4d76670 |
|
23-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: merge more of the common r600/evergreen state handling
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
9f9d24c89a2286f952b123c703e8268d2f1aa719 |
|
23-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed r600_vertex_element leak. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|
f39e6c9c816b603a4ed8fd8cda8569b7e13c1f68 |
|
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: start splitting out common code from eg/r600. no point duplicating code that doesn't touch hw, also make it easier to spot mistakes
/external/mesa3d/src/gallium/drivers/r600/r600_state_common.c
|