cd95b673479f8a8ac3d5aabf387d33f705e156e9 |
04-Jan-2013 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix int->bool conversion in fence_signalled NOTE: This is a candidate for the stable branches. (cherry picked from commit 9f0ddbc9e4b44f165c96841fe32ebc66c68d2709)
600_pipe.c
|
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>
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
88258e0dfe2371c2d591f27fba3511977e31e5ea |
18-Jan-2013 |
Andreas Boll <andreas.boll.dev@gmail.com> |
Revert "r600g: try to fix streamout for the cases where BURST_COUNT > 0" This reverts commit 42f71b4861b9d01a8f925fea3182fc1a292222f3. Fixes the following piglit regressions on my rv770 ./bin/ext_transform_feedback-output-type float[2] -auto -fbo ./bin/ext_transform_feedback-output-type float[2]-no-subscript -auto -fbo ./bin/ext_transform_feedback-output-type int[2] -auto -fbo ./bin/ext_transform_feedback-output-type int[2]-no-subscript -auto -fbo ./bin/ext_transform_feedback-output-type uint[2] -auto -fbo ./bin/ext_transform_feedback-output-type uint[2]-no-subscript -auto -fbo
600_shader.c
|
4cf2be408eeabd7ae8b0d3c3c81a6dc17e98e323 |
17-Sep-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Use LOOP_START_DX10 for loops LOOP_START_DX10 ignores the LOOP_CONFIG* registers, so it is not limited to 4096 iterations like the other LOOP_* instructions. Compute shaders need to use this instruction, and since we aren't optimizing loops with the LOOP_CONFIG* registers for pixel and vertex shaders, it seems like we should just use it for everything. Reviewed-by: Marek Olšák <maraeo@gmail.com> (cherry picked from commit 810345492eca34c2ad12728b5491a4691cc62ec2) Fixes a hang on the following piglit test on my rv770 ./bin/ext_timer_query-time-elapsed -auto -fbo
g_asm.c
600_asm.c
600_shader.c
|
0ac90296a092f846647812318913b0e492775f31 |
21-Dec-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: always use a tiled resource as the destination of MSAA resolve i.e. we have to allocate a temporary tiled resource if dst isn't tiled. This fixes hardlocks on r6xx-r7xx, though using a linear resource is forbidden on later asics as well. NOTE: This is a candidate for the stable branches. (cherry picked from commit 9c6410e5c3ffc74564fae5afcc1b6982759cdd01) Conflicts: src/gallium/drivers/r600/r600_blit.c src/gallium/drivers/r600/r600_texture.c
600_blit.c
600_resource.h
600_texture.c
|
42f71b4861b9d01a8f925fea3182fc1a292222f3 |
19-Dec-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: try to fix streamout for the cases where BURST_COUNT > 0 The burst was incorrectly used, because ELEM_SIZE was always 0. I don't know if the burst works, because I don't know of any test which uses it. NOTE: This is a candidate for the stable branches. Reviewed-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 6a2ec765bd22ae5d94e5fdac8507c659175efa4e) Conflicts: src/gallium/drivers/r600/r600_shader.c
600_shader.c
|
d0a9ab29b2c8abf2900b1095883cba71b05b5cd9 |
06-Nov-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix lod bias/explicit lod with cube maps. While developing cube map array support I found that we didn't support this properly, also piglit didn't test for it at all. I've submitted a test to piglit to check for this, and this fixes explicit lod and lod bias with cube maps. NOTE: This is a candidate for the 9.0 branch. Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 037b4f80384c72c12e31192d1a30411d4660972d)
600_shader.c
|
8b2922ff5aa68b5dca90d5b83d1e31da48b069b3 |
23-Nov-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix broken streamout if streamout_begin caused a context flush This fixes graphics corruption in the case where the DISCARD_RANGE flag is used to map a buffer. NOTE: This is a candidate for the stable branches. (cherry picked from commit cff4c948ed2708a6eb4b090ae87443a707cbd67f)
600_hw_context.c
|
b55c98ea4124f63a6a4b5ecf349ae80404449695 |
26-Oct-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: advertise 32 streamout vec4 outputs to match the varying limit. (cherry picked from commit b78b62497f1e5cc64eb924c64e4685fe5d814fd7)
600_pipe.c
|
1106bbc7d6cd024d1e20573e281ea4c48c5eaf19 |
25-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix streamout on RS780 and RS880 The latest kernel from git is required. Transform feedback (along with GL3.0) is turned off on older kernels. (cherry picked from commit d063c7b1421a6e8ad4e2efc1bf913920766cc5ee)
600_hw_context.c
600_pipe.c
|
7851d398def2df3f6836a500d67123eed50f3943 |
06-Oct-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix possible issue with stencil mipmap rendering Somehow I only hit this issue with my latest libdrm changes. This won't be needed with DB texturing. NOTE: This is a candidate for the 9.0 branch. (cherry picked from commit 9dfca930d7fcfda6767d3be9b1690d010f08fea5)
vergreen_state.c
|
d9197f90372dec8a293d2d3e576261c6e3d38750 |
25-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix EXP on Cayman NOTE: This is a candidate for the stable branches. (cherry picked from commit 96f50d0cf7bb13507f272d2f6ef9a6fca24d18e1)
600_shader.c
|
fc62ee7e0d642e084175f36433aa42af63400799 |
25-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix RSQ of negative value on Cayman NOTE: This is a candidate for the stable branches. (cherry picked from commit fd5c5384648a0d6191c19748a2d1f1148c5ee98f)
600_shader.c
|
50ba62e231272ee207402a778a2dc5cbedd77d1f |
25-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix instance divisor on Cayman Not sure if this is the best way to fix it. NOTE: This is a candidate for the stable branches. (cherry picked from commit 836325bf7edd797e02ab0717a05ca5c51aa1ac93)
600_asm.c
|
a940c74bc3bb129b074601cc7967c331e2b97322 |
19-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set QUANT_MODE on Cayman too This fixes piglit/fbo-blit-stretched. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit bfe489c76b6fd58bc4d8cc7f7a3859ff3dc1782e)
vergreen_state.c
|
c3454d95af46d6de52f319e538378dee57d6fe36 |
08-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: do not require MSAA renderbuffer support if not asked for to allow stencil-only sampler-only formats (like X24S8) NOTE: This is a candidate for the stable branches. (cherry picked from commit df5e2c058f73b72909fa99a2a189f5877525e3bf)
vergreen_state.c
600_state.c
|
86735d78e67c44a6ab786c85562c8fca2384f4a5 |
13-Sep-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use a staging resource for large transfers It kills performance if the resource is linear. (cherry picked from commit e386972f5bcb59a37489ea627030315bf8961fd4)
600_texture.c
|
f94b6d706ff4340277b9c68d2bc51602792c5739 |
13-Sep-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: reduce quant mode on evergreen+ Seems to have an affect on the allowable range of values. Set evergreen+ to 1/256 to match 6xx/7xx. fixes: https://bugs.freedesktop.org/show_bug.cgi?id=54877 Signed-off-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit b33d7eaa5e77b5367584fe183c46f8c3d9a06760)
vergreen_state.c
|
c586fce4fb537e904e35cb5197b6b7fe02217acb |
03-Sep-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: adjust QUANT_MODE for higher precision Use 1/256 for R6xx/7xx, 1/4096 for evergreen, instead of default 1/16. Helps to pass some piglit tests (fbo, multisample). Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit f44bda17f515c411071ca8744ebd96039d9c583b)
vergreen_state.c
vergreend.h
600_state.c
600d.h
|
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>
600_state_common.c
|
0e470533ad0aecb58341a8935618c8cdf642bedd |
30-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable transform feedback on Cayman There doesn't seem to be anything wrong with it.
600_pipe.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.
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_blit.c
600_pipe.h
600_state_common.c
|
c2e9dd0276464ed61d48d3d80b9be8228767dfe2 |
26-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable MSAA on r6xx by default DRM 2.22.0 is required though. Also require the new DRM for r700, as there are some important fixes for that generation too.
600_state.c
|
2f6eb3afb725112b2a0b110493f5062f80a78a3f |
26-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable MSAA depth decompression on r6xx
600_blit.c
|
78354011f99c4103345f8f32e10b0b4b884ebdaf |
26-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement color resolve for r600 The blend state is different and the resolve single-sample buffer must have FMASK and CMASK enabled. I decided to have one CMASK and one FMASK per context instead of per resource. There are new FMASK and CMASK allocation helpers and a new buffer_create helper for that.
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.c
600_resource.h
600_state.c
600_texture.c
|
863e2c85b9c59d717ad786c709638d948ff0f38e |
26-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix CB_SHADER_MASK and CB_TARGET_MASK for r6xx
600_state.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.
600_pipe.c
600_pipe.h
600_state_common.c
|
8698a3b85dd89c5d2fa473e7942b7dc8d25f3c8f |
02-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement MSAA for r700 Reviewed-by: Jerome Glisse <jglisse@redhat.com>
600_hw_context.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_texture.c
600d.h
|
edf22a5c6de5107c3f67357dad7cebbc8daf8368 |
21-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: change programming of CB_SHADER_MASK on r600-r700 This one actually makes more sense and gives the expected value for MSAA resolve. Reviewed-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
|
999b7f66655c86eb8e8e1686631511e27f50cc98 |
27-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix relative addressing on RS780 and RS880 They should be treated like RV670. Tested-by: Michel Dänzer <michel.daenzer@amd.com>
600_asm.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>
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_blit.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_state_common.c
600_texture.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>
600_blit.c
600_pipe.h
600_resource.h
600_state_common.c
600_texture.c
|
3ac54ac2c85d3ed035a9f1cbcc7de7010c609cfb |
23-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix evergreen 8x MSAA sample positions The original samples positions took samples outside of the pixel boundary, leading to dark pixels on the edge of the colorbuffer, among other things. Reviewed-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
|
1cfec6e2c8f15b2448e0297f4ca975ed7ab0c505 |
19-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set CB_TARGET_MASK to 0xf and not 0xff for resolve on evergreen independent_blend_enable must be true, so that the colormask isn't replicated in all colorbuffers. Reviewed-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.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>
600_pipe.c
600_pipe.h
600_state_common.c
|
59361d76a5b0b6b77d6e6bc976e02df2e8df9ec3 |
20-Aug-2012 |
archibald <archibald@ethernull.org> |
r600g: Move common compute/3D register init to its own function Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
vergreen_compute.c
vergreen_state.c
600_pipe.h
|
f36c404f900dee95ecfe9d5c6a7c6efdf5e25963 |
16-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable tiling for 422 formats again
600_texture.c
|
795834432b11418d82db9a5580c916b3bee1a8f2 |
07-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix blits of subsampled formats
600_blit.c
|
6fd9218bb44b8719da60ce325d4f41c4a611e871 |
16-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix copying between NPOT mipmapped compressed textures We aligned the dimensions to the blocksize, then divided by it (in r600_blit.c), then minified, which was wrong. The minification must be done first, not last. This fixes piglit/fbo-generatemipmap-formats with S3TC and maybe a bunch of other tests too. Tested on RV730.
600_texture.c
|
b8e9cf5d965ce09227cd9875c4381c73f237f196 |
15-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: make F2U trans-only on r600-r700 This fixes a failing assertion in r600_asm.c.
600_shader.c
|
0d7e00281505b4537a8aee9002792d56619269a4 |
14-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set CB_COLOR_INFO to INVALID for disabled colorbuffers on r600-r700 Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
600_state.c
|
951ac46a6a0a901b53a518c8dcde734578cbf228 |
14-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename r600_resource_texture to r600_texture
ompute_memory_pool.c
vergreen_compute_internal.c
vergreen_state.c
600_blit.c
600_pipe.h
600_resource.h
600_state.c
600_state_common.c
600_texture.c
|
952c90576753550f4deed4dac42d8fd6129a9cce |
14-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: always put tiled textures in VRAM
600_texture.c
|
773ff5705f3b2d88fb7094b8d2e051bb684c2323 |
12-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup r600_resource_texture in favor of radeon_surface
vergreen_compute_internal.c
vergreen_state.c
600_blit.c
600_resource.h
600_texture.c
|
362a25aac5f8cd71c08ad92b4b19be6712d8fd72 |
12-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused parameter in r600_texture_create_object
600_texture.c
|
c4993d15eb07d95ac465b5f25ea96072e4b008bf |
12-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fixup the usage flag for the flushed depth texture
600_texture.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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
8f597d57e959830040473b548e0e04cfc63866c2 |
04-Aug-2012 |
Vincent Lejeune <vljn@ovi.com> |
r600g: Glue to handle predicate aware output from llvm Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_shader.c
|
72f7632c6bbbfc062ac7d90290e99f71272f6059 |
01-Aug-2012 |
Vincent Lejeune <vljn@ovi.com> |
r600g: Fix instruction group merge when there are predicated insts. Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.c
|
56227f875bdff6ef4fd53b09ba267c786ae9dac2 |
01-Aug-2012 |
Vincent Lejeune <vljn@ovi.com> |
radeon/llvm: Do not use PV/PS if PRED_SEL does not match Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.c
|
da676eab93e7dad30b574b4eb4cffd4df952e819 |
01-Aug-2012 |
Vincent Lejeune <vljn@ovi.com> |
r600g: Add support for predicates Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.c
600_asm.h
600_shader.c
700_asm.c
|
e0cc61bd91f5ef84bacaf5e7c6cda9eeefed478d |
13-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium/u_blitter: document custom meta helpers
600_blit.c
|
b3b5bb9ddb05989b2dc5fc17f88491bbd0e6ecac |
15-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable handling of DISCARD_RANGE https://bugs.freedesktop.org/show_bug.cgi?id=53130
600_buffer.c
|
44f14ebd7b9ba7186342039d2602fdd6ea5077f5 |
05-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement timestamp query and get_timestamp hook Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.c
600_query.c
|
1932bc8aaeb59287a7f769b0cb9a55f49dd6d553 |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable MSAA on evergreen by default v2: add the DRM version check
vergreen_state.c
|
870af19d70bf985a253f1ea8398fb7ec8704cf9c |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement copying between MSAA textures
600_blit.c
|
0f86915c5322b096b7154b6c84e21288074b775d |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement MSAA color resolve
vergreen_state.c
600_blit.c
600_pipe.c
600_pipe.h
|
94b634eca0e2bd32d4b5bd92d06d510eae8a5625 |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement MSAA depth-stencil decompression and resolve and integer textures, which are resolved the same as depth, I think.
vergreen_state.c
600_blit.c
600_pipe.h
600_texture.c
|
6d3ad2dd2ba3ccdd211dbc618404519930631be2 |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement TXQ_LZ opcode
600_shader.c
|
4b78df9c81f1ca8af2b750616de8ff440e99c3c1 |
09-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement MSAA rendering and texturing for evergreen and cayman
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_texture.c
|
a01791add08fbcb5386e0e9209ba21ed58fbdc42 |
22-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement set_sample_mask
vergreen_state.c
600_blit.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
6517225078a6a56c9fb3c1ea9f310992e6400b77 |
22-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement alpha-to-coverage
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_hw_context.c
600_state.c
600d.h
|
26cb887ea213be2445e0fd64364d9264ed4fbfd2 |
04-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement alpha-to-one
vergreen_state.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
|
4f215952760b2e5a92b25ddfa89469c1ec110160 |
04-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove support for 3-channel colorbuffers We have no sampler support for them.
vergreen_state.c
600_state.c
|
825b45366d5308fd3e8e71c0c1943cb6ca8f69ea |
25-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium/u_blitter: implement blitting multisample resources It can blit only one sample at a time (it should be called in a loop).
600_blit.c
|
2fae8227ad906a6d6290134368b62f5dd3a1858e |
13-Aug-2012 |
Tom Stellard <thomas.stellard@amd.com> |
radeon/llvm: Use correct opcocde for BREAK_LOGICALNZ_i32
600_shader.c
|
1ea263fccb9259218addec9e805db075be9eba7c |
07-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused parameters in texture functions
600_texture.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>
vergreen_hw_context.c
vergreen_state.c
600.h
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
cb922b63eba1d75706354614bc5de4d39dbe9ad3 |
02-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: precompute color buffer state in pipe_surface and reuse it
vergreen_compute_internal.c
vergreen_state.c
600_pipe.h
600_resource.h
600_state.c
|
cdc681c3ad746fe8adab4ea71358bcc54e024ff9 |
02-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: precompute depth buffer state in pipe_surface and reuse it This is done on-demand, because we don't know in advance if a zbuffer will be bound as depth or color.
vergreen_state.c
600_resource.h
600_state.c
|
e6dfc8c77bc00c06a35270a4e50aa52c738c8629 |
01-Aug-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: simplify create_surface
600_texture.c
|
581f7e3101980a4e1068bb75c2eca60bb2071229 |
29-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: drop the old texture allocation code Made obsolete by the libdrm surface allocator.
vergreen_compute_internal.c
vergreen_state.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_texture.c
|
7c371f46958910dd2ca9487c89af1b72bbfdada9 |
28-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: make sure copying of all texture formats is accelerated
600_blit.c
600_texture.c
|
e2f623f1d6da9bc987582ff68d0471061ae44030 |
28-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't decompress depth or stencil if there isn't any
vergreen_state.c
600_blit.c
600_pipe.h
600_state.c
|
ea72351a919c594e7f40e901dca42aebb866f8a6 |
29-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: correct texture memory size for Z32F_S8X24 on evergreen
600_texture.c
|
c8ff737a18672c86f4ec01b25b4893550667b17c |
27-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium/u_blitter: remove fallback for stencil copy that all drivers skipped Reviewed-by: Brian Paul <brianp@vmware.com>
600_blit.c
|
cd97a5f660399212a23b6dcd02906231f2dc5525 |
04-Aug-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix F2U opcode translation Signed-off-by: Marek Olšák <maraeo@gmail.com>
600_shader.c
|
fdd8df20e4a730f80bf4c331012d832bffd7072e |
24-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Emit dispatch state for compute directly to the cs We no longer rely on an evergreen_compute_resource for emitting dispatch state. Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
vergreen_compute.h
vergreen_compute_internal.c
vergreen_compute_internal.h
|
dc0b8a46289d0e6b10c542df0856d51a0aabf9b0 |
24-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Initialize VGT_PRIMITIVE_TYPE in the start_cs_cmd atom The value of this register will always be DI_PT_POINTLIST for compute shaders. Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
|
d3b013049126fb44d65a0a67001b04acbe778613 |
24-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Atomize compute shader state Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
vergreen_compute.h
vergreen_state.c
600_pipe.h
|
54973910676951050092c096046b213f6a6944b5 |
24-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add helper functions for emitting compute SET_CONTEXT packets Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreend.h
600_pipe.h
|
11ff18fcf5b92cee4a8e69425fc321f0ef272ecf |
26-Jul-2012 |
Eric Anholt <eric@anholt.net> |
automake: Remove OPT_FLAGS. If you want to change your compiler arguments, just set CFLAGS/CXXFLAGS. Having Mesa have this separate variable is a great way to have your arguments not thoroughly propagated to all compiler invocations. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
akefile.am
|
87a1c4f233f597b8b366f7a2c0f1c5b7124d8d8e |
26-Jul-2012 |
Eric Anholt <eric@anholt.net> |
automake: Remove ARCH_FLAGS. In all current uses, it was appended to CFLAGS, which already had -m32. If you want to do some other flag supplied to compiler invocations, there's CFLAGS/CXXFLAGS. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
akefile.am
|
1ffac44e83a6fa6f486c6493e1d4eda259938ebb |
24-Jul-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: enable streamout only on 2.14 or latter kernel The kernel streamout support was supposed to get into 3.3 along the tiling change and thus use the same kernel version bump of 2.13 to report userspace that streamout register were supported. This is not what happen. So as streamout kernel support did not bump the kernel driver version, rely on kernel 2.14 version bump to know if streamout is enabled or not. Which means you need at least 3.4 kernel. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_pipe.c
|
cb149bf9e12aebd38bd0a6d009673e8400659110 |
23-Jul-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: don't emit forbidden reg with old kernel on evergreen Fix https://bugs.freedesktop.org/show_bug.cgi?id=52313 Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
|
b7b5a77ec0fa715f09cef32083f818e745772f91 |
23-Jul-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: don't emit forbidden register on old kernel Fix https://bugs.freedesktop.org/show_bug.cgi?id=52313 Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state.c
|
bc4b4c605cc04138e5209782fa5939bfd71930bd |
14-Jul-2012 |
Vincent Lejeune <vljn@ovi.com> |
radeon/llvm: Fix a bug with IF LOGICALNZ with int operand Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_shader.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.
600_state_common.c
|
99c65bac341f808279a8a847158ace4f058aa72e |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement wait-free buffer transfer for DISCARD_RANGE Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_blit.c
600_buffer.c
600_pipe.c
600_pipe.h
|
8ac9801669c68c33d9dd35a57baf985a4be49eff |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: accelerate buffer copying This will be useful for efficient handling of the DISCARD transfer flags. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_blit.c
|
f237fd431b512f1d67c88a8d29581b5bef143bbf |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: update R600_MAX_DRAW_CS_DWORDS to take draw-opaque into account
600_hw_context_priv.h
600_state_common.c
|
30257c32910c3f7ac2b9cc24399d6be196d34d26 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move VGT_STRMOUT_DRAW_OPAQUE_OFFSET initialization into invariant state
vergreen_state.c
600_state.c
600_state_common.c
|
d9ba1b0beb6a78e208128e758bd22173fe4a8234 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: only set the index type if drawing is indexed
600_state_common.c
|
1cfb55c5098e17cd8e6188fc6382b393a9013e4c |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove debug code for streamout
600_hw_context.c
|
ff9a49328e5d8b647aeb7511a01e5a41592a2799 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_context_draw_opaque_count
600.h
600_hw_context.c
600_state_common.c
|
1b699a483233d29699865e317f1009a58ebd5416 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix alphatest without a colorbuffer on evergreen
vergreen_state.c
|
82a1d241754a52934b41bd152d25741b0c9c6294 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix alphatest without a colorbuffer on r6xx-r7xx
600_state.c
|
de4fd087cbccd47e703f750968b79525ddbe4554 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: always derive alphatest state from the first colorbuffer
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
bc2f5fc01e678ecd19f921e5bc7bd55c131dde66 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: atomize alphatest state
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_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.
600_state_common.c
|
43e226b6efb77db2247741cc2057d9625a2cfa05 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: optimize uploading depth textures Make it only copy the portion of a depth texture being uploaded and not the whole 2D layer. There is also a little code cleanup.
600_texture.c
|
b242adbe5cfa165b252064a1ea36f802d8251ef1 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove needless wrapper r600_texture_depth_flush
600_blit.c
600_resource.h
600_texture.c
|
611dd529425281d73f1f0ad2000362d4a5525a25 |
18-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: init_flushed_depth_texture should be able to report errors
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
9d699cd845f3544fa6e149fa4ffb1d131d32b482 |
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix lockups with and enable dual source blending on evergreen GL_ARB_blend_func_extended is now enabled on all chipsets.
vergreen_state.c
600_pipe.c
|
c26fadf195876271e559f844c1fc88effa6a60c1 |
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused code after conversion of sampler views
vergreen_hw_context.c
600.h
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_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.
vergreen_state.c
600_blit.c
600_hw_context.c
600_pipe.h
600_state.c
600_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
600_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.
600_blit.c
600_pipe.h
600_state_common.c
|
e5de73cafdc8febb16d991212b58ad320d67e285 |
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate and optimize sampler states changes for evergreen Only set sampler states which changed.
vergreen_state.c
|
883c43cdd48b91faff67fe43512e1225c2f8d877 |
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't invalidate texture caches when setting sampler states Changing sampler states doesn't change resource bindings.
vergreen_state.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.
vergreen_state.c
600_pipe.h
600_state.c
600_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
vergreen_state.c
600_pipe.h
600_state.c
600_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.
vergreen_compute.c
vergreen_state.c
600_blit.c
600_buffer.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
f4f2e8ebe1bad91b2c4339a8280d516738bd27d2 |
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't call inval_shader_cache in r600_context_flush twice It's already called in r600_constant_buffers_dirty.
600_hw_context.c
|
018e3f75d69490598d61059ece56d379867f3995 |
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix all failing depth-stencil tests for evergreen
vergreen_state.c
600_resource.h
600_texture.c
|
4247fd9928b0301a300c0e1e14ed45560e0afc33 |
13-Jul-2012 |
Christian König <deathsimple@vodafone.de> |
radeon/llvm: fix compiling when llvm is active, but opencl isn't Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_llvm.c
|
bc6bff79475ab0996923a105fa699a19fb65455e |
15-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: compute needed CS space for vertex buffers correctly
600_state_common.c
|
15ca9d159e50815b0bfe60df8873f48c32a59ca5 |
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't check the R600_GLSL130 env var GLSL 1.3 has been enabled by default for quite a while.
600_pipe.c
600_pipe.h
600_shader.c
|
e634651024d6507cf325999494a3e2630f3072c8 |
14-Jul-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix DB decompression on evergreen Separated out of the hyperz patch by Marek with minor modifications. Signed-off-by: Marek Olšák <maraeo@gmail.com>
vergreen_hw_context.c
vergreen_state.c
600_blit.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>
vergreen_compute.c
vergreen_state.c
600_buffer.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
9b76ee70b2ceebb52cc5edc574df9593cbac03b3 |
12-Jul-2012 |
Tom Stellard <tstellar@gmail.com> |
r600g: Unify 3D and compute vertex buffer emission Signed-off-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
vergreen_compute_internal.c
vergreen_compute_internal.h
vergreen_state.c
600_pipe.h
|
0b4c5dbb8c5ee69a341c1f66f70c54e3fe2db970 |
14-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix grammar constant_buffer -> constant_buffers
vergreen_state.c
600_state.c
|
e773a48a3bf9ab839f10794506c0a492b7eab883 |
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix uploading non-zero mipmap levels of depth textures This fixes piglit/depth-level-clamp. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_texture.c
|
fe1fd675565231b49d3ac53d0b4bec39d8bc6781 |
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't flush depth textures set as colorbuffers The only case a depth buffer can be set as a color buffer is when flushing. That wasn't always the case, but now this code isn't required anymore. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_blit.c
|
6842d5fced16b275a06d39fe1d38b8326a11c84e |
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't set dirty_db_mask for a flushed depth texture A flush depth texture is never set as a depth buffer and never flushed. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_texture.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>
600_blit.c
600_pipe.h
600_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>
600_blit.c
600_pipe.h
600_resource.h
600_state_common.c
600_texture.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>
600_blit.c
600_pipe.h
600_state.c
600_state_common.c
|
43e3f19c766863a655bb9f7c04f7820cbda0c8f5 |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set DISABLE in CB_COLOR_CONTROL if colormask is 0 this will be useful for in-place DB decompression, otherwise should be harmless Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
vergreend.h
600_state.c
600d.h
|
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>
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_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>
600_hw_context.c
600_pipe.h
600_state.c
600_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>
vergreen_compute.c
vergreen_compute_internal.c
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
|
c0f7fe7b79afa9b95b1af56dce9eb881575b1cde |
11-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g/compute: Disable growing the memory pool The code for growing the memory pool (which is used for storing all of the global buffers) wasn't working. There seem to be two separate issues with the memory pool code. The first was the way it was growing the pool. When the memory pool needed more space, it would: 1. Copy the data from the memory pool's backing texture to system memory. 2. Delete the memory pool's texture 3. Create a bigger backing texture for the memory pool. 4. Copy the data from system memory into the bigger texture. The copy operations didn't seem to be working, and I suspect that since they were using fragment shaders to do the copy, that there might have been a problem with the mixing of compute and 3D state. The other issue is that the size of 1D textures is limited, and I was having trouble getting 2D textures to work. I think these problems will be easier to solve once more code is shared between 3D and compute, which is why I decided to disable it for now rather than continue searching for a fix.
ompute_memory_pool.c
ompute_memory_pool.h
600_pipe.c
600_pipe.h
|
d36499aa62f42192356fd9e34009905ae0e9e6c8 |
11-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g/compute: Add more debugging output
ompute_memory_pool.c
vergreen_compute.c
|
37708479608af877986b76302a9c92611d1e23d0 |
11-Jul-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: improve flushed depth texture handling v2 Use r600_resource_texture::flished_depth_texture for GPU access, and allocate it in the VRAM. For transfers we'll allocate texture in the GTT and store it in the r600_transfer::staging. Improves performance when flushed depth texture is frequently used by the GPU, e.g. in Lightsmark (~30%) Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
vergreen_state.c
600_blit.c
600_pipe.h
600_resource.h
600_state.c
600_texture.c
|
bcc735aaca3b305d05c28e4076996d91b19d80fd |
05-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add QUERY_TIMESTAMP cap and get_timestamp screen function
600_pipe.c
|
9b00edc79a49bd9fdef9102e3d74828d93ee185e |
09-Jul-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Don't create a texture for the memory_pool during screen init This fixes a segfault in r600_screen_create() introduced by eb065f5d9d1159af3a88a64a7606c9b6d67dc3 Reported by tilman on irc.
ompute_memory_pool.c
600_pipe.c
|
39323e8f792a33f4fe3028c286a1638dc16a38a4 |
28-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Update number of gprs when adding a vertex instruction
600_asm.c
|
da9c8a73ec6fcb0e92204a739c1a7c43f145efef |
27-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g/compute: Use evergreen_cb() for binding RATs
ompute_memory_pool.c
vergreen_compute.c
vergreen_compute_internal.c
vergreen_state.c
600_pipe.h
|
960906d16b3a9027d8871f9af9bcc50aae42b8bc |
27-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add support for RATs in evergreen_cb()
vergreen_state.c
|
eb065f5d9d1159af3a88a64a7606c9b6d67dc3e3 |
22-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Use a texture as the underlying resource for compute_memory_pool This the first step towards being able to use evergreen_cb to bind RATs.
ompute_memory_pool.c
vergreen_compute_internal.c
|
9d3644137427893b1deb629410ebc68c89f26d74 |
22-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add is_rat flag to r600_resource_texture
600_resource.h
|
3d3194e93cbfe0fc42dd96218e8e999f5ccfe726 |
26-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add r600_context_pipe_state_emit() This function is used when dispatching compute shader in order to avoid mixing compute and 3D registers in the context's dirty list. This allows the compute code to resuse 3D functions like evergreen_cb, which return a struct r600_pipe_state and still have control over when and how the register writes are emitted.
600.h
600_hw_context.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>
600.h
600_hw_context.c
600_state_common.c
|
25145de03e980a182b656efce75c33a6129def06 |
26-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g/compute: Move LOOP_CONST initialization to start_compute_cs atom
vergreen_compute.c
|
5016fe2d47a08ce2cd7c597e67862086e7d63b64 |
25-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add start_compute_cs atom to struct r600_context The start_compute_cs atom initializes some config and context registers to the values needed for running compute shaders. When a compute shader is dispatched, this atom is emitted after the start_cs_cmd atom, which initializes registers that are common to both 3D and compute. Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
vergreen_compute.h
600_pipe.c
600_pipe.h
|
38be0966c7e58fb3017c222cf416ae2bdc0bee3d |
25-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add pkt_flag member to struct r600_command_buffer Some packets require the shader type bit (bit 1) to be set when used for compute shaders. The pkt_flag will be initialized to RADEON_CP_PACKET3_COMPUTE_MODE for any struct r600_command_buffer used for dispatching compute shaders and it will be or'd against the result of the PKT3 macro when adding a new packet to a struct r600_command buffer. Reviewed-by: Marek Olšák <maraeo@gmail.com>
600_pipe.h
|
7d0c17fe74ec0a264fb0441e6774f6708e940614 |
25-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Only emit start_cs_cmd atom once for compute command streams
vergreen_compute.c
|
0a21b561c7e476c0c17e346da9fcd0734db0da1f |
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix stencil texturing with Z32_FLOAT_S8X24_UINT
600_texture.c
|
a460df9299dfeb7915689befc15155e18e41ddb8 |
08-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: add assertions after translate_colorswap/colorformat/dbformat/texformat
vergreen_state.c
600_state.c
|
c1e8c845ea9c6f843cc5bba5974668c007799bbc |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_hw_copy_region
600_blit.c
|
9974e9ac5db9f1bfe601309b64e61901439dfd12 |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable dual src blending on r7xx No lockups here.
600_pipe.c
|
6657a7af61ae7c328fecc6ee00246d7c6c93c936 |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use depth format from pipe_surface, not pipe_resource
vergreen_state.c
600_state.c
|
b278aba42310e8fa30f2408b9dcd58dbb4901724 |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use u_box_origin_2d helper function
600_texture.c
|
22d032707e888dc9718d66c1f59e6efbc04ab9bd |
07-Jul-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove stray semicolon
600_texture.c
|
2c485cda2062ca2b9af89ea62618515d960c7904 |
29-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
radeon/llvm: Emit raw ISA for vertex fetch instructions
600_shader.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>
600_pipe.h
600_state.c
600_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>
vergreen_state.c
vergreend.h
600_pipe.h
600_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>
vergreen_state.c
600_pipe.h
600_shader.c
600_shader.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
|
cc2cd8b356e137c83600d5e1804fd6162ce687c9 |
26-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't disable streamout if it hasn't been started
600_state_common.c
|
4891c5dc64ccd8cf2bf8a8550ae23e1a61806a7d |
25-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_blit_push_depth and use resource_copy_region We are going to have a separate resource for depth texturing and transfers and this is just a transfer thing.
600_blit.c
600_pipe.h
600_texture.c
|
da98bb6fc105e1a2f688a1713ca9e50f0ac8fbed |
25-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: split flushed depth texture creation and flushing
vergreen_state.c
600_blit.c
600_resource.h
600_state.c
600_texture.c
|
ff2b417245e8e62b546e27771e36460acc666a8e |
07-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Unify SURFACE_SYNC packet emission for 3D and compute Drop the compute specific evergreen_set_buffer_sync() function and instead use the r600_surface_sync_command atom for emitting SURFACE_SYNC packets.
vergreen_compute.c
vergreen_compute_internal.c
vergreen_compute_internal.h
|
ff08f1ec6fa50cdcebfa825505fd93dd1edd1832 |
07-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Enable reusing of compute state
vergreen_compute.c
|
5cd6ce939d1158d0ee3dd376e2c95aeff49c6e27 |
07-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Fix reading vtx instruction offset from bytestream
600_shader.c
|
e426949cf1c328d5686b1048cdcec54a4fbca986 |
11-Jun-2012 |
Eric Anholt <eric@anholt.net> |
make: Fold ASM_CFLAGS into DEFINES. Every place that uses ASM_FLAGS already uses DEFINES. Not including it in DEFINES is just a way to screw up potential users, as I've done several times while working on the build system.
akefile.am
|
b4f0ab0b22625ac1bb3cf16342039557c086ebae |
15-Jun-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix z/stencil texture creation v2 z or stencil texture should not be created with the z/stencil flags for surface creation as they are intended to be bound as texture. v2: remove broken code Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_texture.c
|
af372129e5c1722a3d53dd1fc2f3409207c12f7e |
18-Jun-2012 |
Fredrik Höglund <fredrik@kde.org> |
gallium: Add PIPE_CAP_START_INSTANCE Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
6e7756db14c362ede6fdc97454267a32b8eab1d4 |
17-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable streamout by default on r7xx and DRM 2.17.0 Now that it's in Linus's tree. Has anyone had a chance to test streamout on Cayman recently?
600_pipe.c
600_pipe.h
600_state.c
|
cb4d1d377d7a1143db48feb48ef54dfa3b29487d |
14-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix lockups with streamout on r7xx This requires the latest streamout kernel patches. Streamout is disabled by default on r7xx, so this patch is safe for regular users. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
600d.h
|
f01594be0ee34758fc62274b9e967a2a4c3595df |
14-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: compute CS space for streamout correctly, add comments SET_CONTEXT_REG was not counted in. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
bb07e251318d1b224fb78fc0bd4200216c42a5cf |
14-Jun-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set SMX_ACTION_ENA to fix streamout cache flushes on some chipsets It helps on R7xx. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
92af184690995d3b16731518f7becfaac3538edb |
21-May-2012 |
Christian König <deathsimple@vodafone.de> |
winsys/radeon: enable IB submission to compute rings v2 This allows to submit things to the compute only rings on cayman+ v2: rebased on current master and actually make use of the new flag in evergreen_compute.c Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Marek Olšák <maraeo@gmail.com>
vergreen_compute.c
|
0c4b19ac63efa41242c515824301e6161aceeea5 |
05-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Compute support for Cayman
vergreen_compute.c
vergreen_compute_internal.c
vergreend.h
600_shader.c
|
c108831d4451f624167d2c433282c6ac63541a79 |
01-Jun-2012 |
Tom Stellard <thomas.stellard@amd.com> |
radeon/llvm: Emit 2 bytes for vertex fetch offsets
600_shader.c
|
6a829a1b724ca0d960decee217d260b4de8a5463 |
30-Nov-2011 |
Adam Rak <adam.rak@streamnovation.com> |
r600g: compute support for evergreen Tom Stellard: - Updated for gallium interface changes - Fixed a few bugs: + Set the loop counter + Calculate the correct number of pipes - Added hooks into the LLVM compiler
akefile.am
akefile.sources
ompute_memory_pool.c
ompute_memory_pool.h
ompute_resource.def
vergreen_compute.c
vergreen_compute.h
vergreen_compute_internal.c
vergreen_compute_internal.h
vergreen_state.c
vergreend.h
lvm_wrapper.cpp
lvm_wrapper.h
600_llvm.h
600_pipe.c
600_pipe.h
600_resource.c
600_resource.h
600_shader.c
600_texture.c
|
2df2c31087770a6e4e79f90fe096e370cd632e00 |
25-May-2012 |
Kai Wasserbäch <kai@dev.carbon-project.org> |
r600g: handle R16G16B16_FLOAT and R32G32B32_FLOAT in translate_colorswap Fixes https://bugs.freedesktop.org/show_bug.cgi?id=50318 Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org>
600_state.c
|
a1a0974401c467cb86ef818f22df67c21774a38c |
25-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
Revert "r600g: set round_mode to truncate and get rid of tgsi_f2i on evergreen" This reverts commit 60bf0f05b472e66bf1175fcec7a274dab6f7e2a3. It seems round_mode behaves differently in some cases depending on the instruction/slot. Reverting it for now. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=50232 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
vergreen_state.c
600_shader.c
|
7fa7c608cb3cb1105587eab793aaf4ff647a565b |
25-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: fix sampler index in llvm_emit_tex Sampler index isn't a second source operand for some tgsi texture instructions. Let's assume it's always the last. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=50230 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_llvm.c
|
482041a53862f45afd88536b5a615501cbb6ce25 |
25-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: add RECIP_INT, PRED_SETE_INT to r600_bytecode_get_num_operands Fixes https://bugs.freedesktop.org/show_bug.cgi?id=50315 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Tested-by: Kai Wasserbäch <kai@dev.carbon-project.org> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.c
|
5187948bc2b16df70ee6696a8702a898b38a2d63 |
17-May-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Handle MUL_IEEE in r600_bytecode_get_num_operands
600_asm.c
|
7446a0407d4e61a826385c11ed6c401837baf095 |
16-May-2012 |
Michel Dänzer <michel.daenzer@amd.com> |
gallium/radeon: Fix r300g tiling breakage. Commit 11f056a3f0b87e86267efa8b5ac9d36a343c9dc1 broke the r300g build. Fix it up, and reinstate some code which isn't needed by r600g and radeonsi but is by r300g.
600_texture.c
|
11f056a3f0b87e86267efa8b5ac9d36a343c9dc1 |
16-May-2012 |
Michel Dänzer <michel.daenzer@amd.com> |
r600g: Set tiling information for BOs being shared. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=48747
600_texture.c
|
fa5a963dd6c2622c416d53e49b08c4b3cbce7483 |
15-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: add SET_GRADIENTS*, fix SAMPLE_G Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_llvm.c
|
12a2374da380a9a28cacf968c33b93ba320b0407 |
15-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: use IntrNoMem property for intrinsics where possible Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_llvm.c
|
05ea705c7c6212d16fcc9bcf04619ffd4311bb03 |
11-May-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove slab allocator for pipe_resource (used mainly for user buffers)
600_buffer.c
600_pipe.c
600_pipe.h
|
b2d63860860308f2e794dc506cdcde62cf936a46 |
12-May-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle R16G16B16_FLOAT and R32G32B32_FLOAT in translate_colorswap (EG)
vergreen_state.c
|
b496136af84e396e7890082817b563dc53ac36fc |
12-May-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove user_buffer_create from the interface Nothing uses it now.
600_buffer.c
600_pipe.h
600_resource.c
|
ec848d2730afcc8a0c81bf74b7bb27936407c305 |
12-May-2012 |
Francisco Jerez <currojerez@riseup.net> |
r600g: Handle compute caps.
600_pipe.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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
d3bab0c7bee7439fa834fd86a835119fc5fa3307 |
11-May-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: assume DISCARD_WHOLE_RESOURCE is always used with WRITE
600_buffer.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
|
1279923d72942ee201fcc6ad40d552143f651f03 |
30-Apr-2012 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi: Move interpolation info from tgsi_declaration to a separate token. Move Interpolate, Centroid and CylindricalWrap from tgsi_declaration to a separate token -- they only make sense for FS inputs and we need room for other flags in the top-level declaration token.
600_shader.c
|
a5f44cc8c2ce0916809ce5da5a2490ad000ef099 |
01-May-2012 |
Francisco Jerez <currojerez@riseup.net> |
gallium/tgsi: Split sampler views from shader resources. This commit splits the current concept of resource into "sampler views" and "shader resources": "Sampler views" are textures or buffers that are bound to a given shader stage and can be read from in conjunction with a sampler object. They are analogous to OpenGL texture objects or Direct3D SRVs. "Shader resources" are textures or buffers that can be read and written from a shader. There's no support for floating point coordinates, address wrap modes or filtering, and, unlike sampler views, shader resources are global for the whole graphics pipeline. They are analogous to OpenGL image objects (as in ARB_shader_image_load_store) or Direct3D UAVs. Most hardware is likely to implement shader resources and sampler views as separate objects, so, having the distinction at the API level simplifies things slightly for the driver. This patch introduces the SVIEW register file with a declaration token and syntax analogous to the already existing RES register file. After this change, the SAMPLE_* opcodes no longer accept a resource as input, but rather a SVIEW object. To preserve the functionality of reading from a sampler view with integer coordinates, the SAMPLE_I(_MS) opcodes are introduced which are similar to LOAD(_MS) but take a SVIEW register instead of a RES register as argument.
600_shader.c
|
6ae12bac596ce3a6aa8e09f638ad2cb4a7c18e5c |
05-May-2012 |
Christoph Bumiller <e0425955@student.tuwien.ac.at> |
gallium/drivers: handle TGSI_OPCODE_CEIL
600_asm.c
|
8c98635d4fc7437b05debe337aef2377df685c0c |
07-May-2012 |
Kai Wasserbäch <kai@dev.carbon-project.org> |
r600g: Handle TGSI_OPCODE_CEIL (v2) v2: Enabled CEIL on Cayman too. Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org> Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
600_shader.c
|
a8d82c44f79e27d2b78458f9ea560c73eef3d3b5 |
08-May-2012 |
Tom Stellard <thomas.stellard@amd.com> |
radeon/llvm: Remove the EXPORT_REG instruction
600_llvm.c
|
8a4c25dd7e9002ab7a2821753bcae1ff6af2ca1c |
08-May-2012 |
Tom Stellard <thomas.stellard@amd.com> |
radeon/llvm: Use a custom inserter to lower RESERVE_REG
600_llvm.c
|
d6aa7cd7f82a3695243e1ecb1c73cdb796b12523 |
07-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: add suport for cube textures Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_llvm.c
|
95ed0e9b6b445c70e920d340818fc0f84d45233e |
06-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: add support for TXQ/TXF/DDX/DDY instructions Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_llvm.c
|
d8a120485444968c930f0ab675473692b221cb75 |
07-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: add support for VertexID, InstanceID Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_llvm.c
|
2a88dfc521bff7255e27e2ef8efcd08f9db53747 |
07-May-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
radeon/llvm: use bitcasts for integers We're using float as default type, so basically for every instruction that wants other types for dst/src operands we need to perform the bitcast to/from default float. Currently bitcast produces no-op MOV instruction, will be eliminated later. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_llvm.c
|
3f8c37967a66da6bc63b283b3eba69fd48eba2f6 |
07-May-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Fix out of tree builds that use the LLVM backend https://bugs.freedesktop.org/show_bug.cgi?id=49567
akefile.am
|
b4789860c4416ba700ac5edeb692b59e33d45276 |
30-Apr-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g/llvm: Mask write of pred_inst in llvm_if()
600_shader.c
|
a2e08a40f5144a3533de9c3ede422a34b7a44255 |
27-Apr-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Print integer values of literal constants in shader dumps
600_asm.c
|
18617d7423b2c12aac9adbb8354fbf5d0c8ddfea |
27-Apr-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add support for reading BREAK_LOGICALZ_i32 from bytestream
600_asm.c
600_shader.c
|
1bd3dafeca90f1293acd9b9ab63bf617139bfacf |
02-May-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Fix the evergreen offset/end register definitions
vergreend.h
|
4731f1f52d4085f2ff35dcf58cb129f79d97a0b6 |
17-Apr-2012 |
Adam Rak <adam.rak@streamnovation.com> |
r600g: fixed the bug with VTX fetches in TEX clauses for evergreen Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.c
|
e42df8e10a83e76565474f82330d34403da71b49 |
29-Feb-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add support for reading vertex fetches from bytestream Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_shader.c
|
6f50f939ef85bb058c1401b5dad8340aa4f96aec |
27-Feb-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add support for reading native instructions from the LLVM bytestream Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_shader.c
|
94a6a363792e8cb57a9f15778a3f3440d5b754ab |
27-Feb-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add FC_NATIVE instruction This is a pseudo instruction that enables the LLVM backend to encode instructions and pass it through r600_bytecode_build() Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
g_asm.c
600_asm.c
600_asm.h
|
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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
3ac0683d632347347c2fdbd546da0c7c2effb08a |
26-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove pipe_resource::user_ptr It's unused now.
600_buffer.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.
vergreen_state.c
600_state.c
600_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.
600_state_common.c
600_translate.c
|
43995c9470dd38cf80a60a169f5875de6798863f |
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove pipe_context::redefine_user_buffer
vergreen_state.c
600_state.c
|
507337864fa80caf9f26602324d2c28dd0a75d61 |
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: change set_constant_buffer to be UBO-friendly
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
1b749dc34f8d83cf3dfa863279b1fe2b356d34b2 |
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_CAP_CONSTANT_BUFFER_OFFSET_ALIGNMENT This is required for any serious constant buffer support. Constant buffer offsets on ATI and NVIDIA DX10 and DX11 GPUs must be a multiple of 256. In OpenGL, this can be queried via GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT.
600_pipe.c
|
437ab1d6df7282770ee869180446db36c2dbdfa8 |
24-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_CAP_USER_INDEX_BUFFERS and PIPE_CAP_USER_CONSTANT_BUFFERS
600_pipe.c
|
c69248fa3fdd2cad86166ea1d21b88dfda155d17 |
26-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: make r600_buffer_transfer_unmap a no-op It's a no-op already in the winsys.
600_buffer.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.
600_asm.c
600_buffer.c
600_hw_context.c
600_pipe.c
600_query.c
600_shader.c
600_state_common.c
600_texture.c
|
e4c97f1e607f857fb7f397f9e00f37c00ffff295 |
13-Apr-2012 |
Dylan Noblesmith <nobled@dreamwidth.org> |
autoconf: pass -Wall to automake And fix these warning that appear at autoreconf time: "`:='-style assignments are not portable" v2: Fix the recently-converted-to-automake r600.
akefile.sources
|
23b948057ad33cf0b27e5c88a8e9ff7dbfa0573c |
01-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move updating vertex buffer state into set_vertex_buffers
600_pipe.h
600_state_common.c
|
e0773da1e897164ed7597437070e32b867734ee5 |
10-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: make user vertex buffers optional This couldn't be split because it would break bisecting. Summary: * r300g,r600g: stop using u_vbuf * r300g,r600g: also report that the FIXED vertex type is unsupported * u_vbuf: refactor for use in the state tracker * cso: wire up u_vbuf with cso_context * st/mesa: conditionally install u_vbuf
600.h
600_blit.c
600_buffer.c
600_formats.h
600_pipe.c
600_pipe.h
|
428855eea3e99d94474df6df0cb8dfc4a8819702 |
11-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't share u_upload_mgr with u_vbuf, create its own
600_pipe.c
600_pipe.h
600_state_common.c
600_translate.c
|
7fe3631a7a0ad7602b4e947ac87ef86875c8bb3f |
10-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: make use of the new CAPs to determine what to do This adds the ability to initialize u_vbuf_caps before creating u_vbuf itself. It will be useful for determining if u_vbuf should be used or not. Also adapt r300g and r600g.
600_pipe.c
|
a52b3338c6e51421e3836ae210cd98d9c1ec337b |
10-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: remove u_vbuf_resource
vergreen_state.c
600.h
600_blit.c
600_buffer.c
600_hw_context.c
600_query.c
600_state.c
600_state_common.c
600_texture.c
|
e8ab3b1ce76dddca7b591b9ce21836ab36995653 |
10-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add user_ptr in pipe_resource I need to access the pointer in st/mesa when I only have pipe_resource.
600_buffer.c
|
5ec7c28fdbc2e05d20b1a07cba1fe6ac3b6658f9 |
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override draw_vbo
600_state_common.c
|
889238c8b1e6b8ac5eed30ec3122be94216ca7cf |
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override create/bind/destroy_vertex_elements_state
600_blit.c
600_pipe.h
600_state_common.c
|
2d03d4f4a365d7af5f4dac20700009152eba1682 |
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf: override set_vertex_buffers
vergreen_state.c
600_pipe.h
600_state.c
600_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.
600_pipe.h
600_state_common.c
|
f940c0a3d976ed1315b3d589d1c4d8d03c631ba0 |
19-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g/automake: add $ARCH_FLAGS and $OPT_FLAGS Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
akefile.am
|
7f5420762c0e3cb21bda66ea8ea32b516a4e3660 |
23-Apr-2012 |
Brian Paul <brianp@vmware.com> |
r600g: init vars to silence warnings
600_shader.c
|
ced73ea5df306156e5383b438d6858e58b1479e5 |
17-Apr-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add hooks for the LLVM shader compiler The LLVM backend can now be enabled for r600g by using the --enable-r600-llvm-compiler configure flag. If you configure with this flag, you can still use the default compiler by setting the envrionment variable R600_USE_LLVM=0 Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
akefile.am
akefile.sources
600_shader.c
|
2da961056600d3f2d94a581c19bfcc1e636e8f41 |
17-Apr-2012 |
Tom Stellard <thomas.stellard@amd.com> |
r600g: Add TGSI->LLVM implementation v2 v2: Add case for ARUBA in r600_llvm_gpu_string() Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_llvm.c
600_llvm.h
|
65b35b63d377a1a74627d60ea6f8f1caae6a01a9 |
16-Dec-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix gpr number calculation Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
600_asm.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>
vergreen_state.c
600.h
600_state.c
600_state_common.c
|
e6aad9ba04fb914a2484241f74ed0557fd1d59da |
22-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: enable GLSL130 on all cards Alexandre Demers sent me some cayman results with no major problems. I'll rip out the env var in a week or so. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
47d22e56de4738f792bb9a86da23435744d53f00 |
21-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: enable dual src blending on r600 cards tested on my rv610 and it passes the tests with no hangs. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
7745cf2be4abfbac0a5f7981d7c3dd2f4d0cbcbe |
21-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: enable GLSL 1.30 for r600 class Full piglit run on my rv610 with no regressions. This only leaves cayman, however my cayman is resisting my attempt to get through a full piglit run. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
12bedaa24ba8f4cdb3f2b58482ce8f9ac5715703 |
21-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600: enable glsl 1.30 on r700 I've done a piglit run on rv740 and confirmed no regressions. We don't get GL3 on r700 due to transform feedback being busted still. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
5f457f66186375d5fb82d5a0a81025887bfe2d2e |
20-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: report INTEGERS cap if glsl130 is on. This cap is used by u_blitter to decide if it can use integers in vertex data. fixes some crashes with glsl130 in piglit Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
7af9f6325ee3b9791fba7b49c60496c42fa79e6b |
20-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: enable glsl 130 on evergreen. I've done a piglit run on my SUMO machine and I see no regressions. Lots of things to fix (skip->fail), but hey maybe we can fix them if we can see them. I'll try and work my way across r600,700,cayman sometime if nobody else gets to them. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
951b888be45539e5d5b535a5a393df719fae4172 |
09-Apr-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: disable I2F conversion for InstanceID if integers are supported Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Michel Dänzer <michel@daenzer.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
e382a0c14251a3000090ee75765f8d88d1b20409 |
09-Apr-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: store glsl_feature_level in the r600_screen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Michel Dänzer <michel@daenzer.net> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
600_pipe.h
|
6077b347ae72af548667cc06cfff99e7e12c6d9f |
13-Apr-2012 |
Tom Stellard <tstellar@gmail.com> |
r600g: Use automake to generate Makefile
akefile
akefile.am
|
f8741ff21eb014567a538c7f1475bb8d22a4a830 |
14-Apr-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: disable dual-src hangs evergreen for some reason. This did work previously, so I've broken something. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.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>
vergreen_state.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
|
0d29fb017bce0968240ae875af4b3702c2cd46ef |
24-Mar-2012 |
Dave Airlie <airlied@redhat.com> |
gallium: rename DUAL_SOURCE_BLEND cap to MAX_DUAL_SOURCE_RENDER_TARGETS Though I don't think we'll ever expose > 1. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
783e4da72aa203a645737dec81b001341951a942 |
09-Apr-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: check gpr count limit This should help to prevent gpu lockups. See https://bugs.freedesktop.org/show_bug.cgi?id=48472 NOTE: This is a candidate for the stable branches. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_shader.c
|
34e53adc51ade8d53d74b6ae35bec90f1a6b9b29 |
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_upload_index_buffer
600_buffer.c
600_pipe.h
600_state_common.c
|
e9abb2cd6e93681504fbcf323c790e3950304734 |
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_upload_const_buffer
600_buffer.c
600_resource.h
600_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>
600_buffer.c
600_state_common.c
|
c7d0e9ec32edfbb6c77715d51170608deb41f1b7 |
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: invalidate caches at the beginning of CS Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
a633d82ce352a69fd54a2b0e262a91f27f478119 |
02-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dead code after the rework Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600.h
600_hw_context.c
600_pipe.h
600_state.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>
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_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>
vergreen_hw_context.c
vergreen_state.c
600.h
600_hw_context.c
600_pipe.h
600_state.c
600_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>
600_asm.c
600_pipe.h
600_state_common.c
|
7f2156c9bd35893a82eff92ae780ca97e52f389d |
03-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dead code in r600_update_derived_state
600_state_common.c
|
42bc0b9b9dc31a15c08d409d14d25ccf19501255 |
01-Apr-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: unduplicate code for PS partial flush
600_hw_context.c
|
bc95152f1d3bf0dbf79d81e6b9956fd60198e3df |
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: determine in advance if hw has vertex cache
600_hw_context.c
600_pipe.c
600_pipe.h
|
669d8766ff3403938794eb80d7769347b6e52174 |
31-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: optimize r600_resource_va Avoid calling get_radeon_bo and inline it.
600_pipe.h
600_resource.c
600_resource.h
|
ead0a89c9661135d66e086bbe524f9623b00af5b |
29-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup after get_query_result change Finally, union r600_query_result can be removed.
600.h
600_query.c
|
4445e170bee23a3607ece0e010adef7058ac6a11 |
27-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: adapt to get_query_result interface change Reviewed-by: Brian Paul <brianp@vmware.com>
600_query.c
|
9773369ab4d1c75965821635f448733edde98636 |
28-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: also disable transform feedback on cayman It's said to cause troubles there. The env var is R600_STREAMOUT again.
600_pipe.c
|
393d741788fa82896d4b1c9fd02402a83053afcf |
27-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable transform feedback on everything that isn't r700 Use R700_STREAMOUT=1 if you wanna hack transform feedback on r700.
600_pipe.c
|
b4082f492b4b55df4c636445e47b97d1f1e4b5b2 |
21-Mar-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: add support for TN (trinity) APUs Note: this is a candidate for the stable branches. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600.h
600_hw_context.c
600_pipe.c
|
91ddfa72b4384d04e4d84e60b4cdf3efee7ef49b |
19-Mar-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: fix r600_get_backend_mask() for virtual addresses I don't think we should hit this path for virtual addresses, but just in case. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
a2e7629e688b6c258baf01e14dddf8c5ce645ee2 |
19-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix point rendering Accidentally broken in c7eaf274a9b7e3e5f4b060be2320.
600_state.c
|
fe3f98ed70be01a49dd2e93870907d092fe4a283 |
03-Mar-2012 |
Tom Stellard <tstellar@gmail.com> |
gallium/drivers: Use automake to generate makefile
akefile
|
fb016854bc4327151e9eee3b7b08d0499976631a |
03-Mar-2012 |
Christian König <deathsimple@vodafone.de> |
r600g: add support for subsampled rgb formats v2: r600 formats are msb first! Signed-off-by: Christian König <deathsimple@vodafone.de>
600_texture.c
|
7f1cbf12bc883090734983bdd98e5158b9a194a0 |
08-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable ARB_draw_instanced
600_pipe.c
|
f6546535c9c8ce001e081487b8cd30b6703c0f4d |
07-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use SX_MISC to implement rasterizer discard Yeah I am reworking it again. This is way simpler than the other methods.
vergreen_state.c
vergreend.h
600_hw_context.c
600_state.c
|
c7eaf274a9b7e3e5f4b060be2320eb605464ba5c |
08-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: fix and improve rasterizer discard for r600-r700" I will use SX_MISC instead. This reverts commit 597fd6dc8c424a35f8442d5fd9de708013a69830.
600_hw_context.c
600_state.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
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state_common.c
|
d0f8561574023aa8f2e0fdf553ee168253567437 |
07-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: only emit SX_SURFACE_SYNC on r700 if there's CS checker support Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47039
600_state.c
|
e363dd5c7d8ba40984d937ad7487abbb5be439bc |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: replace atom_ prefix with _state and _cmd suffixes
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.c
600_pipe.h
600_query.c
600_state.c
600_state_common.c
|
330b6c85c961b32f704ce8ec7dbf8cb7fc0b80a8 |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup includes
g_asm.c
vergreen_hw_context.c
vergreen_state.c
600_asm.c
600_asm.h
600_blit.c
600_buffer.c
600_formats.h
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_resource.h
600_shader.c
600_state.c
600_state_common.c
600_texture.c
600_translate.c
700_asm.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.
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_query.c
600_state_common.c
|
45d731fdf9e469011a071a101b510e5b1578215f |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused function r600_context_reg_bo
600_hw_context.c
600_hw_context_priv.h
|
8a56ed8d6dc37c23d4695d0fc292d7bcc2976f08 |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused definitions
600.h
600_hw_context.c
600_hw_context_priv.h
|
0d91ddf1d4be712377e80d330480ff560d449c6f |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't enable tiling for STAGING and STREAM usage cases Reviewed by: Christian König <christian.koenig@amd.com>
600_texture.c
|
29e55bc5f1b6d7375b6a86e24ca4ae58e399011e |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
winsys/radeon: add usage parameter to cs_is_buffer_referenced Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_query.c
600_texture.c
|
96ef4ddc3ddda4d1f637af86f4790d24f8f386c6 |
27-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: initialize DB_DEPTH_CONTROL at beginning of CS Otherwise streamout with rasterizer discard will make the kernel upset if the state tracker doesn't set a depth-stencil-alpha state. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_state.c
600_state.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>
vergreen_hw_context.c
vergreend.h
600_hw_context.c
600_state_common.c
600d.h
|
6187503f95c56aa3fdbb645170095c409dad12ff |
27-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: initialize SX_SURFACE_SYNC Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_state.c
vergreend.h
600_state.c
600d.h
|
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>
600_pipe.c
600_pipe.h
600_state_common.c
|
914b4bb80c28c81101941d5533361ae0108eb771 |
29-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: add support for missing colorbuffer formats Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_state.c
600_state.c
|
c60d789b3bdb4825b313609ca87987deae13d43b |
28-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove support for SCALED colorbuffer formats Unused by the current stack and APIs, therefore untestable. It was used to facilitate the transition to integers. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_state.c
600_state.c
|
515a64a28ce9566c85443209784944838a0d6d62 |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: permit blitting between textures with STREAM and STAGING usage Eventually I'd like to make every format blittable, so that the function can go away. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_texture.c
|
597fd6dc8c424a35f8442d5fd9de708013a69830 |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix and improve rasterizer discard for r600-r700 For polygons, we have been using face culling with success, but that doesn't work for points and lines. Setting the point size and line width to 0 fixes it. Also improve it even more by setting SCREEN_SCISSOR to a zero area. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_hw_context.c
600_state.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>
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state_common.c
|
ca78a47b056b5a4589933492db364f6e418abb0f |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: make some scissor regs invariant on r600-r700 Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_hw_context.c
600_state.c
|
cd5d02bf51af370233f35604a69d07e70db11eaf |
25-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: make some scissor regs invariant on evergreen We only need one scissor for the framebuffer. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_hw_context.c
vergreen_state.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>
600_hw_context.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
600d.h
|
2881d456a5dd267bf2291532c9d95b1d48e93c08 |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework scissor for evergreen VPORT_SCISSOR is the OpenGL scissor. How do I know? Because there are 16 of them just like GL4.1 has multiple scissor rectangles. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
vergreen_hw_context.c
vergreen_state.c
vergreend.h
|
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>
g_sq.h
vergreen_state.c
600_asm.c
600_blit.c
600_pipe.c
600_shader.c
600_state.c
600_state_common.c
600_texture.c
|
0018db1126c443c4d70947010dcf1afa37e5fb16 |
23-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: correctly handle queries which don't need begin_query Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_query.c
|
09ec30f02830b3cbf9d6ac04d9497634dca86846 |
23-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't suspend timer queries for u_blitter Timer queries should be able to measure the time spent in u_blitter as well. Queries are split into two groups: the timer ones and the others (streamout, occlusion), because we should only suspend non-timer queries for u_blitter, and later if the non-timer queries are suspended, the context flush should only suspend and resume the timer queries. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_blit.c
600_hw_context.c
600_pipe.c
600_pipe.h
600_query.c
|
eabcecc26baf225dc50f1d400a80ea4c78831390 |
23-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: release query buffers in destroy_query This fixes a memory leak introduced with the rework. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600_query.c
|
83667acfd9feed932f6864092382e752466975ed |
23-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move all query code into r600_query.c And rename or inline functions where appropriate. There is no reason to keep this stuff in r600_hw_context.c. Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
600.h
600_blit.c
600_hw_context.c
600_pipe.h
600_query.c
|
62f44f670bb0162e89fd4786af877f8da9ff607c |
05-Mar-2012 |
Marek Olšák <maraeo@gmail.com> |
Revert "gallium: add flag PIPE_TRANSFER_MAP_PERMANENTLY" This reverts commit 0950086376b1c8b7fb89eda81ed7f2f06dee58bc. It was decided to refactor the transfer API instead of adding workarounds to address the performance issues.
600_texture.c
|
bf4fedcef3e345f5117232d58bd9000c2441de74 |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use u_default_transfer_flush_region for all resource types
600_buffer.c
600_resource.c
600_texture.c
|
ab1328882101f67335a332e940fea92eeaf70e12 |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use u_default_transfer_inline_write for all resource types
600_buffer.c
600_resource.c
600_texture.c
|
4c02baade9d590787acae157ce9b2d09c6a9bf55 |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix streamout cache flush for r600 Figured out by trial and error.
600_hw_context.c
|
897af1d499ed91ed3629432424eb1ac62bff2c5f |
26-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup r600_transfer_struct Especially rename staging_texture to staging and change its type to r600_resource. I will reuse it for buffers later.
600_resource.h
600_texture.c
|
622b65d33bcc46a6b2cede6081b32a26a4ec7c7f |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: check for R600_STREAMOUT env var in winsys
600_pipe.c
|
b85fc0ac7e9795b773edad22e20eb3270f4909bd |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move initialization of use_surface flag into screen_create Also change the type to bool and give it a less ambiguous name.
vergreen_state.c
600_pipe.c
600_pipe.h
600_state.c
600_texture.c
|
81c04848625182c51d89c91f34ea6ab51d9ed090 |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: properly check whether texture is busy in get_transfer
600_texture.c
|
d334d591a71c41d6a1eb4f2ea6cdabedc425e42f |
24-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename r600_resource_texture::depth to bool is_depth It's used as a boolean.
vergreen_state.c
600_blit.c
600_resource.h
600_state.c
600_texture.c
|
04e324008759282728a95a1394bac2c4c2a1a3f9 |
23-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove PIPE_SHADER_CAP_OUTPUT_READ r600g is the only driver which has made use of it. The reason the CAP was added was to fix some piglit tests when the GLSL pass lower_output_reads didn't exist. However, not removing output reads breaks the fallback for glClampColorARB, which assumes outputs are not readable. The fix would be non-trivial and my personal preference is to remove the CAP, considering that reading outputs is uncommon and that we can now use lower_output_reads to fix the issue that the CAP was supposed to workaround in the first place.
600_pipe.c
|
df00dc3c817771ac5034a44dff2b14cd7759b207 |
22-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rework queries We always mapped the query buffer in begin_query, causing stalls if the buffer was busy. This commit reworks it such that the query buffer is only mapped in get_query_result as it's supposed to be. The query buffer is no longer treated as a ring buffer. Instead, the results are just appended and when the buffer is full, we create a new one. One query can have more than one query buffer, though that's a very rare case. Begin_query releases all query buffers. Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_hw_context.c
600_query.c
|
5b84a8c3c3f85cd6b109861c6eebe3ece29d664e |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup magic numbers in set_xx_sampler Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
|
89293287b8f1a24c1405750007ca20bd32e02eab |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove duplicated evergreen_context_ps_partial_flush Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
84db8f9a2289f3ae7eb0af4825f4370e31e4ae11 |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove duplicated evergreen_context_pipe_state_set_sampler Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
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>
vergreen_hw_context.c
vergreen_state.c
600.h
600_state_common.c
|
985bd5487edc974f1ed7a9c50456478d959b51e2 |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove duplicated function r600_state_sampler_init Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
cf59ed3f23e8ee72c044ec029127876cf27a4afa |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fixup name of evergreen-specific function Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
|
04d2828b03a75963a469f2fb008c3595948cfcfc |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: simplify fail paths in create_context Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.c
|
6a94c9dde0d62b5ccfcbe3dbafdadeab37fd48a6 |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix possible crashes in destroy_context when failing in create_context Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
600_pipe.c
|
9670e72f6ef85f0e6f6c9afe136dc67c017e3fae |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate common context init code Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
600_pipe.c
|
f841b8a833f32074c79724c66c85cdc7b48087e2 |
21-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: define GROUP_FORCE_NEW_BLOCK in common header Reviewed-by: Jerome Glisse <jglisse@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
132daa87fbb78f136de3e7c6e7823ada652a70cf |
20-Feb-2012 |
Satyajit Sarangi <satyajit.sarangi@gmail.com> |
r600g: Fix build when libdrm is installed to non-standard dir. Signed-off-by: Satyajit Sarangi<kernel.saty@gmail.com> Signed-off-by: Tom Stellard <tstellar@gmail.com>
akefile
|
5d2de9232d3bee91a6df49d1558fa00995a235c5 |
08-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move invariant register updates into start_cs for evergreen and cayman
vergreen_hw_context.c
vergreen_state.c
600_pipe.h
|
fbebd431ec4e2e461a0cbcd5f3a04a000b8f6bbf |
03-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move invariant register updates into start_cs for r6xx-r7xx
600_hw_context.c
600_pipe.h
600_state.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.
vergreen_hw_context.c
vergreen_state.c
600.h
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_query.c
600_state.c
600_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.
vergreen_hw_context.c
600.h
600_hw_context.c
600_state_common.c
|
182fd4c54476ced92b61412b0cac5be32e257b53 |
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: move all invariant state from draw_vbo into start_cs
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_state.c
600_state_common.c
600d.h
|
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
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
600d.h
|
96d882939d612fcc8332f107befec470ed4359de |
17-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove unused winsys pointers in pipe_screen and pipe_context A winsys is already a private object of a driver.
600_pipe.c
|
b0b81218132b6952de987dca21b9750d8d51b7f0 |
16-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove the workaround for quads and provoking vertex
vergreen_state.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
|
73191026b4198a3dce86dac015f973616f76363a |
02-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant r600_context::vs_so_stride_in_dw
600_hw_context.c
600_pipe.h
600_state_common.c
|
8cd03b933cf868ff867e2db4a0937005a02fd0e4 |
14-Feb-2012 |
Simon Farnsworth <simon.farnsworth@onelan.co.uk> |
r600g: Use a fake reloc to sleep for fences r300g is able to sleep until a fence completes rather than busywait because it creates a special buffer object and relocation that stays busy until the CS containing the fence is finished. Copy the idea into r600g, and use it to sleep if the user asked for an infinite wait, falling back to busywaiting if the user provided a timeout. Note: this is a candidate for the stable branches. Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.c
600_pipe.h
|
014198ec8860d8a0abfd6aa0ddd8db9d26febdbb |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate set_blend_color code
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
5cc9aa0e02f222fd6a8f16f65d8c7f5eda06f893 |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate more translate functions
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
d214275aceed3afd1174cd2a1b823d4b7357de2a |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline r600_translate_ds_func
vergreen_state.c
600_state.c
|
85571ed53c18f4e5c31ea8eb81c1231c6d786ae4 |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused variable
600_texture.c
|
9a20130e5f703e9e9279965183993b95907c7d6b |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate some translate functions
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
39b0da9f8d04315c698f8611304d1a66e8505c6c |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: don't advertise integer textures without GLSL 1.3" This reverts commit 2c06bcb90982280e82a044b8be83be8fdf5a9590. It breaks u_blitter trying to blit compressed textures as uint.
vergreen_state.c
600_state.c
|
2c06bcb90982280e82a044b8be83be8fdf5a9590 |
14-Feb-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't advertise integer textures without GLSL 1.3
vergreen_state.c
600_state.c
|
5e1495b2d9311fa2b320766a1d299053904bd9c3 |
10-Feb-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: 128 bit formats require tile_type = 1 on cayman Noticed by taiu on IRC. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Note: this is a candidate for the stable branches.
vergreen_state.c
|
acca690c259824636ef1ff684a10bd1caca4751f |
10-Feb-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: fix tex tile_type offset for cayman Noticed by taiu on IRC. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Note: this is a candidate for the stable branches.
vergreen_state.c
vergreend.h
|
8b4f7b0672d663273310fffa9490ad996f5b914a |
06-Feb-2012 |
Christoph Bumiller <e0425955@student.tuwien.ac.at> |
gallium: add PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION Just let the hardware do it if it can and avoid drivers having to check for the special case on each draw call. v2: update the draw module
600_pipe.c
|
192467108b282c19da3b11647a7a802b3d890193 |
06-Feb-2012 |
Christian König <deathsimple@vodafone.de> |
r600g: fix handling of outputs as TEX addr sources Outputs should be treated in the same way as inputs and temporaries here. Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
600_shader.c
|
7335cf1c326c7815164c242e19ba0c0b2b19f0f6 |
07-Feb-2012 |
Brian Paul <brianp@vmware.com> |
r600g: remove unused vars to silence warnings
600_blit.c
|
f763ad51302a8b3517e85ae7f2ee94d40b1e0326 |
07-Feb-2012 |
José Fonseca <jfonseca@vmware.com> |
scons: r300/r600 now depends on libdrm. As they now indirectly include on libdrm/radeon_surface.h.
Conscript
|
c0c979eebc076b95cc8d18a013ce2968fe6311ad |
30-Jan-2012 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add support for common surface allocator for tiling v13 Tiled surface have all kind of alignment constraint that needs to be met. Instead of having all this code duplicated btw ddx and mesa use common code in libdrm_radeon this also ensure that both ddx and mesa compute those alignment in the same way. v2 fix evergreen v3 fix compressed texture and workaround cube texture issue by disabling 2D array mode for cubemap (need to check if r7xx and newer are also affected by the issue) v4 fix texture array v5 fix evergreen and newer, split surface values computation from mipmap tree generation so that we can get them directly from the ddx v6 final fix to evergreen tile split value v7 fix mipmap offset to avoid to use random value, use color view depth view to address different layer as hardware is doing some magic rotation depending on the layer v8 fix COLOR_VIEW on r6xx for linear array mode, use COLOR_VIEW on evergreen, align bytes per pixel to a multiple of a dword v9 fix handling of stencil on evergreen, half fix for compressed texture v10 fix evergreen compressed texture proper support for stencil tile split. Fix stencil issue when array mode was clear by the kernel, always program stencil bo. On evergreen depth buffer bo need to be big enough to hold depth buffer + stencil buffer as even with stencil disabled things get written there. v11 rebase on top of mesa, fix pitch issue with 1d surface on evergreen, old ddx overestimate those. Fix linear case when pitch*height < 64. Fix r300g. v12 Fix linear case when pitch*height < 64 for old path, adapt to libdrm API change v13 add libdrm check Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
vergreend.h
600_blit.c
600_hw_context.c
600_pipe.h
600_resource.h
600_state.c
600_texture.c
|
f3f03c67e90f962f67e7b58b7c7baff3be251cb1 |
01-Feb-2012 |
Christian König <deathsimple@vodafone.de> |
vl: add interlacing capabilities Let the driver control interlaced or progressive format of video buffers. Signed-off-by: Christian König <deathsimple@vodafone.de>
600_pipe.c
|
b0337b679ad4c2feae59215104cfa60b58a619d5 |
31-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: shorten expressions accessing family and chip_class
vergreen_hw_context.c
600_hw_context.c
600_state_common.c
|
38bf2763482b4f1b6d95cd51aecec75601d8b90f |
31-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused variable num_dest_buffers
vergreen_state.c
600_pipe.h
600_state.c
|
f661405637bba32c2cfbeecf6e2e56e414e9521e |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use the new code for streamout flush as well
600_hw_context.c
|
70d40fc6755a2e4b23c831143cb02133f30fbb02 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename r600_reg::flush_flags -> sbu_flags There is no other use for that.
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
6d0a011acbea90537d142c86b8dd5aecd1e14390 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix computation of how many dwords is needed for a flush at the end of CS
600.h
600_hw_context.c
|
1c5625cdb96332a746c9eebe042a3a9dbe844351 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused r600_reg::flush_mask
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
0671400dcc72553b5f9719639e86069a1734dbe5 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove more dead code
600.h
600_hw_context.c
|
74027a9ba250f07a77ee40e105c50c27e4fc3bc0 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dead code for tracking relocations
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
600_pipe.h
|
4fd97b46a071a8dcec6ec6658dfc835e08f4e2c6 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused flush code
600_hw_context.c
600_hw_context_priv.h
|
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.
vergreen_hw_context.c
vergreen_state.c
600.h
600_hw_context.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
600d.h
|
2fe521fa419ee153afb6295289dc5e95d3229858 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: add a new simple API for state emission
600_hw_context.c
600_pipe.c
600_pipe.h
600_state_common.c
|
621e0db71c5ddcb379171064a4f720c9cf01e888 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant pm4 and pm4_cdwords in r600_context These only mirrored radeon_winsys_cs.
vergreen_hw_context.c
600_hw_context.c
600_pipe.h
|
3b0467192057cc561b6d495d6445b2ed04fc3ebf |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate some context_draw code
vergreen_hw_context.c
600.h
600_hw_context.c
600_hw_context_priv.h
600_state_common.c
|
302862defa61b2cee1ae24159aca306f090ca854 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove the now-useless internal flush callback
600_hw_context.c
600_pipe.c
600_pipe.h
|
bc70bcfc6915883bd5c60712b70e9ed7e1d80ea8 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't initialize the screen and winsys pointer twice
vergreen_hw_context.c
600.h
600_hw_context.c
600_pipe.c
|
e4340c1908a6a3b09e1a15d5195f6da7d00494d0 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: merge r600_context with r600_pipe_context The split made no sense.
vergreen_hw_context.c
vergreen_state.c
600.h
600_asm.c
600_asm.h
600_blit.c
600_buffer.c
600_hw_context.c
600_pipe.c
600_pipe.h
600_query.c
600_resource.c
600_resource.h
600_shader.c
600_state.c
600_state_common.c
600_texture.c
600_translate.c
|
78293b99b23268e6698f1267aaf40647c17d95a5 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove u8,u16,u32,u64 types
vergreen_hw_context.c
vergreen_state.c
600.h
600_asm.c
600_asm.h
600_hw_context.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
|
bed20f02a771f43e1c5092254705701c228cfa7f |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: get rid of r600_context_reg Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
600_hw_context_priv.h
|
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>
600.h
600_hw_context.c
600_pipe.h
600_state.c
600_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>
vergreen_hw_context.c
vergreen_state.c
600.h
600_hw_context_priv.h
600_pipe.h
600_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>
600.h
600_hw_context.c
600_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>
vergreen_state.c
600.h
600_state.c
600_state_common.c
|
0569f13d2b6239dbbc693781d806826924b0ed16 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for TA_CNTL_AUX Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_state.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>
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
121940ecc71f0cdc06d8840430931f8a1c7199d4 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set full register mask for PA_CL_CLIP_CNTL We don't set the other bits anywhere else. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_state.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>
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_state.c
600_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>
600_pipe.h
600_state.c
600_state_common.c
|
9c0b50ca0b31aa66147ea7919022de2633315c9a |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't set CB_TARGET_MASK in set_framebuffer_state It's emitted in draw_vbo, always. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_state.c
|
2ffa8af9db4a4a9cf4cb5bb524bd8a57c53daca0 |
29-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set full register mask for CB_COLOR_CONTROL on evergreen We don't set the other bits anywhere else. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
|
e3032a052321ea1fdfbca090618149ae1ed33911 |
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: use a more clever way to disable per-vertex point size This uses point size clamping to force point size to a particular value, making the vertex shader output irrelevant. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_shader.c
600_shader.h
600_state.c
|
b6233f4d2e91edf28e1e5a9a82fdab341ba7dd84 |
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for DB_RENDER_CONTROL We don't set the other bits anywhere else except the other DSA states, which are mutually-exclusive with this one. Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_state.c
|
3d061caaed13b646ff40754f8ebe73f3d4983c5b |
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup setting DB_SHADER_CONTROL Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_state.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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
5345e3ea86a3e942ccef083019a76b38b05f3f14 |
28-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't use register mask for SQ_GPR_RESOURCE_MGMT_1 Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.h
600_state.c
|
f183cc9ce3ad1d043bdf8b38fd519e8f437714fc |
27-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: set minimum point size to 1.0 for non-sprite non-aa points
vergreen_state.c
vergreend.h
600_pipe.h
600_state.c
|
29cf90b4148ca8b625215644ef8d65a83815db11 |
23-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix udiv/idiv/umod/imod on cayman Cayman needs some of the MUL instructions spread across a full slot of vectors. It also no longer has RECIP_UINT, the recommendation is to replace it with a U2F + RECIP_IEEE + MUL + F2U. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
a33937d043f9c1795d2be635117a7cc9646ff0ce |
29-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: enable blend_bypass for uint/sint
600_state.c
|
cb40165974856e5fc4fb7b138b3d9b1b0679cf18 |
30-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix fragcoord.w test on cayman
600_shader.c
|
f9f8ce3ead04b5334bb323c37ec1f905ca5f58b2 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused streamout code
600_hw_context.c
|
ce816dd831ba4e57b024631ff39591efae50ce14 |
30-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable printing debug info for streamout
600_hw_context.c
|
171be755223d99f8cc5cc1bdaf8bd7b4caa04b4f |
24-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
st/mesa: add PIPE_CAP_GLSL_FEATURE_LEVEL, cleanup st_extensions.c v2: handle the cap in r300 and r600 as well Additional info for r600g: The env var R600_GLSL130=1 enables GLSL 1.3. Along with R600_STREAMOUT=1, it enables full GL 3.
600_pipe.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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
b8f7550a31aabd3e00d2f822bc2587304e676fde |
28-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: remove unsupported evergreen CB formats The evergreen+ CB no longer supports the following formats compared to 6xx/7xx: - COLOR_4_4 - COLOR_3_3_2 - COLOR_6_5_5 - COLOR_8_24_FLOAT - COLOR_24_8_FLOAT - COLOR_11_11_10 - COLOR_11_11_10_FLOAT Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
|
3d993aff258378e0ca3246577198066317e82a5b |
27-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enable" This reverts commit d6cd514edbeca0de38561f66189748078d0dc602. It broke multiple streamout buffers, because it only enabled the first one.
600_hw_context.c
|
8ec05f06cba381ce757e18bc7c41f0bd33205926 |
25-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle start_component from stream_output_info when possible
600_shader.c
|
15146fd1bcbb08e44a1cbb984440ee1a5de63d48 |
25-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't expose transform_feedback2 without kernel support
600_pipe.c
|
c2b800cf38b299c1ab1c53dc0e4ea00c7acef853 |
23-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
r600g: nuke the fallback for vertex and fragment color clamping
vergreen_state.c
600_pipe.h
600_shader.c
600_shader.h
600_state.c
600_state_common.c
|
bc1c8369384b5e16547c5bf9728aa78f8dfd66cc |
23-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
st/mesa: do vertex and fragment color clamping in shaders For ARB_color_buffer_float. Most hardware can't do it and st/mesa is the perfect place for a fallback. The exceptions are: - r500 (vertex clamp only) - nv50 (both) - nvc0 (both) - softpipe (both) We also have to take into account that r300 can do CLAMPED vertex colors only, while r600 can do UNCLAMPED vertex colors only. The difference can be expressed with the two new CAPs.
600_pipe.c
|
64cb0cae55a0f71a8f2feffc1c0067abc5e56a1a |
24-Jan-2012 |
Brian Paul <brianp@vmware.com> |
r600g: remove unused variable
600_pipe.c
|
738334e80cf8a7b9fbf573f3a77cbf767ce81095 |
24-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix inconsistency with INTERP* opcode definitions Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
600_opcodes.h
600_shader.c
|
65c0f77bcc418494ca339996652a8e74198bb82f |
24-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: replace raw opcodes with names in the is_alu_trans/vector Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
|
315cf306076211394210fc075359ee7a9b2c4b9b |
24-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: add missing opcode definitions Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_opcodes.h
|
d89c96c75dbb9c003e4643942f2cce8d6cd4995b |
23-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix loop break/continue operations Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
c4d644bac1e738af7e2a3f1bef7eea09df8bb81c |
23-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix fragcoord.w Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
5a84cc4ebcc99fb029d5f855e8afa11fab09266a |
23-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix interpolation with clipvertex Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
c9cd170f2e076b096e8fed35eb464482053beb70 |
23-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: clean up register headers - CP_INTERRUPT packet doesn't exist - remove lots of r6xx copy/paste remnants from evergreen reg header - fix some cayman specific registers Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600d.h
|
d01e16639153df9f615993c25b98d5b04fb0f0a4 |
23-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: cayman fix integer multiplies Looks insane, but it does appear we need a full slot per input/output. This fixes another 180 or so piglit tests. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
f01431d0358ae337227a348e96b30adfd8d55f7c |
23-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: cayman initial integer support Adds all the easier lowhanging opcodes. Fixes ~3000 piglit tests with GLSL1.30 enabled on cayman. This just leaves the mul/div/mod ops to fix up. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
13daa059c01d6dd05064e82cf67cba9cc5fe79db |
23-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix VS fog export Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
b9c706c8c51c15af31814904d5fa1afe96b0496a |
22-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: shift integer ops are trans unit only on r600. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
9733a89f6dc8ea3a7a3b9152351203b0e5939d1a |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: replace trans/vector-only instruction lists with ranges (v2) airlied : assert on cayman cases to keep compiler happy Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
38ffc23e7b68f26672ead6c3d00aa882121fcc4e |
22-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
Revert "r600g: replace trans/vector-only instruction lists with ranges" This reverts commit 946309067c835d35a85ab2ad774df6698e6669ab. Until we check the cayman bits out properly
600_asm.c
|
a9d8809f16feb7f6d5d723f2afa2cfbea60cae55 |
22-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: srgb mode is only valid on certain format types. "If set, forces degamma on XYZ if format is FMT_8_8_8_8, FMT_BC1, FMT_BC2, or FMT_BC3" Don't claim support for sRGB on any other formts. This fixes glean texture_srgb. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
9783bba9bdd56cc52f987056ba8dc3da77d0078e |
22-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: initial cube shadow sampling It doesn't pass the piglit test, but it seems to be a lot closer than it was before. I need to track down if there is another problem. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
840a342cd0ac4a9937798a2137122387c0d3d7f6 |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: take into account kcache banks for bank swizzle check Due to the changes for multiple kcache banks support, now we are assigning final SRCx_SEL values for kcache access at the later stage, when building the bytecode. So we need to take into account kcache banks to distinguish the constants with the same address but different bank index. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
60bf0f05b472e66bf1175fcec7a274dab6f7e2a3 |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: set round_mode to truncate and get rid of tgsi_f2i on evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
vergreend.h
600_shader.c
|
946309067c835d35a85ab2ad774df6698e6669ab |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: replace trans/vector-only instruction lists with ranges Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
cb1578336421692454517f9a69dddd37de8fbf7e |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix some interpolation tests for evergreen Same fix as previously done by Dave Airlie for r600/r700 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.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>
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_hw_context.c
600_pipe.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
600d.h
|
d649bf51ec787021f7872e2a4c09fb2188c0891b |
20-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: improve kcache line sets handling v2 Add support for multiple kcache banks (constant buffers). Lock the required lines only. Allow up to 4 kcache line sets in the alu clause by using ALU_EXTENDED on eg+. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
g_asm.c
g_sq.h
600_asm.c
600_asm.h
|
261dc72fe3ce969bb4592ac49280147cd72f4414 |
21-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: no need to do CUBE coordinate handling for TXQ. Fixes texSize on cube. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
8b1471f8ca2933a5a4f55be9d0a4db83bdee0435 |
21-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: make INTERP_LOAD_P0 vector-only Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
d6cd514edbeca0de38561f66189748078d0dc602 |
21-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enable Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
90b36b50f51fd2ea906b609ae0270b9eff7a1848 |
21-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: update streamout support for virtual addresses Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_hw_context.c
|
c60dcc49e443eb1442b8f191e63078f2558eec31 |
18-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix streamout on evergreen Enable it in the evergreen_context_draw if needed. Same as already done in the r600_context_draw for r6xx/r7xx. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_hw_context.c
|
c97632642a7d84a8a21ffde37b3907632e0d01c0 |
18-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix combined MEM_STREAM instructions BURST_COUNT is clipped with ARRAY_SIZE, so set it to the max value to avoid clipping. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_shader.c
|
c96b9834032952492efbd2d1f5511fe225704918 |
18-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup AR handling (v5) So it appears R600s (except rv670) do AR handling different using a different opcode. This patch fixes up r600g to work properly on r600. This fixes ~100 piglit tests here (in GLSL1.30 mode) on rv610. v3: add index_mode as per the docs. This still fails any dst relative tests for some reason I can't quite see yet, but it passes a lot more tests than without. v4: add a nop after dst.rel this could be improved using a second pass, where we only insert nops if two instructions are sure to collide. The docs say r600, rv610, rv630 needs this, and not rv670, rs780, rs880, need AMD to confirm rv620, rv635. v5: add is_nop_inst. NOTE: This is a candidate for stable branches. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_asm.h
600_shader.c
600_sq.h
|
5e576efef2397e6748e0dc727d92d1064bf90efe |
20-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: fix typo in evergreen register Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreend.h
|
0196433ce55b7e005c483bd7c411844eb44e983b |
18-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix ISLT on r600/700 This fixes ISLT like evergreen. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
5893e686b691013525cb2608c3d605be2d8ea471 |
18-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: make r600/700 use correct ineg. Noticed by Vadim Girlin on irc. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
1fc001ea15f79166a32bc3a3fa2f6405a986e3f1 |
18-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix some of the interpolation tests. This enables linear gradients if we need a linear, it also sets the flat shade flag for color/constant interpolations. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state.c
|
b69728cba53765f6799a66ebcab2058be6d53602 |
18-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix UINT_TO_FLT on evergreen It should be processed as trans-only. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
46ce25722b364ae7fa20b61e60eff4be5ad051d3 |
18-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: add workaround for original R600 PS setup The original R600 requires the UNCACHED_FIRST_INST bit to be set in the PS. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Note: this is candidate for the stable branches.
600_state.c
|
ba59a1a0d817566576e20e66d74f1917d958119e |
17-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix recip_uint on r600. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
7383e754b70414b35c10c216034a8dc95f6f67b4 |
16-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix USLT for r600-eg
600_shader.c
|
4ba4853c0a613f771b44806cd5ce376838479802 |
17-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: rework IDIV/UDIV and implement MOD/UMOD (v2) Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_shader.c
|
850021f225f312d55fb6a24a8cef805f527510af |
15-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix mullo_uint trans slot only on r600/r700 This fixes 8 piglit tests that currently assert. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.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>
vergreen_state.c
600_pipe.h
600_shader.c
600_shader.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_shader.c
600_shader.h
600_state.c
600_state_common.c
|
d84ab821c5f5bfe9f6a57e434af9ca06d54f45b3 |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: add support for ISHR/USHR/SHL on r600-evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
600_shader.c
|
332e1d6d84353b8fac0b9619488b9dc83fe9ace1 |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement IDIV/UDIV on r600-evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
42539d569a765750e99254ff4db76dfaf014f0e6 |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement ISSG on r600-evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
6b44470bb2103d5a9c3cf5f2fb4490566971476c |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement IABS on r600-evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
beb297f2842af34bf063a2c659a411b0a6896ee1 |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: implement F2U on evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
5d97c5033bcf3696fb1608f6b75e5125aeab10bb |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: add FLT_TO_UINT opcode for evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
600_opcodes.h
|
a9302de4a3297cab9996a5b6cbfde425b89771a7 |
15-Jan-2012 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix F2I on evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
9d9afcb5bac2931d4b8e6d1aa571e941c5110c90 |
10-Jan-2012 |
Christian König <deathsimple@vodafone.de> |
vl: reintroduce PIPE_VIDEO_CAP_PREFERED_FORMAT Create the video buffers in the format the driver preffers. This temporary creates problems with decoder less VDPAU video playback. Signed-off-by: Christian König <deathsimple@vodafone.de>
600_pipe.c
|
39491d1d31d9f03437816fbb4f2872761ae1157c |
14-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: vertex id support. This requires GLSL 1.30 enabled, which requires integer types enabled, so don't bother doing an INT to FLT conversion on it. We should probably remove the instance id flt->int conversion when turning on native integers. this passes the three piglit tests with GLSL 1.30 forced on. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
9a401a2fd6c2d9aa07402e33493be3f014c0fe10 |
15-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: make u2f trans only as per the r600 isa doc. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.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
600.h
600_hw_context.c
600_pipe.h
600_shader.c
600_state_common.c
|
faa90abfe0b6f55ab69768eb930b4ab5ef21cb06 |
14-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: add r600 version of UINT_TO_FLT conversion. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
bfcffd4d721d87bb6287980a09e0296ceed0bba3 |
14-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: fix r600 f2i to be trans only emitted. This fixes a lot of asserts about the trans unit being used already. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
55bd1c8365baa5f21e79eace2bbce1413e38bfb8 |
14-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing case for uint->flt conversion. fixes some piglits like vs-decrement-uint.shader_test Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
5250bd00c00ac8470320f4fae1d74425132f2083 |
14-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing r32 uint/sint fbo formats. Fixes the GL3 required formats test. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.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>
vergreen_hw_context.c
vergreen_state.c
600_hw_context.c
600_pipe.h
600_resource.c
600_resource.h
600_state_common.c
|
3e044bcc4b2fcf9418f5a8fb682c8fab3bc454e9 |
12-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: don't advertise integers yet on r600. Still some work to be done before this is finished. This is a candidate for 8.0 branch. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
dc4c821f0817a3db716f965692fb701079f66340 |
10-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
Squash-merge branch 'gallium-clip-state' Conflicts: src/gallium/auxiliary/tgsi/tgsi_strings.c src/mesa/state_tracker/st_atom_clip.c commit d919791f2742e913173d6b335128e7d4c63c0840 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 17:59:22 2012 +0100 d3d1x: adapt to new clip state commit cfec82bca3fefcdefafca3f4555285ec1d1ae421 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 14:16:51 2012 +0100 gallium/docs: update for clip state changes commit c02bfeb81ad9f62041a2285ea6373bbbd602912a Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 14:21:43 2012 +0100 tgsi: add TGSI_PROPERTY_PROHIBIT_UCPS commit d4e0a785a6a23ad2f6819fd72e236acb9750028d Author: Brian Paul <brianp@vmware.com> Date: Thu Jan 5 08:30:00 2012 -0700 tgsi: consolidate TGSI string arrays in new tgsi_strings.h There was some duplication between the tgsi_dump.c and tgsi_text.c files. Also use some static assertions to help catch errors when adding new TGSI values. v2: put strings in tgsi_strings.c file instead of the .h file. Reviewed-by: Dave Airlie <airlied@redhat.com> commit c28584ce0d8c62bd92c8f140729d344f88a0b3cd Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Fri Jan 6 12:48:09 2012 +0100 gallium: extend user_clip_plane_enable to apply to clip distances commit f1d5016c07f786229ed057effbe55fbfd160b019 Author: Marek Olšák <maraeo@gmail.com> Date: Fri Jan 6 02:39:09 2012 +0100 nvfx: adapt to new clip state commit 6f6fa1c26bd19f797c1996731708e3569c9bfe24 Author: Marek Olšák <maraeo@gmail.com> Date: Fri Jan 6 01:41:39 2012 +0100 st/mesa: fix DrawPixels with GL_DEPTH_CLAMP commit c86ad730aa1c017788ae88a55f54071bf222be12 Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Tue Jan 3 23:51:30 2012 +0100 nv50: adapt to new clip state commit 3a8ae6ac243bae5970729dc4057fe02d992543dc Author: Christoph Bumiller <e0425955@student.tuwien.ac.at> Date: Tue Jan 3 23:32:36 2012 +0100 nvc0: adapt to new clip state commit 6243a8246997f8d2fcc69ab741a2c2dea080ff11 Author: Marek Olšák <maraeo@gmail.com> Date: Thu Dec 29 01:32:51 2011 +0100 draw: initalize pt.user.planes in draw_init This fixes a crash in glean/fpexceptions. commit e3056524b19b56d473f4faff84ffa0eb41497408 Author: Marek Olšák <maraeo@gmail.com> Date: Mon Dec 26 06:26:55 2011 +0100 svga: adapt to new clip state commit c5bfa8b37d6d489271df457229081d6bbb51b4b7 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 14:11:51 2011 +0100 r600g: adapt to new clip state commit f11890905362f62627c4a28a8255b76eb7de7df2 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 14:10:26 2011 +0100 r300g: adapt to new clip state commit e37465327c79a01112f15f6278d9accc5bf3103f Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 12:39:16 2011 +0100 draw: adapt to new clip state This adds a regression in the LLVM clipping path. Can anybody see anything wrong with the code? It works for every other case, just glean/fpexceptions crashes when doing the "Infinite clip plane test". commit b474d2b18c72d965eefae4e427c269cba5ce6ba2 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 13:14:59 2011 +0100 u_blitter: don't save/set/restore clip state commit 9dd240ea91f523a677af45e8d0adb9e661e28602 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 13:11:56 2011 +0100 gallium: don't cso_save/set/restore clip state The enable bits are in the rasterizer state. commit a4f7031179f5f4ad524b34b394214b984ac950f6 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 12:58:55 2011 +0100 gallium: default depth_clip to 1 depth_clip = !depth_clamp commit fe21147a00ab90e549d63fe12ee4625c9c2ffcc3 Author: Marek Olšák <maraeo@gmail.com> Date: Mon Dec 26 06:14:19 2011 +0100 trace,util: update state logging to new clip state Also dump the other missing flags. commit 2a3b96e84ac872dcc5bc1de049fe76bb58d64b23 Author: Marek Olšák <maraeo@gmail.com> Date: Sun Dec 25 10:43:43 2011 +0100 st/mesa: adapt to new clip state commit b7b656a42fca19d7c85267f42649a206a85a2c72 Author: Marek Olšák <maraeo@gmail.com> Date: Sat Dec 17 15:45:19 2011 +0100 gallium: move state enable bits from clip_state to rasterizer_state
vergreen_state.c
600_blit.c
600_pipe.c
600_state.c
|
8c2bfa34a0d70ab08de44e3b091b3a097abbad97 |
23-Dec-2011 |
Christian König <deathsimple@vodafone.de> |
vl: replace decode_buffers with auxiliary data field Based on patches from Maarten Lankhorst <m.b.lankhorst@gmail.com> Signed-off-by: Christian König <deathsimple@vodafone.de> Acked-by: Maarten Lankhorst <m.b.lankhorst@gmail.com>
600_pipe.c
|
e60daf7e25daaaae34c803834079201ef1cc3900 |
06-Jan-2012 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: remove obsolete MULTIWRITE comment fs writes all is implemented in the shader on eg+. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.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.
600_state_common.c
|
0950086376b1c8b7fb89eda81ed7f2f06dee58bc |
02-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: add flag PIPE_TRANSFER_MAP_PERMANENTLY Please see the diff for further info. This paves the way for moving user buffer uploads out of drivers and should allow to clean up the mess in u_upload_mgr in the meantime. For now only allowed for buffers on r300 and r600. Acked-by: Christian König <deathsimple@vodafone.de>
600_texture.c
|
7cd1c62b6be88072e3d937b67c499592490927f1 |
02-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove deprecated PIPE_TRANSFER_DISCARD PIPE_TRANSFER_DISCARD_RANGE is defined the same.
600_buffer.c
|
f94d390213308d4aca1515c75acc6865ebb45796 |
01-Jan-2012 |
Marek Olšák <maraeo@gmail.com> |
u_upload_mgr: remove the 'flushed' parameter Not used by anybody. Reviewed-by: Brian Paul <brianp@vmware.com>
600_buffer.c
600_translate.c
|
77058335ebc9a1c2a81ec2cf98a8a157065e69d0 |
02-Jan-2012 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing colorswaps for r8 uint/sint. fixes some warnings in GL3.0 tests. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.c
|
7dd2d29a560a53d42d15f9ac06ba2ee7cd312ed9 |
30-Dec-2011 |
Michel Dänzer <michel.daenzer@amd.com> |
r600g: Manage fences per screen rather than per context. A fence is a screen object and can outlive the context it was created from. The previous code would access freed memory in that case, resulting in various problems. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=44151 https://bugs.freedesktop.org/show_bug.cgi?id=44007 Probably fixes: https://bugs.freedesktop.org/show_bug.cgi?id=43993 NOTE: This is a candidate for the 7.11 branch. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
600_pipe.c
600_pipe.h
|
2175634e73f9c5ccaf565f0dc15520610b1eb7ff |
25-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix a warning that a variable may be uninitialized
600_blit.c
|
1b9577b833db28651e89e5c12559c7af5dde8822 |
17-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove PIPE_CAP_MAX_STREAM_OUTPUT_SEPARATE_ATTRIBS It's the same as PIPE_CAP_MAX_STREAM_OUTPUT_BUFFERS. Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
93f4e3cb6c1ca303ee1f5c2a2491a8eff33f2633 |
24-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
winsys/radeon: move managing GEM domains back to drivers This partially reverts commit 363ff844753c46ac9c13866627e096b091ea81f8. It caused severe performance drops in Nexuiz. Reported by Phoronix. Tested by me on r300g and by IRC people on r600g.
600.h
600_buffer.c
600_hw_context_priv.h
600_texture.c
|
745d990b8d95b935874284b786dce1f010970c8d |
17-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix MAX_STREAM_OUTPUT_SEPARATE_ATTRIBS limit
600_pipe.c
|
a3bfbccd0a97ccaa9d07317d9681a350d02ee456 |
17-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle new caps
600_pipe.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.
g_asm.c
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600.h
600_asm.c
600_asm.h
600_blit.c
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
600_pipe.h
600_query.c
600_shader.c
600_sq.h
600_state.c
600_state_common.c
600d.h
|
861a029ddb31e91bb4d8e18ab708d0d172f63aad |
15-Dec-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: interface changes necessary to implement transform feedback (v5) Namely: - EXT_transform_feedback - ARB_transform_feedback2 - ARB_transform_feedback_instanced The old interface was not useful for OpenGL and had to be reworked. This interface was originally designed for OpenGL, but additional changes have been made in order to make st/d3d1x support easier. The most notable change is the stream-out info must be linked with a vertex or geometry shader and cannot be set independently. This is due to limitations of existing hardware (special shader instructions must be used to write into stream-out buffers), and it's also how OpenGL works (stream outputs must be specified prior to linking shaders). Other than that, each stream output buffer has a "view" into it that internally maintains the number of bytes which have been written into it. (one buffer can be bound in several different transform feedback objects in OpenGL, so we must be able to have several views around) The set_stream_output_targets function contains a parameter saying whether new data should be appended or not. Also, the view can optionally be used to provide the vertex count for draw_vbo. Note that the count is supposed to be stored in device memory and the CPU never gets to know its value. OpenGL way | Gallium way ------------------------------------ BeginTF = set_so_targets(append_bitmask = 0) PauseTF = set_so_targets(num_targets = 0) ResumeTF = set_so_targets(append_bitmask = ~0) EndTF = set_so_targets(num_targets = 0) DrawTF = use pipe_draw_info::count_from_stream_output v2: * removed the reset_stream_output_targets function * added a parameter append_bitmask to set_stream_output_targets, each bit specifies whether new data should be appended to each buffer or not. v3: * added PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME for ARB_tfb2, note that the draw-auto subset is always required (for d3d10), only the pause/resume functionality is limited if the CAP is not advertised v4: * update gallium/docs v5: * compactified struct pipe_stream_output_info, updated dump/trace
600_pipe.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>
600_state_common.c
|
e368eefc6866d78e2a004db2fdb13e08e06e0839 |
06-Dec-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix error path and use util_slab_free Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_buffer.c
|
9608ef5dec4d70024e68a49c64faed9ec7e4d2e0 |
27-Nov-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add framebuffer support for 2/10/10/10 integer
vergreen_state.c
600_state.c
|
d38768fe3882ac4bc29d4cb7aca975f20c981c0c |
27-Nov-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add int support for 2/10/10/10 format. integer wasn't set properly for the non-uniform types. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
d2cd621086fdf620a96d599bac0873ff58ddf137 |
26-Nov-2011 |
Chia-I Wu <olv@lunarg.com> |
android: pass -std=c99 by default Several modules expect a C99 compiler already. It is also the default for Makefile build.
ndroid.mk
|
034e63b9f8ee23cfac769b1a2c431bdd2307a6c4 |
22-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle all remaining CAPs
600_pipe.c
|
4ac250c9d594898ad02323dbf02aab8792366d11 |
22-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove default case statements in get_param This will throw a compile warning if there's an unhandled CAP.
600_pipe.c
|
fba685a0995e76f86af5920163297e5c3b32fb4b |
22-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: rename to u_vbuf
600.h
600_pipe.h
600_resource.h
|
bb71f9249a66b9a4921a878766c0a2d87624c369 |
19-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: separate out floating-point CAPs into its own enum The motivation behind this is to add some self-documentation in the code about how each CAP can be used. The idea is: - enum pipe_cap is only valid in get_param - enum pipe_capf is only valid in get_paramf Which CAPs are floating-point have been determined based on how everybody except svga implemented the functions. svga have been modified to match all the other drivers. Besides that, the floating-point CAPs are now prefixed with PIPE_CAPF_.
600_pipe.c
|
2a0126932b320806e030c1c085791e257516e0cd |
18-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove PIPE_CAP_GLSL and enable GLSL unconditionally Only i965g does not enable GLSL, but that driver has been unmaintained and bitrotting for quite a while anyway.
600_pipe.c
|
0fe14178dbd5b350082a06c7488b6077362a85e3 |
15-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: handle PIPE_SHADER_CAP_OUTPUT_READ Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_pipe.c
|
c95bd12bec0834715894ee42e89e26c31a4ffac4 |
20-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use u_vbuf_mgr to set/get the index buffer
600_pipe.h
600_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.
600_state_common.c
|
0cddea37b2d79e4353347621cd2849cde682084a |
17-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: don't change the order of writes in merge_inst_group Merge may produce incorrect order of operations for r600-eg: x: inst1 R0.x, ... ; //from current group ... t: inst0 R0.x, ... ; //from previous group, same destination Result of inst1 will be lost. So compare destinations and don't allow this. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
|
4f7c21899ad449be2bc1157ce1d2d99296a34499 |
14-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix the representation of control-flow instructions We need something that looks like a compiler and not like some hacker put some functions together. /rant This is a band-aid for these two problems: - The R600 and EG control-flow instructions appear in switch statements next to each other, causing conflicts when adding new instructions. - The ALU control-flow instructions are bitshifted by 3 (from CF_INST 26:29 to CF_INST 23:29, as is defined by r600 ISA) even for EG, where CF_INST is 22:29. To fix this mess, the 'inst' field is bitshifted to the left either by 22, 23, or 26 (directly in the definitions), such that it can be just or'd when making bytecode without any shifting. All switch statements have been divided into two, one for R600 and the other for EG. Of course, there is a better way to do this, but that is left for future work. Tested on RV730 and REDWOOD with no regressions. v2: minor cleanup as per Alex's comment. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
g_asm.c
g_sq.h
600_asm.c
600_asm.h
600_opcodes.h
600_shader.c
600d.h
700_asm.c
700_sq.h
|
a2bcaba1cdc4c06868d95c613a28584743471361 |
06-Oct-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: mask write for fake VS export components
600_shader.c
|
dcdc062dda62212d09f522e07530ed79871ba481 |
06-Oct-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix op3 & write in merge_inst_groups
600_asm.c
|
ebecbbc2e68673a49c3d0394c2f591f7a605110f |
14-Nov-2011 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: set max max tex/vtx instructions count to 16 for cayman Cayman is 16 as well. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
|
c32ca6d9c1328339a9e6341d875142acd23bc9c1 |
15-Oct-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: set max tex/vtx instructions count to 16 for evergreen According to evergreen-isa doc 16 is max value for evergreen. More than 16 doesn't work for me. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
|
579c04e42ef1bb449fe86d7224ccfe0c2d569595 |
13-Nov-2011 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: properly handle cayman in is_alu_vec_unit_inst() Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
|
3d441153a1ad6367ed8eecb147716a1cc9c1253f |
12-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix cb offset for flushed_depth_texture Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
vergreen_state.c
|
d5e91a2364a497efb75aefe6538e64d4e5ada51a |
12-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix stencil buffer ref counting on evergreen Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_texture.c
|
8e366dc365d01213b71b87ace47d30938db74845 |
13-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: lazy load for AR register Emit MOVA* instruction only when AR is used. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
600_asm.h
600_shader.c
|
88a140cd199d585d15ce9b0b3ca27815bedf0d63 |
13-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: include INTERP_[XY|ZW] in is_alu_vec_unit_inst This will disallow moving them to the trans slot in merge_inst_groups Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_asm.c
|
b8428e63353373e769a9ba787875b49fdd25a1ee |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't set the query result to 0 after a call to get_query_result get_query_result doesn't reset the result. Only begin_query does.
600_hw_context.c
|
72c1658554b2d1e90e687340c5db4fec939b3901 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: the type of OCCLUSION_PREDICATE result should be boolean
600.h
600_hw_context.c
600_query.c
|
b999be83744c9419fa3134201006451db119b81d |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement PIPE_QUERY_OCCLUSION_PREDICATE
600_hw_context.c
|
dbd24b5df6739b85638020c0e5ab1cc9ff84a4b7 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove useless texture barrier
600_texture.c
|
ec3d2c7f089e0a4750dc42f10da914b58858499e |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: flush the whole context when CS is full, not just hw_context Because we disable render condition in r600_flush, but not in r600_context_flush.
600.h
600_hw_context.c
600_pipe.c
|
6a490149d9b8b77ead81b4227f2860ec22095217 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: turn some CS overflow checks into assertions They're not really exhaustive and not so useful either.
vergreen_hw_context.c
600_hw_context.c
|
5222e16e2b611064c0add9eef7f56488c9b8fbe6 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: put the rest of CS overflow checks in r600_need_cs_space
vergreen_hw_context.c
600.h
600_hw_context.c
|
30a570e450da30fa73546c0ff54b4757678a5663 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: flush caches regardless of render condition What if somebody enables render condition just before we flush...
600_hw_context.c
|
578b211be6a1466eea00fc4a8fc5d4efa4bfd62c |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable render condition at the end of CS, re-enable at the beginning
600_hw_context.c
600_pipe.c
|
9564185b0a1ac54e7188f88e57ed1a8d09d4e7bb |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't suspend queries if they have already been suspended by blitter And add some assertions.
600_hw_context.c
|
cb7c6c30d02ab46efc4ed711b2a632de50157347 |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: properly reserve CS space for queries_suspend
vergreen_hw_context.c
600.h
600_hw_context.c
|
1d09831253b82374774daee772e90a83de17517a |
10-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: reserve CS space for a draw command in begin_query and render_condition There's no point in emitting those if you can't emit a draw command too.
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
11bdd28796e303eda70f1d73bd2469597bd561bc |
09-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate checking whether CS is full This adds a new function r600_need_cs_space. Currently, it's easy to overflow the CS - queries are not counted in. I guess that's not the only case where the driver may crap out.
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
60302f83e2344195f9a1c37215def09fa9c45ff9 |
08-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: clarify meaning of one variable in shader codegen It's easier to read now.
600_shader.c
|
1b375f8413d898a18c989c20d0dc16d3b1be33bc |
08-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cosmetic changes in query code Mainly updating comments and removing one use of a magic number.
600.h
600_hw_context.c
|
8187ad07546cae0ae91255c665315f86b03367a9 |
08-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use modulo for computing index into query (ring) buffers
600_hw_context.c
|
552e90bd6ae315ba7e0a331c6f66f8b5f1542631 |
08-Nov-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: make r600_query_result more generic We'll soon start adding new query types, maybe even querying more than one value per query.
600_hw_context.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>
vergreen_hw_context.c
vergreen_state.c
vergreend.h
600_state.c
600_state_common.c
600d.h
|
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>
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_shader.c
600_shader.h
600_state.c
600_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.
vergreen_state.c
600_shader.c
600_shader.h
600_state.c
600_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.
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_shader.c
600_shader.h
600_state.c
600_state_common.c
|
c6a302647200cb0bbc0d0d7680ad4e9fc5dd94bf |
12-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: more integer support just some more trivial integer changes for r600/r700. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_shader.c
|
0a2c4889cb78825035317ba6bf33440c81eabdfe |
02-Nov-2011 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: add comment about special shader exports Certain exports (position, point size, etc.) are treated specially by the shader and not counted as generic exports. Note the exports and any relevant related state bits. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_shader.c
|
16c0a3a9720c03c3d5cbfd66e2db63014dfc4f19 |
02-Nov-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: take into account PSIZE output for spi mapping Skip PSIZE and POSITION when counting VS outputs. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=42435 Tested without regressions on evergreen. NOTE: this is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_shader.c
|
9eac0fce83c88bedfc6d1c9a653c393d2be4b655 |
29-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: reset the render condition to NULL when rendering unconditionally
600_query.c
|
b40edc63d7d272ac132fded52f3119f4780c7e6b |
29-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: shortcut ctx->screen->ws to ctx->ws
vergreen_hw_context.c
600.h
600_hw_context.c
600_hw_context_priv.h
600_pipe.c
|
e8139ebf583acf37150a8b341bcbef6b924a7792 |
26-Jul-2011 |
Mathias Fröhlich <Mathias.Froehlich@gmx.net> |
r600g: Replace needless flush in texture upload. Replace pipe->flush() with pipe->texture_barrier() in the texture upload path for the staging texture. This should be enough to get data out of the gpu caches ready to be read for texture fetch.
600_texture.c
|
7684808f9ce2da944be3ca9cc1ac4661d9b167fb |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove one pointless flush It's not useful for anything. The rest of the patch is just a cleanup resulting from some of the variables being no longer used. There are no piglit regressions.
600.h
600_blit.c
600_hw_context.c
|
bbad5103e61806ef6d6a0d5e53abc4b9e77a7fe9 |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: get backend mask after the context is fully set up
vergreen_hw_context.c
600_hw_context.c
600_pipe.c
|
1e1a7011ee8f7e954b9f77985665495e53efae22 |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't flush before reading query results Taken care of by the winsys.
600_hw_context.c
|
e9b6f21a5054b2639a1dfc6401e4e9053dce5394 |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: only maintain the list of active queries And not all existing queries. The only reason we have that list is to be able to suspend and resume the active ones. This reduces looping over queries when suspending and resuming. The queries no longer have to track some of their states.
vergreen_hw_context.c
600.h
600_hw_context.c
600_query.c
|
b70a51318a43f489611f4fc2f93887a362f5c99f |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup r600_query_result
600_hw_context.c
|
1de02d7364fe7a2ea51848e67b65144fe4a8c7f4 |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't flush in r600_get_backend_mask The winsys does the flush in buffer_map.
600_hw_context.c
|
6e79127e79e6ff80e3715a2190e437cfa92b4e96 |
28-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant variable r600_query::buffer_size
600.h
600_hw_context.c
|
a19e6a8f2840be9a59e46c8d408658715ae47bf0 |
27-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant variable r600_pipe_context::blit
600_blit.c
600_pipe.h
600_state_common.c
|
69e48e7220f018d874e85eea6962ec58b1feba87 |
26-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove redundant assignment of pipe_draw_info in draw_vbo
600_state_common.c
|
344039d81d3cc079dd73b3b703ff613c344904e0 |
26-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup draw_vbo and add comments
600_buffer.c
600_pipe.h
600_state_common.c
600_translate.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
600_state_common.c
|
3d7934760930fdf208032aca2d933baf7768fdfc |
25-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup some magic numbers
600_state_common.c
600d.h
|
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.
600_state_common.c
|
faa16dc456f1f910eef24eaa23889be806b513b7 |
25-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set correct tiling flags in depth info The kernel currently overwrites the flags, but if we stopped doing that, this would break badly.
vergreen_state.c
600_state.c
|
d5bfcf73fd2c86c3fdd959a212719f101ad76a76 |
23-Oct-2011 |
Mathias Fröhlich <Mathias.Froehlich@web.de> |
r600g: make r[67]00 not bail out on PRED_SETNE_INT.
600_asm.c
|
8b36958ceb23b8a40a622f950ddf8fe94583c143 |
22-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: make if's use PRED_SETNE_INT no matter what. This is more correct for TGSI if, and with native ints enabled it fixes 25 piglit fails. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_shader.c
|
d54407040b7bfa345b76bfb578beab953c57592b |
22-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: print inst in hex in dumps since we have them as hex in the headers. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
608a7009d93d589a93a90a4d8edb9fdf360c98a6 |
22-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: drop specific i2f it should be a trans only op2. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
7a3bbd3d5d551ede6c8cbd2b0ac8ef005ee9e043 |
21-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup r600_reset_blittable_to_compressed
600_blit.c
|
e556983fc8f0ac9046c5a5e3e34e8ea036587ac7 |
23-Sep-2011 |
Mathias Fröhlich <Mathias.Froehlich@gmx.net> |
r600g: Use the bitfield define matching the register it is used for. Fix a typo that should result in the same code.
600_state.c
|
866f9b18c68ede63c00917ec9c3dae3524ca8826 |
11-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
gallium: rename ZS stencil type to UINT (v2) these are never USCALED, always UINT in reality. taken from some work by Christoph Bumiller v2: fixup formatting of table + tabs Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.c
600_texture.c
|
95fd5e5aba2e21ab20cb971506a81c0049b5a694 |
10-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: drop force int type workaround now that we have integer texture types I can drop this workaround so that copies of values is done properly (as floats would fail on some corner cases). Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_blit.c
600_resource.h
600_state.c
|
8d3e505ed66cbaa93782acdd5b296704392fcb06 |
10-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add integer texture/render integer formats for r600/700. with these I can drop the force int type hack. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state.c
|
9b34cea7e91f90023ca3490603155d758cbdee1c |
25-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: uarl fixes. Not 100% sure these are correct yet
600_asm.c
600_shader.c
|
ddcdd6137ba8f7bf7cdaba701bb7f6307958f35f |
09-Oct-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: enable integer shader cap for evergreen. Will get to adding r600/r700/cayman support, have it mostly written on another PC. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
0110aa09e5898987ee86586e438ac571075eba3a |
26-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g/eg: add integer types support adds handling for int texture/vertices to evergreen. TODO r600/700 support. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_asm.c
600_texture.c
|
4e28e6f6c777841b9ffe7a7ad1e865e2595f70f9 |
26-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
u_blitter: add integer clear support We need add a new set of fragment shader variants, along with new vertex elements for signed and unsigned clears. The new fragment shader variants are due to the integers values requiring CONSTANT interpolation. The new vertex element descriptions are for passing the clear color as an unsigned or signed integer value. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
024ac93e60921295ee7a49de1782eeaffd597fa0 |
02-Oct-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix parsing TGSI declarations It was a lucky coincidence that it worked.
600_shader.c
|
aae342cff098034b6f685a81ecb4cd5e3fa92162 |
30-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix a compiler warning
600_hw_context.c
|
bf0baa771709e1076613cf9f9bed6ac004dd0439 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: move all files from winsys/r600 into drivers/r600 Be sure to reconfigure after this commit. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
akefile.sources
vergreen_hw_context.c
600_hw_context.c
600_hw_context_priv.h
|
363ff844753c46ac9c13866627e096b091ea81f8 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
winsys/radeon: move GEM domains out of the drivers into winsys The drivers don't need to care about the domains. All they need to set are the bind and usage flags. This simplifies the winsys too. This also fixes on r600g: - fbo-depth-GL_DEPTH_COMPONENT32F-copypixels - fbo-depth-GL_DEPTH_COMPONENT16-copypixels - fbo-depth-GL_DEPTH_COMPONENT24-copypixels - fbo-depth-GL_DEPTH_COMPONENT32-copypixels - fbo-depth-GL_DEPTH24_STENCIL8-copypixels I can't explain it. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_buffer.c
600_texture.c
|
af8eb5c851a9d566059ae9e37745614cd96b9a13 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
winsys/radeon: remove a redundant parameter 'size' from buffer_from_handle It's part of pb_buffer already. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_texture.c
|
90ce3cdde9fb2dd507b4e21c5456a3371f5996bc |
17-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove struct radeon (or what's left of it) Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_pipe.c
600_pipe.h
|
518557d74abd4ce035dae079ff6eb1b08cc639d0 |
17-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: move family and chip_class from struct radeon to r600_screen Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_pipe.c
600_pipe.h
600_texture.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>
vergreen_state.c
600.h
600_asm.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_shader.c
600_state.c
600_state_common.c
600_texture.c
|
ba89086e79b22bd9578ea642846108de624c91e9 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_CAP_TEXTURE_BARRIER Same issue as with conditional_render. Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
3d13b081c72626acba6b9a25baec740c60dfafe1 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_CAP_CONDITIONAL_RENDER We were checking whether render_condition is set. That was not reliable, because it's always set with trace and noop regardless of driver support. Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
f5bfe54a34d9c8cd5de2b096d0e8486fe0d990a7 |
27-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add and use PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS This removes: - PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS - PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS in favor of the that new per-shader cap. Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
557c3febdfd88ba1a41d3e8e0221e447d491c343 |
26-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove PIPE_CAP_TEXTURE_MIRROR_REPEAT All drivers support it (well, except Cell). The boolean option is going away from core Mesa too. This is a follow-up to Ian Romanick's patch "mesa: Remove ARB_texture_mirrored_repeat extension enable flag". Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
e92348b7f5ee2565371dd779f25cc0ede8724886 |
24-Sep-2011 |
Christoph Bumiller <e0425955@student.tuwien.ac.at> |
r600: support polygon offset clamp state
vergreen_state.c
600_state.c
|
9f61e43b4903c6cf0ac03a479ec9ed7b15fd6ccf |
27-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
gallium: move border color to be a color union EXT_texture_integer also specifies border color should be a color union, the values are used according to the texture sampler format. (update docs) Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Brian Paul <brianp@vmware.com>
vergreen_state.c
600_state.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.
600_state_common.c
|
28fb79891101c23c75982726c81112caa96f9275 |
25-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: s/u_vbuf_mgr_/u_vbuf_
600_pipe.c
600_pipe.h
600_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.
600_state_common.c
|
6dd284f7c8fac22f64c13fdf9909094f5ec59086 |
16-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
gallium: move clear paths from rgba to a pointer to a color union (v2) This moves the gallium interface for clears from using a pointer to 4 floats to a pointer to a union of float/unsigned/int values. Notes: 1. the value is opaque. 2. only when the value is used should it be interpretered according to the surface format it is going to be used with. 3. float clears on integer buffers and vice-versa are undefined. v2: fixed up vega and graw, dropped hunks that shouldn't have been in patch. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
2b47d2bce1f77cc450da500655a0ab5596c0585e |
16-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup missing scaled r600 types. I was still missing a couple of types on r600/r700 codepaths. Fixes these up. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state.c
|
f2bae9456f141f8c1104ef2a0aab31f6190ae5f0 |
15-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: interpret integer texture types as ints. For signed/unsigned with no normalisation or srgb, assume its an INT type texture. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
2dfabdd0a479a29d23aa6b10a0b6bfeb48e956b2 |
15-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: take constantly interpolated values into a/c We could constant interpolated values now and set have_perspective if nothing else is set to avoid a GPU hang. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
|
21c5607e64ca4ef68730d8e846d8e7744ecdd024 |
15-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add flat non-interpolation support. TGSI CONSTANT interpolation is just flat, and we just read the values direct from the LDS into the GPR without doing any interpolation on them. This is needed to pass integer types into the fragment shader. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_opcodes.h
600_shader.c
|
de3218664a03ee116ca58db571f90a6914299a81 |
15-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: set number type correctly for color buffers. If we get a scaled type assume its a real integer type (as textures are). Also fixup the blend bypass and blend clamp flags on evergreen as per the docs. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
|
b205f53c7fe1a1b63465ad8b55047d7b5490d4b6 |
10-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing formats to color buffer setup. just playing with EXT_texture_integer, and this was first bug. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.c
|
373234ce17555376c5cb57a2cdce3038df3f51cd |
14-Sep-2011 |
Michel Dänzer <michel.daenzer@amd.com> |
r600g: Initialize multi VGT related register on Cayman. Prevents lockups with piglit tests draw-elements and draw-vertices using large numbers of vertices. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Alex Deucher <alex.deucher@amd.com>
vergreen_state.c
vergreend.h
|
f97acf40155a5d63a70ac6875df8128cb91d2369 |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused function r600_buffer_from_handle
600_buffer.c
600_pipe.h
|
12325b7962ba0dcc34cef2b6070ecd511e5ffa88 |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove an irrelevant XXX comment
600.h
|
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.
600_buffer.c
600_pipe.c
600_resource.h
600_state_common.c
|
ac028b20e5431ed3c78b6a4a9192e84f6873c9fd |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set the return type of radeon_destroy to void
600.h
|
b87bc2eb44cd605f2992335b5649ca907ba0c55d |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove r600_drm_public.h
600.h
600_pipe.c
|
1a532ca79a4a87bb86c641a6ca22da0301dc1f62 |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: inline some of the winsys r600_get functions
vergreen_state.c
600.h
600_pipe.c
600_query.c
600_texture.c
|
3603d157889544230f1787bbdc4915ccd7461c59 |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: compute tiling info in the pipe, not in the winsys The winsys doesn't need it.
600.h
600_pipe.c
600_pipe.h
600_texture.c
|
85f5d7ceee526a272cb19c2c9d44d6e7aa5d422d |
11-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup build include dirs and dependencies The scons build still depended on libdrm_radeon.
ndroid.mk
akefile
Conscript
|
6b9a36cc3ff3b0a65f70b8a5503e26339a0e4fbe |
05-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix shadow rect samplers
600_shader.c
|
c8b0b13d40d2686ff34ead1ac98cc98df3530480 |
05-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use SAMPLE_LB for OPCODE_TXB
600_shader.c
|
b37931f69b7885ec9cdcaea8aec10db777d7e60a |
04-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable texture arrays
600_pipe.c
|
929ad43b11cfc24f3e27bc1da2523b7fc142917f |
05-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: add support for shadow array samplers I had to guess & verify how some of the SAMPLE instructions work.
600_shader.c
600d.h
|
23b4ad46268e4b3eb8399cadc448d8747492bd41 |
04-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement texture arrays for evergreen
vergreen_state.c
|
840ad139aff401829552d0e3ba77f8abcb5862bd |
04-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: always decompress all mipmaps and layers, slices, or faces of zbuffers This fixes piglit/fbo-depth-array. Reviewed-by: Dave Airlie <airlied@redhat.com>
600_blit.c
600_texture.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.
600_pipe.h
600_state.c
600_state_common.c
|
379429137238e79296b8222c0e13d7d961910633 |
05-Sep-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS v2: remove PIPE_CAP_ARRAY_TEXTURES in favor of the new CAP.
600_pipe.c
|
1d52ddc3bba276451fdd690a5e9f430505278062 |
24-Aug-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add TXQ and TXF support Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
600d.h
|
cdeffbfddceaccaad5d78f5c95426f41dec74fe5 |
05-Aug-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial evergreen integer opcode support This just adds the opcodes for evergreen, need to work on r600 and cayman implementations. don't advertise nativeintegers yet until we work out all the regressions. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_shader.c
|
f9b7d3bd4a744537db29f8688cf4c4109fb19ab1 |
05-Sep-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add 10/10/10/2 vertex format conversion.
600_asm.c
|
0b666106c5f75b581ef1ebeb354c29a00400404f |
29-Aug-2011 |
Dave Airlie <airlied@redhat.com> |
gallium: add caps for MIN/MAX texel offsets. As per Brian's suggestion, add caps for drivers that support texture offsets to advertise a min/max via TGSI, also use it in the state tracker. Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Brian Paul <brianp@vmware.com>
600_pipe.c
|
0d0285ba916d9e25871354441c09b0a8c7c9b844 |
30-Aug-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: add support for R4A4 and A4R4 textures. Sampling worked out of the box, but this make them work as surface as well. Signed-off-by: Christian König <deathsimple@vodafone.de>
vergreen_state.c
600_state.c
|
8f4ec55f77a993ec44db56726187bdd4f041880e |
29-Aug-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: Make unaligned 3D textures work on +evergreen The layersize calculation is slightly different on +evergreen. This makes mpeg2 video decoding and piglits texture-packed-formats test work correctly on this hardware.
600_texture.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>
vergreen_state.c
600_blit.c
600_buffer.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
600_texture.c
600_translate.c
|
702838a7061cde91a6bcdd3382817deb61218bf1 |
22-Aug-2011 |
Michel Dänzer <michel.daenzer@amd.com> |
r600g: Handle PIPE_TRANSFER_MAP_DIRECTLY. If the state tracker tries to map the resource directly but we can't or don't want to do that, fail to create a transfer. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_texture.c
|
231fce7d630bcf6aaf0e435e461ad5af842e437f |
09-Aug-2011 |
Christian König <deathsimple@vodafone.de> |
g3dvl: Rework the decoder interface part 2/5 Implement PIPE_CAP_NUM_BUFFERS_DESIRED giving the decoder control over the number of buffers a state tracker should allocate. Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Younes Manton <younes.m@gmail.com>
600_pipe.c
|
fdb62ef3f5b0fadd3cbac610f5b612bcfad5af1a |
24-Aug-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix replace_gpr_with_pv_ps Instructions with 3 source operands have no write mask, so we may replace their destinations with PV/PS in the next group even if their dst.write is 0. Note: This is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
|
6ba68c7654ee9c2e90b99b4ba653287684904c74 |
24-Aug-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix check_and_set_bank_swizzle Need to do full check when not all bank swizzles in the group are forced (e.g. when trying to merge interp_* group with the next instruction) Note: This is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_asm.c
|
7b1972d7be8ed68676786288ac2d77b8d71d113d |
19-Aug-2011 |
Chia-I Wu <olvaffe@gmail.com> |
android: add support for r600g Tested with a Radeon HD 6250. SurfaceFlinger (the display server and compositor) works. 2D apps with RGB or RGBA visuals work. As for 3D apps, some work but some don't (with serious rendering defects). Reviewed-by: Marek Olšák <maraeo@gmail.com>
ndroid.mk
|
8dda3f2bcb5723518c284d502d224fe9c27122fc |
19-Aug-2011 |
Chia-I Wu <olvaffe@gmail.com> |
r600g: share the source list Factor out C_SOURCES from Makefile to Makefile.sources, and let Makefile and SConscript share it. Reviewed-by: Marek Olšák <maraeo@gmail.com>
akefile
akefile.sources
Conscript
|
cc9a8915f093c57d2748370d18ed47f66c933013 |
24-Aug-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fill out missing entries in opcode tables. this just adds the missing opcodes as unsupported. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
db71537f01e0e6fd19e90bda6cfd727bb18832df |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't allocate separate depth and stencil for transfer textures on EG The state tracker expects depth and stencil pixels interleaved. Evergreen can bind an interleaved depth-stencil resource as a colorbuffer, but not as a zbuffer. The hardware can do the interleaving for us when decompressing.
600_texture.c
|
754ea4ea76f1d5ac6150090cffe2542bdf178d87 |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: finally enable float depth buffers on evergreen
vergreen_state.c
|
565f39bdb2943bdb94ac3bdf67793c942ff45016 |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename resource -> view in create_sampler_view The sampler view is not a resource. Also remove the unused desc variable.
vergreen_state.c
600_state.c
|
751a6ed893d393eaea266d892402d132f7d15a7d |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: hack around a problem with texture alignment
600_texture.c
|
98a87a594b6983d2a05d9412e3fa074894c334ff |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: simplify the conditionals determining array mode
600_texture.c
|
7f29824fd5df27eca516ad65e4a4f8ff94fe7bed |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: put depth and stencil into one backing buffer For DRI2 sharing.
600_texture.c
|
68c54abb2cfd12a031829e78d721b2480d0c8cc4 |
19-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix depth-stencil on evergreen Such that it actually works in apps which use both. A separate buffer is allocated for stencil. The only exception is the window-system-provided depth-stencil buffer, where depth and stencil share the same buffer. This fixes: - fbo-depthstencil-GL_DEPTH24_STENCIL8-clear - fbo-depthstencil-GL_DEPTH24_STENCIL8-drawpixels-FLOAT-and-USHORT - fbo-depthstencil-GL_DEPTH24_STENCIL8-readpixels-24_8 - fbo-depthstencil-GL_DEPTH24_STENCIL8-readpixels-FLOAT-and-USHORT
vergreen_state.c
600_blit.c
600_resource.h
600_texture.c
|
e330d90e919cebd64f720ccfb5dca94c2ded4e4c |
18-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix a possible crash in r600_adjust_gprs
600_state.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.
vergreend.h
600_pipe.c
600_state_common.c
|
4a47662beaa2092447939db7880531fb706afedd |
16-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: rename bc -> bytecode It took me a while to figure out what it stands for.
g_asm.c
600_asm.c
600_asm.h
600_shader.c
600_shader.h
700_asm.c
|
e3be51311834217cf35be9186e7dc9f57a10d44b |
15-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: expose ARB_ES2_compatibility by claiming fixed-point format support I also needed to make some changes in u_vbuf_mgr in order to override the caps from the driver and enable the fallback even though the driver claims the format is supported.
600_formats.h
600_pipe.c
|
233dd4953e3e6cf39f3c7a7cd898339a89d2ff86 |
10-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
u_blitter: rename util_blitter_copy_region -> util_blitter_copy_texture
600_blit.c
|
a77431b3b0cda9da7dff628f65aaa804c7c96f57 |
14-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate two files r600d.h
600d.h
|
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>
vergreen_state.c
600.h
600_pipe.h
600_state.c
600_state_common.c
|
c79e9f0ed59d561849a0a4fbaafe87d5064d3e8c |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: enable thread offloading Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.c
600_pipe.h
600_texture.c
|
0bbbd82488c11710aaca79ed3db2b605888ac65d |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: undefine RADEON_CTX_MAX_PM4 winsys/radeon has its own definition. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
d6da5185f96c1a85390e08dc2ef36c04d6e0de11 |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: don't include radeon_drm.h and xf86drm.h Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_buffer.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>
600.h
600_asm.c
600_buffer.c
600_pipe.c
600_shader.c
600_state_common.c
600_texture.c
|
c6fec83726d3435a800f0a4e3ded89628b1a504f |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: merge radeon_bo with r600_bo Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
ab630b5768b0bfa4d7729d110ce4fb8f42e0cfb9 |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use buffer_map/unmap from radeon_winsys This also drops the unneeded bo_busy/wait functions. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_asm.c
600_buffer.c
600_pipe.c
600_shader.c
600_texture.c
|
e2e1dc9e66ff348caa97b7b35e558d75c6cc6899 |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set the flush callback in radeon_winsys I have also renamed the winsys function. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_pipe.c
|
e6fb62594fca714883af9bba9795be8838c16900 |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: emit CS using radeon_winsys Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
685b8345a8ff69460f0c62c678493527b59b18a9 |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove struct r600_reloc That is really private to winsys/radeon. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
638d75185e66727faaba5dc2df1b6e14c7c0c075 |
03-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: let radeon_winsys maintain the list of relocations Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
9865b1ec8c88154d8ceb982c42844b68e9224217 |
03-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove now-unused r600_context::fenced_bo Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
2ce783d8ddec1b1fcadc0798af0ebb045bba1cc4 |
02-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: put radeon_winsys in screen::winsys, don't include drm_driver in the pipe Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_buffer.c
600_pipe.c
600_pipe.h
600_public.h
600_texture.c
|
354f76f386afd980e8c1564c0b0502f9768007b5 |
22-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: cleanup includes in winsys Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600.h
600_asm.h
|
ce12f826927cf2d3ac3fd70d893abfb07adc23db |
22-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: first step into winsys/radeon Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
600_pipe.c
600_pipe.h
600_public.h
|
df7859be6b6b6c227e7a4e0b7fbfafcd0800f4f8 |
07-Aug-2011 |
Lauri Kasanen <cand@gmx.com> |
r600g: Add support for ROUND, v2 This is a GLSL 1.3 feature, but also used by MLAA. Signed-off-by: Lauri Kasanen <cand@gmx.com>
600_asm.c
600_shader.c
|
4683529048ee133481b2d8f1cae1685aa1736f9a |
04-Aug-2011 |
Bryan Cain <bryancain3@gmail.com> |
Merge branch 'glsl-to-tgsi' Conflicts: src/mesa/state_tracker/st_atom_pixeltransfer.c src/mesa/state_tracker/st_program.c
|
babb26776fadb683be9dacb492efcdc455b176ab |
04-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove more of unused code This is a follow-up to f6df430a85141f6a384c18079fb5b2ad848dac0d.
600_pipe.c
|
2bde0cc95d8db10b6d2c6689ca39c196a81248b0 |
03-Aug-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: take into account force_add_cf in pops When we have two ENDIFs in a row, we shouldn't modify the pop_count for the same alu clause twice. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=38163 Note: this is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600_shader.c
|
6eb94fc3444a300a0419c40cfcf356fdd88bc304 |
02-Aug-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: use backend mask for occlusion queries Use backend_map kernel query if supported, otherwise analyze ZPASS_DONE results to get the mask. Fixes lockups with predicated rendering due to incorrect query buffer initialization on some cards. Note: this is a candidate for the 7.11 branch. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
600.h
|
e69dde5233a2fc6ad4c5483d079e1ea3a2123a59 |
23-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove dummy function r600_bo_offset Always returned 0.
vergreen_state.c
600.h
600_state.c
600_state_common.c
|
f6df430a85141f6a384c18079fb5b2ad848dac0d |
22-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused code
600.h
|
be7407b75b12c70e1925c10117937ae2b9e6711f |
02-Aug-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium/util: add functions for manipulating swizzles Some of those have been in drivers already.
600_texture.c
|
17b695e6e7dd730497fb60a8e161935b23fa0e9c |
06-May-2011 |
Bryan Cain <bryancain3@gmail.com> |
gallium: add PIPE_SHADER_CAP_INTEGERS
600_pipe.c
|
dc1c0ca22a1c7fcaef90b787290144d8e3d77c33 |
29-Jul-2011 |
Alex Deucher <alexander.deucher@amd.com> |
r600g: fix up vs export handling Certain attributes (position, psize, etc.) don't count as params; they are handled separately by the hw. However, the VS is required to export at least one param and r600_shader_from_tgsi() takes care of adding a dummy export if there is none. Make sure the VS param export count in the SPI properly accounts for this. Note: This is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
vergreen_state.c
600_shader.c
600_shader.h
600_state.c
|
95ee961f77119826382cfbc617334aed986b72e5 |
28-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix vs export count Fixes https://bugs.freedesktop.org/show_bug.cgi?id=39572 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
vergreen_state.c
600_state.c
|
4d23c6df81639057f12a604556121aa7b41d921c |
24-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: use file_max instead of file_count to determine reg offset Otherwise shaders with skipped inputs/outputs doesn't work correctly. Signed-off-by: Christian König <deathsimple@vodafone.de>
600_shader.c
|
3093cbaad9962df8ad35f2c1c42d6b1259381498 |
18-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of leftover PB_USAGE_* flags. These happen to work because their values are the same as the equivalent PIPE_TRANSFER_* flags, but it's still misleading. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.c
600_texture.c
|
ef29bfee031cdab3dbb0f9a79828c4b0d0405991 |
15-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix queries and predication Use all zpass data for predication instead of the last block only. Use query buffer as a ring instead of reusing the same area for each new BeginQuery. All query buffer offsets are in bytes to simplify offsets math.
600.h
600_query.c
|
ed24e19070b7dff12670151b2d184f31c845ccae |
13-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
Merge branch 'pipe-video'
|
211887c92baf25db14251ed496140207b15e0ccb |
13-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: reenable hardware blits for STATIC and IMMUTABLE resources Getting the driver in sync with mainline.
600_texture.c
|
a0a22fead5e08b9ebfd2b64e6262e1e803a8e927 |
13-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: prevent hardware blitting based on resource usage It doesn't make much sense for STAGING and STREAM resources to be hardware blitted into VRAM.
600_texture.c
|
c8dd301b6fd6bb473d8f9f16689d9689d9608520 |
13-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: revert "set BLEND_CLAMP depending on clamp_fragment_color" BLEND_CLAMP doesn't seems to be the right way to implement "ARB_color_buffer_float".
600_state.c
|
5d0d8366f9ab0ca4c52eb927ab476953daa77f1e |
12-Jul-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: emit SQ_LDS_RESOURCE_MGMT Need to be initialized to a reasonable value as compute code may change it. Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=39119 NOTE: This is a candidate for the 7.11 branch. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
vergreend.h
|
efc7fda4627919b5355952d955ee4a2c98505e56 |
12-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] add some more PIPE_VIDEO_CAPs
600_pipe.c
|
358795bc0bacdba9a36bb010ef18ee1b2d086f2d |
11-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: revert "support textures with scaled number formats" We should add those probably when merged to master.
600_texture.c
|
f919547f3785b1d8839b9fc5c00ac397e30896a1 |
11-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_pipe.c src/gallium/drivers/r600/r600_state_inlines.h
|
12265d26ddc72f62de927ac24e12ab41fcd8d1c5 |
11-Jul-2011 |
Marek Olšák <maraeo@gmail.com> |
Revert "WIP r600g: depth_buffer_float renderbuffer support on evergreen" This reverts commit 91a52dae97379d118965567b5c11e393996baeb9. Pushed accidentally.
vergreen_state.c
|
91a52dae97379d118965567b5c11e393996baeb9 |
21-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
WIP r600g: depth_buffer_float renderbuffer support on evergreen
vergreen_state.c
|
89954723bfeef59d055d2332ff112f0204b48130 |
20-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: depth_buffer_float support on r600-r700
600_state.c
600_texture.c
|
f0a7e28e29b5005c20ac02a7eec6511f6d7fd1c4 |
10-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: LIT: clamp negative src.y to 0 Fixes https://bugs.freedesktop.org/show_bug.cgi?id=39083 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_shader.c
|
7e591111bf783d94ee6034287cde2f4c9214e810 |
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of some superfluous braces. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_state.c
|
2b5b289a570c699403f115cf3ad094ce92eba2fb |
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Store the chip class directly in r600_bc. Instead of deriving it from the family again. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_asm.c
600_asm.h
600_shader.c
|
89dc31a28d8e5607989ec11cfd29310c1c97f6ac |
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Replace the CHIPREV_* defines with the chip_class enum. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_asm.c
600_asm.c
600_asm.h
600_opcodes.h
600_shader.c
|
4f7dfd8ad3185f006e7ae8ed86bafd4d66ebc903 |
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of the superfluous family field from r600_shader. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
600_shader.h
|
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>
vergreen_state.c
600_asm.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
|
949896b82f19f72333e7f6c132bd55e023f0170f |
09-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix the type of the family field in r600_pipe_context. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.h
|
3efb47f0b0557a6b96a7e41b27725cea4736a061 |
08-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: introduce r600_bc_src_toggle_neg helper and fix SUB & LRP SUB & LRP instructions should toggle NEG bit instead of setting it, otherwise e.g. "SUB a,b,-1" is translated as "ADD a,b,-1" Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
f87d566f4b0e4df18ab60d64951013629bdd624c |
08-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: introduce r600_bc_src_set_abs helper and fix LOG LOG instruction should use absolute values of source operand. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
b693787fdf82d065c548e80944aad14e9ba64def |
06-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: RSQ: clear NEG for operand Need to clear NEG bit because it applies after ABS, e.g. "RSQ ..., -1" uses -|1| as operand. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
86f8b4117f35c788c8a043c2e241eb19eaacae8c |
06-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: LIT: swap MUL_LIT operands to fix 0^0 For 0^0 case result of "LOG_CLAMPED ...,0" is -MAX_FLOAT, and then result of "MUL_LIT ...,0,-MAX_FLOAT,..." is -MAX_FLOAT instead of 0 because of special src1 checks for -MAX_FLOAT. So swap src0/1: "MUL_LIT ...,-MAX_FLOAT,0,..." to get expected 0, then result of "EXP_IEEE ...,0" is 1 as expected for LIT. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
ea78480029450c019287c2a94d7c42a6a1d12dc3 |
08-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] and finally remove pipe_video_context
600_pipe.c
|
4e837f557bf5f5afb286e1f2244ed69c0092c2d6 |
08-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] move video buffer creation out of video context
600_pipe.c
|
3bb33c911b895819fde5e179b2466c08f88164cf |
08-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] remove the unused priv member from pipe_video_context
600_pipe.c
|
2ec350ff1d9f13ec95d7b9d46f57ad9b9efcc8ea |
08-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] make pipe_context mandatory for creation pipe_video_context
akefile
600_pipe.c
600_video_context.c
600_video_context.h
|
7eca76952b6726be9459375dde7478a01789577e |
08-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] rename is_format_supported to is_video_format_supported and move it into screen object
600_pipe.c
|
f265a194263bb2a3fa204947a9c98f472835f121 |
07-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] rename get_param to get_video_param and move into screen object
600_pipe.c
600_video_context.c
|
fbe9d4261f94b8a22ae04dccb8201a6762b66d40 |
04-Jul-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: reduce flushes for queries
600.h
600_blit.c
600_query.c
|
3fccc14b2fb35aef95bc04dee46e280a48679299 |
05-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of the state_inlines headers. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_state_inlines.h
vergreen_state.c
600_state.c
600_state_inlines.h
|
88cf65a600c34ff361bcb4a5d928be94dbc1d91e |
05-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of an unused include in r600_texture.c. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_texture.c
|
4015b5877c9b92433235eb65da3a9b0aa37e5b98 |
05-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of some unused functions. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_state_inlines.h
600_state_inlines.h
|
18cdb9c8abfb5d9f009fcb36ab788f48792207e4 |
05-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Use the actual Evergreen functions to query format support on Evergreen. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_formats.h
600_pipe.c
600_pipe.h
600_state.c
600_state_inlines.h
|
865f9272189697932d96a318f60efb99344ab944 |
05-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of the unused "family" parameter to r600_is_vertex_format_supported(). Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.c
600_state_inlines.h
|
c3b2230b71cb3a00a7f4c0987197d397bada650b |
04-Jul-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video Conflicts: configure.ac src/gallium/drivers/r600/r600_state_inlines.h src/gallium/tests/trivial/Makefile src/gallium/winsys/g3dvl/dri/XF86dri.c src/gallium/winsys/g3dvl/dri/driclient.c src/gallium/winsys/g3dvl/dri/driclient.h src/gallium/winsys/g3dvl/dri/xf86dri.h src/gallium/winsys/g3dvl/dri/xf86dristr.h src/gallium/winsys/r600/drm/r600_bo.c
|
39fecd3229b33786bb31fd97fd8f0486a68cc653 |
03-Jul-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Support the PIPE_FORMAT_R16_FLOAT colorformat. NOTE: This is a candidate for the 7.11 branch.
g_state_inlines.h
600_state_inlines.h
|
61c976c3ccc815aaf0128eea835aee9667cd8bbe |
29-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix check for empty cs
600.h
600_pipe.c
|
235225ec935002b4669d14a48c9c20864a5496f8 |
30-Jun-2011 |
José Fonseca <jfonseca@vmware.com> |
scons: Expose pkg-config in a simpler manner.
Conscript
|
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>
600_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>
vergreen_state.c
600_asm.c
600_pipe.h
600_shader.c
600_shader.h
600_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>
vergreen_state.c
600_pipe.c
600_pipe.h
600_shader.c
600_shader.h
600_state.c
600_state_common.c
|
d81126b714cd4de0ab036bb22bf4103f5fcec015 |
24-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: optimize spi update Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_pipe.h
600_state_common.c
|
8567e02dca6a944c703185f268a7a624fdd65482 |
24-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: LIT: fix x&y slots order Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
600_shader.c
|
fa5478c5fe88e9c07d30203984b712925de84d2e |
23-Jun-2011 |
Benjamin Franzke <benjaminfranzke@googlemail.com> |
r600g: Add R8G8B8A8_UNORM to evergreen colorswap table Fixes broken glTexImage2D with format=GL_RGBA since 1a339b6c71ebab6e1a64f05b2e133022d3bbcd15 The origin for this behaviour is that r600_is_format_supported checks only against r600_state_inline.h tables not evergreens.
g_state_inlines.h
|
1e5cef96d184b00eb588b48ecd02386998077d82 |
23-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: bump shader input limits
600_pipe.c
|
eb2c9b5814f7c6a5b37bc9063b1593095ea4f620 |
22-Jun-2011 |
Michel Dänzer <daenzer@vmware.com> |
r600g: Fix use of uninitialized local variable extra_size. Should fix http://bugs.freedesktop.org/show_bug.cgi?id=38566 .
600_texture.c
|
21972c85ea734dbfcf69629c6b0b940efb42d4ba |
21-Jun-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix fbo depth/stencil texture allocation for evergreen+ evergreen+ stores depth and stencil separately so when we allocate a depth/stencil fbo, make sure we allocate enough memory for both depth and stencil buffers. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_texture.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>
600_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>
600_state_common.c
|
abe74a9820bc5b512ab24518622368db20187637 |
20-Jun-2011 |
Pierre-Eric Pelloux-Prayer <pelloux@gmail.com> |
r600g: reorder LIT instructions to support src == dst the attached patch should be an improvement over Vadim Girlin's patch fixing LIT instruction for r600g (commit 2fe39b46e73aea37152777fe11d489e0b1bc3f92). Instructions used in tgsi_lit have been reordered to always write to a dst channel after the same channel in src has been read (so if src == dst, input values are not overwritten before being used). Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
badf0335ef70223204fbae3e8fdef718cdb3ad19 |
19-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement seamless_cube_map on r600-r700 st/mesa guarantees that all bound sampler states have the same value in seamless_cube_map.
600_pipe.c
600_pipe.h
600_state.c
|
9bcce02f47f721bfb8917fd5639756fb3456aab5 |
19-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove some magic numbers
600_state.c
600d.h
|
d1f66a9424d087f81d0040aafde033bd5cb1ca72 |
19-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: make u_vbuf_mgr_draw_begin return flags in a bitmask
600_state_common.c
|
8623c68aec95e0883308051068b3496a85e8b9ea |
19-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix warning: assignment discards qualifiers from pointer target type
600_blit.c
|
2fe39b46e73aea37152777fe11d489e0b1bc3f92 |
17-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix LIT to handle src==dst properly Current LIT implementation uses dst components for storing temp results, possibly overwriting still needed values (depends on the swizzles). This patch uses temp reg for one of such cases (found in etqw) and fixes "LIT R.z, R.xyzz". Tested on evergreen. Fixes some etqw-demo rendering glitches when "Lighting" is set to "High" in the settings. Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
8ab1c5328b12e8b075f62599a84672024aaf2982 |
17-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix RSQ to use abs value of operand on evergreen fixes https://bugs.freedesktop.org/show_bug.cgi?id=36917 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
a916d4279a2c8daac832f77b84aff66f33b590a3 |
17-Jun-2011 |
Vadim Girlin <vadimgirlin@gmail.com> |
r600g: fix source box in r600_resource_copy_region Source box needs to be adjusted for blitting from compressed formats. fixes https://bugs.freedesktop.org/show_bug.cgi?id=35434 Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.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>
600_state_common.c
|
6f243ec25d88589747c7a595903e201b90a4d767 |
15-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable render condition for some blitter operations
600_blit.c
600_pipe.h
600_query.c
|
40aec11b7569fcdd2d884629b172af3db3fbaf1d |
15-Jun-2011 |
Mike Kaplinskiy <mike.kaplinskiy@gmail.com> |
r600g: fix TXD src regs needing fetching. [airlied: final chunk of Mike's patch from bug 37476 this uses a loop to emit the GRADIENTS and does a check to see if we need to fetch to a temporary register. It also increases the context src gpr to 4 which is needed here.] Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
6415f256637306fcbaa94fbdaf1bd7692070dce1 |
15-Jun-2011 |
Mike Kaplinskiy <mike.kaplinskiy@gmail.com> |
r600g: use inlines for some common tex instr setup code. [airlied: taken from Mike's patch in bug 37476] Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
de91ea1c06d3208edfb132fa8bea76bbd883f05c |
15-Jun-2011 |
Mike Kaplinskiy <mike.kaplinskiy@gmai.com> |
r600g: fix TXD when shadowing is enabled. Mike had actually done a lot of the TXD support in a patch in bug 37476 which I see now, I'll add the bits of his work that I didn't think to add to my work. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
600d.h
|
13c9a8552bc83b1ad91442caacf847cb6cead2b5 |
15-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add TXD support. This at least passes the piglit arb_shader_texture_lod-texgrad test, the AMD shader analyzer seems to multiply the V component by an unspecified constant value no idea why. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_pipe.c
600_shader.c
600d.h
|
d9ca94836ee99c87841e24bfa23a6fab9464d04d |
15-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: also set TILE_MODE of the base level
600_state.c
|
677a4406d20e0a2b6d92c34e9ff6716f31ba1382 |
15-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: force OpenGL's BASE_LEVEL behavior on r600-r700 This sets the base level as the zero level, which fixes piglit/texturing/tex-miplevel-selection*. The r600 hardware ignores the BASE_LEVEL field in some cases, so we can't use it. Evergreen might need this too.
600_state.c
|
7d488ade239652d67f78a79bbd9712e4690591cb |
14-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix RGB32F texturing
600_texture.c
|
df6355512a7f12ca191d05556279991439b77669 |
14-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix indentation and comments
g_state_inlines.h
600_state_inlines.h
|
13dcf3f20da063c2cf740873d0c596f05073a6bf |
14-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable shader_texture_lod until there is driver support
600_pipe.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>
600_shader.c
600_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>
vergreen_state.c
600.h
600_blit.c
600_pipe.h
600_state.c
600_state_common.c
|
2f0b44f981d1715b62b189f465546d865b10d0f3 |
04-Jun-2011 |
Mathias Fröhlich <Mathias.Froehlich@web.de> |
r600g: Put shaders into immutable buffers. Put the shader programs into an immutable buffer object. Also make sure that those object can be taken from the user space buffer object pool.
600_asm.c
600_shader.c
|
e2529442e6cc208a4f62ff7dc00d5e2ba7c92624 |
08-Jun-2011 |
Mathias Fröhlich <Mathias.Froehlich@web.de> |
r600g: Fix typo. Fix an obvious typo in the yet unused part of the shader setup.
600_state.c
|
92563476e451a7df131822a8bcdedc2c161ed75f |
10-Jun-2011 |
Pierre-Eric Pelloux-Prayer <pelloux@gmail.com> |
r600g: remove useless call to u_upload_flush No regressions found with : - piglit (quick.tests) - Unigine Heaven - Lightsmark - openarena - Imprudence (Second Life fork) agd5f Note: this patch was previously reverted due to piglit regressions, but I'm not able to reproduce them here. See this bug: https://bugs.freedesktop.org/show_bug.cgi?id=34008 and discussion: http://lists.freedesktop.org/archives/dri-devel/2011-June/011996.html Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_pipe.c
|
b19d86701eb6b04a0b7bcf43af06c4ce4fc30299 |
10-Jun-2011 |
Pierre-Eric Pelloux-Prayer <pelloux@gmail.com> |
r600g: fixed bo memory leak issue pipe_resource_reference call was miossing, thus creating massive memory under certain conditions. Fix : https://bugs.freedesktop.org/show_bug.cgi?id=37168
600_translate.c
|
003401f95c9b59471c22368b7da16fe7a951e490 |
09-Jun-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video Conflicts: src/gallium/tests/unit/u_format_test.c src/gallium/winsys/r600/drm/r600_hw_context.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>
600_pipe.h
600_state.c
600_state_common.c
|
d56fe67c6255b1ace84c025c83439ab8cb3f91fe |
09-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused variable
600_state.c
|
fe3a3434412482ff1b0a113e1008fd7dd7b42359 |
08-Jun-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix mixup in GPR resource reg setup GLOBAL_GPR regs should be 0. Need to set the number of temp regs in SQ_GPR_RESOURCE_MGMT_1. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
|
5f2deba9f3f3f9230a9fdd2848e20c1e23e98b8f |
08-Jun-2011 |
Brian Paul <brianp@vmware.com> |
gallium: s/bool/boolean/
600_asm.c
600_pipe.h
|
19b9e523c5db746b2debed8306d9d3e4d2f709aa |
08-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: missed one line in eg dyn gpr fallback. need more sleep or something. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
|
190bfea2deb9a3440aa35469f8651c0e8af377c7 |
08-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: condition evergreen dyn gpr resource management So only with kernel version 2.7 can this work, thanks to Alex for pointing that out. Also add a workaround for a hw bug. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
vergreend.h
|
c1f9884bbf580ea4390cc71d1696c87eba9f8f2e |
08-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: enable dynamic GPR resource management on evergreen Evergreen can do this as well as cayman, so we should enable it. This fixes a gpu lockup with glsl-vs-vec4-indexing-temp-dst-in-nested-loop-combined.shader_test I need to add a better workaround for r600/r700. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
vergreend.h
|
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>
600_state_common.c
|
ba78a5a679b3f6b00d0f2070bb1ab6d56443ab16 |
07-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: split resource emit path from main register emit path Since resources don't generally vary in size, this splits the emit path, it also takes into a/c that texture and vertex resources have different number of relocs, and avoids emitting the extra reloc for vertex resources. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
4707ae20ad6cd99bbcaa33747fc7b043c85bb084 |
07-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: inline r600_bo_reference. This relies on the reference member being first, so document it. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
5d4c4798223c3463dbf67c47b9563f82c9057e7f |
07-Jun-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: remove pre-r6xx asic families and pci ids Not sure why these were included originally. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600.h
|
eaae63b7155f1fd00fe36a3db4cb8b94aa5ad7b2 |
07-Jun-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: add missing r300 families Wondering why r600g needs to include r300_pci_ids.h
600.h
|
63184bc8b278ba82f5462798b323774c67a019e6 |
03-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: use an enabled list to track enabled blocks. At the end of flushing we were scanning over 450 blocks with generally about 50 enabled. This reduces the scanning to just the list of enabled blocks. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
f356bb74de7ab9ad1085a0fc2f16c1dae4ff171e |
06-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g/winsys: overhaul resource range/blocks. There isn't much point taking the overhead of range/block lookups on resources we aren't going to be getting resource registers at wierd offsets. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
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>
vergreen_state.c
600.h
600_pipe.h
600_state.c
600_state_common.c
|
129a3c1cf0f9174d32db022b970ffb2127450ff9 |
05-Jun-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: some merge fixes
g_state_inlines.h
600_state_inlines.h
|
1eb957bb4108123bea95b818e0544e3b5f255e08 |
05-Jun-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video
|
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>
600_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>
600_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>
vergreen_state.c
600.h
600_state.c
600_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>
600_pipe.h
600_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>
vergreen_state.c
600.h
600_pipe.h
600_state.c
600_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>
600.h
600_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>
600.h
600_state_common.c
|
7f6672f6a737bc1c47e36c9567bd6d908855ce4d |
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: prepare for passing ctx into _r600_pipe_state_add_reg This moves the functions down the file, and also adds a ctx parameter. This is precursor patch just moving stuff around and getting it ready. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600.h
600_asm.c
600_pipe.h
600_state.c
|
991dbd71fdcc95e42bc56097d2fef3a7df0e8eaa |
02-Jun-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: migrate macros from r600_priv.h to r600.h this is just an precursor change for some later patches. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
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>
600_pipe.h
600_state_common.c
|
414cd5df50435f475d92b02c229453d037369c0f |
04-Apr-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add llano support Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
600.h
600_asm.c
600_pipe.c
|
5ed7a7b7205b5680d617b77a8cf228b80cf15f5e |
25-May-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: remove duplicate opcode in r600_opcodes.h V_SQ_CF_WORD1_SQ_CF_INST_HALT is 0x1f on both evergreen and cayman. Reported-by: Gustaw Smolarczyk <wielkiegie@gmail.com> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_opcodes.h
|
017cd5dcc36816e7aef5a7810b8a79d5c8ef777d |
25-May-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix eg/cayman scissor workaround Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
|
868c04205c3859a816593595aa513ee603f736ad |
25-May-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add workaround for buggy hw scissor on eg/cayman. This is ported from the same fix to the DDX. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
|
7779f6d1dffde2c0501e44adc342e52803de08d4 |
09-Mar-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial cayman acceleration support. Cayman is the RadeonHD 69xx series of GPUs. This adds support for 3D acceleration to the r600g driver. Major changes: Some context registers moved around - mainly MSAA and clipping/guardband related. GPR allocation is all dynamic no vertex cache - all unified in texture cache. 5-wide to 4-wide shader engines (no scalar or trans slot) - some changes to how instructions are placed into slots - removal of END_OF_PROGRAM bit in favour of END flow control clause - no vertex fetch clause - TC accepts vertex or texture Signed-off-by: Dave Airlie <airlied@redhat.com>
g_asm.c
vergreen_state.c
vergreend.h
600.h
600_asm.c
600_asm.h
600_opcodes.h
600_pipe.c
600_shader.c
|
d1b8f8e8b3b41ab6092fa3f18a4891a0198f64de |
25-May-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: don't lookup a vs semantic for position/face. These don't need one, and I was seeing 0xff being returned and set in the GPU registers with some tests. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
5705fb1dca061b097e568687101af396ec9e8d4c |
22-May-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: revert commit 36b322dffd2429130f132f55f68acb1a23ba1658 for now Disable scaled textures, since they didn't work 100% right now.
600_state_inlines.h
|
3c5e74186244f2d77cc711d2b487283459ed06ad |
21-May-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix "Fixed-Point Data Conversions" According to OpenGL 3.1 chapter 2.1.5 the representation without zero should only be used for vertex attribute values, but not for textures or frame-buffers.
vergreen_state.c
600_state.c
|
120b55a96e30f1f74ba3448665cef3d724fed647 |
21-May-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix "Fixed-Point Data Conversions" According to OpenGL 3.1 chapter 2.1.5 the representation without zero should only be used for vertex attribute values, but not for textures or frame-buffers.
vergreen_state.c
600_state.c
|
828540e491d88b9b6217e6568873a78462919ae8 |
15-May-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video
|
d015d2f3912463e694d1e3c1b8cb6891f553f1f1 |
12-May-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: reduce memory usage from range/block hash table. This table covered a large range unnecessarily, reduce the address range covered, use the fact that the bottom two bits aren't significant, and remove unused fields from the range struct. It also drops the hash_size/shift in context in favour of a define, which should make doing the math a bit less CPU intensive. valgrind glxinfo Before: ==320== in use at exit: 419,754 bytes in 706 blocks ==320== total heap usage: 3,691 allocs, 2,985 frees, 7,272,467 bytes allocated After: ==967== in use at exit: 419,754 bytes in 706 blocks ==967== total heap usage: 3,552 allocs, 2,846 frees, 3,550,131 bytes allocated Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
b9e8ea6a2717422ea71887beda093fe1dfbd1200 |
09-May-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: anisotropic filtering support for evergreen hw Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
vergreend.h
600_pipe.h
600_state.c
600d.h
|
ad904cdf98be576ba652fe1c16ab722d52365782 |
06-May-2011 |
Carl-Philip Haensch <carli@carli-laptop.(none)> |
r600g: add support for anisotropic filtering
600_state.c
600d.h
|
213b9004a6ee033a16af3dcd187aa68b56c39858 |
07-May-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote-tracking branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_state.c
|
d931b0d8b360fc0222d295eca38aaee3e4e5d0be |
02-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement seamless_cube_map for evergreen The r600/r700 support will follow soon.
vergreen_state.c
vergreend.h
600_pipe.c
|
31d27259b6d682f69866ace89ffaac5294e8bf62 |
06-May-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add back SOURCE_FORMAT setting that get accidently dropped Spotted by Henri Verbeet Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
|
5939bc03bc15b9b1131463ffad04a7b2d987074d |
06-May-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix up the rules for enabling SOURCE_FORMAT(EXPORT_NORM) Setting SOURCE_FORMAT to EXPORT_NORM is an optimization. Leaving SOURCE_FORMAT at 0 will work in all cases, but is less efficient. The conditions for the setting the EXPORT_NORM optimization are as follows: R600/RV6xx: BLEND_CLAMP is enabled BLEND_FLOAT32 is disabled 11-bit or smaller UNORM/SNORM/SRGB R7xx/evergreen: 11-bit or smaller UNORM/SNORM/SRGB 16-bit or smaller FLOAT Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
600_state.c
|
d116fe51c1aee3453290ac30ffe993bc131c53f7 |
05-May-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix cache flushes on r6xx r6xx asics have some problems with the surface sync logic for the CB and DB. It's recommended to use the event write interface for flushing the DB/CB caches rather than the sync packets. A single event write flush flushes all dst caches, so we only need one for all CBs and DB. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=35312 Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
93754d8499934a4c38e9a934d0a934c1484b707c |
03-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: reorder caps
600_pipe.c
|
320adb93a137a733da4b44f41e2d8ba01f164568 |
03-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: set correct PIPE_CAP_MAX_COMBINED_SAMPLERS
600_pipe.c
|
ca6896ba1452687ee35791c7e48afae3b2b657fd |
02-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: document some new evergreen formats
600_formats.h
|
929b3d82334e217641c3f39e7914a90dadc6e6b2 |
02-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove some more FIXME comments
vergreen_state.c
600_state.c
|
0d5ceb5891185600e73e10db9832207fdbaaab80 |
02-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove some FIXME comments All texture LOD tests pass.
vergreen_state.c
600_state.c
|
72c6a748b9ffdaa893f82faf911f22a241a5e4f5 |
02-May-2011 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: truncate point sampled texture coordinates" This reverts commit 1dc204d145dc8c0b19473a7814c201a8954b6274. MC_COORD_TRUNCATE is for MPEG and produces quite an interesting behavior on regular textures. Anyway that commit broke filtering in demos/cubemap.
vergreen_state.c
600_state.c
|
56e83b4aa245c2e22b3b4cf17b79651b9e03dffb |
01-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove set-but-unused variable
600_buffer.c
|
e9d2ef79de4d4a28365c5283dd025e182a0e7d6f |
01-May-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove FIXME comment DONTBLOCK is correctly handled in r600_bo_map.
600_buffer.c
|
f8279fb9d82cbbbbaf8a5cc26486142c21d4d2d2 |
29-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: print opcodes names instead of numbers
600_shader.c
|
8b558451ad7560a53263f1848b5c826069aa8f51 |
27-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement EXT_packed_float
g_state_inlines.h
600_state_inlines.h
600_texture.c
|
de9f55437ab7110dd79ebebaac543d35493380ce |
26-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: trivially implement EXT_texture_shared_exponent Nothing else needed.
600_texture.c
|
b2a98c3531c276b76024bb9b10fdd6c3360cb0c9 |
25-Apr-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Unify comment style somewhat. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_state_inlines.h
vergreen_state.c
600_asm.c
600_pipe.c
600_shader.c
600_state_inlines.h
600_texture.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>
g_state_inlines.h
vergreen_state.c
600_asm.c
600_buffer.c
600_formats.h
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
600_state_inlines.h
600d.h
|
32001c2244521a606ab210cd3a3fea3481131879 |
25-Apr-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Use EG constants in EG r600_colorformat_endian_swap(). This would actually fail to compile when PIPE_ARCH_BIG_ENDIAN is defined. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_state_inlines.h
|
077b1a6144a71418d0e127e45174c3907e646da0 |
25-Apr-2011 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove r600_helper.c from SConscript. This is a follow-up to commit d737857ed2ff4313fd6046dcd80018c6308a53c5.
Conscript
|
def6a91a62beb79956cb55805bff7d4c3e5461ec |
24-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: trivially implement LATC/3DC Passes fbo-generatemipmap-formats.
600_texture.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>
akefile
600_helper.c
600_pipe.h
600_state_common.c
|
de48199693484fc903627ce53b007901af2e37a8 |
24-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: enable EXT_draw_buffers2 Doesn't cause any piglit regression and passes the fbo-draw-buffers-blend test. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.c
|
4e6528428d4efa6fb2e5101bce2544d8304da3de |
24-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: implement clamp_fragment_color handling The first small step to get arb_color_buffer_float working.
600_state.c
|
68cc6bc5d8b6986acc7f5780d705f4ae9be2a446 |
24-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: remove the unneeded bo from COLOR[0-9]_INFO The COLOR[0-7]_INFO registers doesn't neeed a bo.
600_state.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>
600_pipe.h
600_state_common.c
|
6372660d122f4056dffb56d1b93dbd1bbc661f67 |
24-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix glsl-fs-abs-neg the hw does neg after abs, so don't neg the source in the ABS instruction case. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
77dc4c154cc6a8c3bc2369112c46f0be6ac444ae |
24-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix bank swizzle calcs for scalar only operations. In the initial code if we had nothing in the vector slots r would never get reset to 0, so we'd fail to compile shaders, after the previous commit this would happen for the LIT tests. When I fixed that we did a lot of unnecessary loops through all the vector states when we had no vector slots filled. So this patch optimises thing for the scalar only state. This fixes the 3 LIT piglit tests on r600g. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
22d5a71e4dedfc047e1a14082b7d0d287cfe910e |
24-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: PV/PS have cycle restrictions in scalar operations In the R600 ISA document: Section 4.7.5 Cycle restrictions for the ALU.trans states that PV/PS have cycle restrictions wrt constants. This is part of a fix for the LIT tests Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
fa31b1095eeea97695125ad5770239805bed37da |
23-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: configs/linux-dri src/gallium/drivers/r600/r600_pipe.c src/gallium/drivers/r600/r600_state.c src/gallium/include/pipe/p_format.h src/gallium/tests/graw/fragment-shader/frag-abs.sh src/gallium/tests/graw/fragment-shader/frag-add.sh src/gallium/tests/graw/fragment-shader/frag-cb-1d.sh src/gallium/tests/graw/fragment-shader/frag-cb-2d.sh src/gallium/tests/graw/fragment-shader/frag-dp3.sh src/gallium/tests/graw/fragment-shader/frag-dp4.sh src/gallium/tests/graw/fragment-shader/frag-dst.sh src/gallium/tests/graw/fragment-shader/frag-ex2.sh src/gallium/tests/graw/fragment-shader/frag-face.sh src/gallium/tests/graw/fragment-shader/frag-flr.sh src/gallium/tests/graw/fragment-shader/frag-frc.sh src/gallium/tests/graw/fragment-shader/frag-kil.sh src/gallium/tests/graw/fragment-shader/frag-lg2.sh src/gallium/tests/graw/fragment-shader/frag-lit.sh src/gallium/tests/graw/fragment-shader/frag-lrp.sh src/gallium/tests/graw/fragment-shader/frag-mad-immx.sh src/gallium/tests/graw/fragment-shader/frag-mad.sh src/gallium/tests/graw/fragment-shader/frag-max.sh src/gallium/tests/graw/fragment-shader/frag-min.sh src/gallium/tests/graw/fragment-shader/frag-mov.sh src/gallium/tests/graw/fragment-shader/frag-mul.sh src/gallium/tests/graw/fragment-shader/frag-rcp.sh src/gallium/tests/graw/fragment-shader/frag-rsq.sh src/gallium/tests/graw/fragment-shader/frag-sge.sh src/gallium/tests/graw/fragment-shader/frag-slt.sh src/gallium/tests/graw/fragment-shader/frag-srcmod-abs.sh src/gallium/tests/graw/fragment-shader/frag-srcmod-absneg.sh src/gallium/tests/graw/fragment-shader/frag-srcmod-neg.sh src/gallium/tests/graw/fragment-shader/frag-srcmod-swz.sh src/gallium/tests/graw/fragment-shader/frag-sub.sh src/gallium/tests/graw/fragment-shader/frag-tempx.sh src/gallium/tests/graw/fragment-shader/frag-xpd.sh src/gallium/tests/graw/vertex-shader/vert-abs.sh src/gallium/tests/graw/vertex-shader/vert-add.sh src/gallium/tests/graw/vertex-shader/vert-arl.sh src/gallium/tests/graw/vertex-shader/vert-arr.sh src/gallium/tests/graw/vertex-shader/vert-cb-1d.sh src/gallium/tests/graw/vertex-shader/vert-cb-2d.sh src/gallium/tests/graw/vertex-shader/vert-dp3.sh src/gallium/tests/graw/vertex-shader/vert-dp4.sh src/gallium/tests/graw/vertex-shader/vert-dst.sh src/gallium/tests/graw/vertex-shader/vert-ex2.sh src/gallium/tests/graw/vertex-shader/vert-flr.sh src/gallium/tests/graw/vertex-shader/vert-frc.sh src/gallium/tests/graw/vertex-shader/vert-lg2.sh src/gallium/tests/graw/vertex-shader/vert-lit.sh src/gallium/tests/graw/vertex-shader/vert-lrp.sh src/gallium/tests/graw/vertex-shader/vert-mad.sh src/gallium/tests/graw/vertex-shader/vert-max.sh src/gallium/tests/graw/vertex-shader/vert-min.sh src/gallium/tests/graw/vertex-shader/vert-mov.sh src/gallium/tests/graw/vertex-shader/vert-mul.sh src/gallium/tests/graw/vertex-shader/vert-rcp.sh src/gallium/tests/graw/vertex-shader/vert-rsq.sh src/gallium/tests/graw/vertex-shader/vert-sge.sh src/gallium/tests/graw/vertex-shader/vert-slt.sh src/gallium/tests/graw/vertex-shader/vert-srcmod-abs.sh src/gallium/tests/graw/vertex-shader/vert-srcmod-absneg.sh src/gallium/tests/graw/vertex-shader/vert-srcmod-neg.sh src/gallium/tests/graw/vertex-shader/vert-srcmod-swz.sh src/gallium/tests/graw/vertex-shader/vert-sub.sh src/gallium/tests/graw/vertex-shader/vert-xpd.sh src/gallium/tools/trace/dump.py src/gallium/tools/trace/format.py src/gallium/tools/trace/model.py src/gallium/tools/trace/parse.py
|
883d8a0b449b53d83cc5970d2ce50df536aef55f |
21-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add fallback for copying buffers to all drivers Just to keep drivers working. Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
600_blit.c
|
6067a2a67f9a7aab2aee051469bea8af03747a95 |
20-Apr-2011 |
Fredrik Höglund <fredrik@kde.org> |
r600g: don't flush the dest caches on every draw Keep track of when the caches are dirty, and only flush them when the framebuffer state is set and when the context is flushed. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
vergreend.h
600.h
600_pipe.h
600_state.c
|
08d1c91e6c185a186e49189b7ed48629f35a4659 |
19-Apr-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add evergreen+ big endian support Based on Cédric's r6xx/r7xx patch. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
g_state_inlines.h
vergreen_state.c
vergreend.h
600_buffer.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>
600_asm.c
600_asm.h
600_buffer.c
600_shader.c
600_state.c
600_state_common.c
600_state_inlines.h
600d.h
|
66866d642fe8f8fba141d50a81b08793c3bd63e8 |
19-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add cb support for snorm formats. Check for signed type and enable SNORM. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.c
|
c98fa6be4bacea22e0310e7f0e447d4eaa2a78e9 |
19-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix warnings with piglit texture-rg test. Fill in the swaps for the formats to fix warnings. Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
600_state_inlines.h
|
162bc40eed9dc54091b6e64bcd7eab06607b500d |
18-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: modify block to only emit the first few dirty registers. (v2) This gets me from 2200 to 1978 dwords for a gears frame. This is due to us having some 32-dwords blocks in the SPI, that we only modify the first dwords off. v2: fix dirty reg count from Bas Nieuwenhuizen Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
c058067e578e4426f56f9b23e33e3d3fac4562f7 |
17-Apr-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: track dirty registers better. (v2) This is a first step to decreasing the CPU usage, by decreasing how much stuff we pass to the GPU and hence to the kernel CS checker. This adds a check to see if the values we need to write are actually dirty, and avoids writing if they are. However certain register need to always be written so we add a new flag to say which ones should be always written if used. (Note this could probably be done cleaner with a larger refactoring, since I think the CONST_BUFFER_SIZE_PS/VS and CONST_CACHE_PS/VS might be better off as a special state). It also moves the need_bo to be a flags on the register now. With this, a frame of gears goes from emitting 3k dwords to emitting 2k dwords, and I'm sure it could get a lot smaller. v2: fix some evergreen dirty bits. Original patch from: Bas Nieuwenhuizen, I NIHed nearly the same thing before seeing his patch on the list, oops. Reviewed-by: Bas Nieuwenhuizen Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
fc8e30edbcc802aac61a3562a3be42bb18b5dcd5 |
17-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: disable ARB_draw_instanced The very presence of this extension breaks things. This should bring us closer to being able to run Unigine Heaven. The extension will be re-enabled once gl_InstanceID is implemented.
600_pipe.c
|
b5dfc38eea8a4b497574ca791452c11fa4163c8a |
16-Apr-2011 |
Marcin Slusarz <marcin.slusarz@gmail.com> |
gallium: include u_format.h for util_format_is_supported Without it gcc complains: nv50_screen.c: In function ‘nv50_screen_is_format_supported’: nv50_screen.c:48: warning: implicit declaration of function ‘util_format_is_supported’ and handles it wrongly - util_format_is_supported returns boolean, which is typedef'ed to uchar, but function without prototype is assumed to return int. For me nv50_screen_is_format_supported was returning true for float formats without --enable-texture-float...
600_pipe.c
|
75fa5c99a86c1ae0f8a4fecc016a5f82da9ae80a |
11-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: add and use generic function for querying patented format support (v2) v2: Unsigned floats are allowed regardless of the configure switch.
600_pipe.c
|
5c477ab2de9fb2ad3b0e4ae53f5930f1288cb90e |
11-Apr-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle PIPE_CAP_FRAGMENT_COLOR_CLAMP_CONTROL in get_param
600_pipe.c
|
36b322dffd2429130f132f55f68acb1a23ba1658 |
11-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: support textures with scaled number formats
g_state_inlines.h
600_state_inlines.h
600_texture.c
|
09eff39a58885bb3b8507d02920b53b4e81a66ea |
07-Apr-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Unreference framebuffer state on context destruction. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.c
|
3e15fa86d7bb50ae1b97f8962d2f17bfe72d5263 |
07-Apr-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Use symbolic names for NUMBER_TYPE. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_state.c
|
3f8455d07b129062885f58237516ae0d1aa339ea |
06-Apr-2011 |
Julian Adams <joolsa@gmail.com> |
r600g: Fix non-independent blend state. This fixes piglit fbo/fbo-drawbuffers-blend-add. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_state.c
|
d9ad3aa3b9647f1ede2568600978af956ff32fff |
06-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] and finally split the decoder part out of the context This should give a good basis to implement vdpau ontop of it.
600_video_context.c
600_video_context.h
|
71ee815b5cb0612906f9400f9a06ce8b7cdd51b3 |
02-Apr-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] remove PIPE_CAP_DECODE_TARGET_PREFERRED_FORMAT It wasn't fully implemented anyway.
600_video_context.c
|
4a7f013f9db793dab8dbc9f71646dab49f12ed2f |
29-Mar-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: set PIPE_CAP_MIXED_COLORBUFFER_FORMATS in some drivers
600_pipe.c
|
d04ab396a54d29948363c3353efa5aaa888076a3 |
29-Mar-2011 |
Fredrik Höglund <fredrik@kde.org> |
r600g: implement texture barrier
vergreen_state.c
600.h
600_pipe.h
600_state.c
|
948e1eb8e9c166ad5b74abc630d0760768ce78c9 |
29-Mar-2011 |
Fredrik Höglund <fredrik@kde.org> |
r600g: implement the pipe_screen fence functions v2: Allocate the fences from a single shared buffer object. v3: Allocate the r600_fence structs in blocks of 16. Spin a few times before calling sched_yield in r600_fence_finish().
600.h
600_pipe.c
600_pipe.h
|
244a3bbf14ef4f739e7f3be298c8613a2667fce0 |
23-Mar-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Handle texture fetch instructions with relative addressing Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
|
da5b4764b28a1efd2e9dbf0741247288da36f546 |
23-Mar-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Handle texture fetch instructions with neg or abs on source register Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
|
78037d95da06b81799e75410154c8141b0a30ec0 |
23-Mar-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Handle texture fetch instructions with swizzle on source register Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
|
8d7c12de1e3bce6c14ed6b79b64c2bce48e560a5 |
03-Mar-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Check for relative addressing in destination register when trying to merge instruction groups Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_asm.c
|
dd6cd206a6395be651bc965580e17c0d63513c7b |
20-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] correctly implement non power of two buffers
600_video_context.c
|
74e1d64c6da055ad0142c227845087003acfaa51 |
19-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: revert some asm optimisations They didn't have the desired effect and are still quite buggy
g_asm.c
600_asm.c
600_asm.h
600_shader.c
|
2bf95c519e755146704f4942b1703d47d18bfeaa |
19-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_asm.c src/gallium/tests/unit/SConscript
|
a1fecd09c2c5fdba3da5c38fce567b5bd2e6053d |
17-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] move mpeg12 context out of softpipe
600_video_context.c
|
df3d11f6cab5dd5b4ff3cb0f10c8fe3e5954a16d |
15-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: FLT_TO_INT_FLOOR and FLT_TO_INT_RPI are vector-only instructions on Evergreen. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_asm.c
|
3e30148900f27e29d4ea0faa5b0513f8d944fab0 |
14-Mar-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: don't set per-MRT blend bits on R600 It doesn't support them. Also, we shouldn't be emitting CB_BLENDx_CONTROL on R600 as the regs don't exist there, but I'm not sure of the best way to deal with this in the current r600 winsys. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_state.c
|
d6fea4a9856598961dd0f69436df749e5aa8d077 |
14-Mar-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: Original R600 does not support per-MRT blends Only rv6xx+ support them. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_pipe.c
|
1a8dc1539b59ab61a6f81a4de32b69978dded7ff |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Properly update MULTIWRITE_ENABLE in r600_pipe_shader_ps(). This sort of worked because blend state setup cleared MULTIWRITE_ENABLE again, but that's not something we want to depend on. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_state.c
|
ab1a2e454eaeb798b7c4b782877f58266ebab3a1 |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix the DB_SHADER_CONTROL mask in create_ds_state(). Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
600_state.c
|
2342e89979a66bb8438e1a2d5f8b6fedbf3ec340 |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Properly update DB_SHADER_CONTROL in evergreen_pipe_shader_ps(). Disable Z_EXPORT / STENCIL_EXPORT / KILL_ENABLE again if a shader doesn't use those. This is similar to 0a6f09a76a416b8672e149c520aa5bef33174223. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
vergreen_state.c
|
a2ef38368b638caba26418a68c157d52b6bcf797 |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Move fetch shader register setup to r600_state.c / evergreen_state.c. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
g_asm.c
vergreen_state.c
600_asm.c
600_asm.h
600_pipe.h
600_state.c
|
f262ba26f045699f0aa871b6be966714e9dd6740 |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Move r600_pipe_shader_ps() to r600_state.c. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.h
600_shader.c
600_state.c
|
c0ca43e507dce11bd4a78bc08a8e92997cd385bf |
14-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Move r600_pipe_shader_vs() to r600_state.c. The idea behind this is that anything touching registers should be in r600_state.c or evergreen_state.c. This is also consistent with evergreen_pipe_shader_vs(). Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_pipe.h
600_shader.c
600_state.c
|
112ffdfd0734040a72b690a4ac4101f3211bb238 |
14-Mar-2011 |
Rafael Monica <monraaf@gmail.com> |
r600g: Evergreen add support for log opcode. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
|
0a6f09a76a416b8672e149c520aa5bef33174223 |
27-Feb-2011 |
Mathias Fröhlich <Mathias.Froehlich@web.de> |
r600g: Only update DB_SHADER_CONTROL once in r600_pipe_shader_ps(). Avoid setting the same gpu register several times in a r600_pipe_state. Compute the final value of the register and set that one time. This avoids some overhead in r600_context_pipe_state_set(). Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de> Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_shader.c
|
7339915a4bfb563c5986d139e83aa7664f346e89 |
12-Mar-2011 |
Carl-Philip Hänsch <s3734770@mail.zih.tu-dresden.de> |
r600g: Fix VS sampler view offsets for r600/r700. 077c448d184799e0d9ec962013ec784c6a5c1807 missed this. Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
600_state.c
|
656c314573c2b63ef92fc035dd811b9d6dc82c1c |
09-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix an unused variable warning.
600_texture.c
|
cbcb84fccf0e7a9450a10bc1daf3572ab9a4955c |
11-Mar-2011 |
Adam Jackson <ajax@redhat.com> |
r600g: revert unintentional commit
vergreen_state.c
|
b5872cdda08c8db8bd24bc0bd3e2cd9dd8878ef2 |
11-Mar-2011 |
Adam Jackson <ajax@redhat.com> |
r600: Build fix r600_dri.so.tmp: undefined reference to `_mesa_rgba_logicop_enabled'
vergreen_state.c
|
7e02303497237cde958c28608477d0c355a8038b |
08-Mar-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove flags from the flush function The drivers have been changed so that they behave as if all of the flags were set. This is already implicit in most hardware drivers and required for multiple contexts. Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag to decide whether flush_frontbuffer should be called. New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
600_pipe.c
600_query.c
600_texture.c
|
e968975cb57eb854769292f7c6ff773c64a386c3 |
08-Mar-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove the geom_flags param from is_format_supported
600_pipe.c
600_texture.c
|
25485f4b69447514ab8b595aced90c75606a99bd |
07-Mar-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: kill is_resource_referenced Only st/xorg used it and even incorrectly with regards to pipelined transfers.
600_buffer.c
600_resource.c
600_texture.c
|
bb4f2a0f3513a20fc3bd27ad4c278e370e5491a8 |
09-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: remove some now unneeded code from r600_bc_vtx_build
600_asm.c
|
2ed56d317046ed07f6a357905d89f0db54da80ad |
09-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: R700+ can do more than 8 tex and vtx clause in one CF inst Reviewed-by: Henri Verbeet <hverbeet@gmail.com>
600_asm.c
|
8dc1dfc9f0b1c98d3bcad63c4a70a0952b865a9e |
09-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: split R600 and R700 CF generation for VTX and TEX Reviewed-by: Henri Verbeet <hverbeet@gmail.com>
600_asm.c
600_asm.h
700_asm.c
|
37a548c9d1db6bbf8712277f678d850f34d0e445 |
08-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] start to cleanup the mess Move the vertex buffer out of the mc code
600_video_context.c
|
719f07e45a4cd43d1edce196512b54f36ada53b1 |
08-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: set start instance correctly
600_state_common.c
|
43af13b2cb6d865610b3cdf64f8dbf16a9bca215 |
08-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: set start instance correctly
600_state_common.c
|
0e4750a84dfad00c4fe1706aa42d2ede6e731295 |
07-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Simplify some swizzle lookups.
600_shader.c
|
eac50295fccb983281423e825e57ab4a2a5bbbfb |
07-Mar-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Constant buffers can contain up to 4096 constants.
600_pipe.c
600_pipe.h
|
e0cf8471a17ca47ed561b3a2ca8c604183213d6b |
06-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: use long long integers for instance addr calculation Using a long for instance addr calculation isn't big enough on 32bit systems, use a long long int instead. Thanks to Rafael Monica for fixing this.
600_asm.c
|
95c7881ac8240fa369e33db411bbd165d0f61948 |
05-Mar-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: split CAP_INSTANCE_DRAWING into INSTANCEID and INSTANCE_DIVISOR ARB_instanced_arrays is a subset of D3D9. ARB_draw_instanced is a subset of D3D10. The point of this change is to allow D3D9-level drivers to enable ARB_instanced_arrays without ARB_draw_instanced.
600_pipe.c
|
199034a3cc46e09e7a325690ac5b2b097e90249f |
05-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
17b9b757b704e0dcf370f7ae6e72c6e22601363d |
05-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: simplify instance addr calculation Use MULHI_UINT instead of the more complex INT_TO_FLT->MUL->TRUNC->FLT_TO_INT
600_asm.c
|
fd2409ca2736dcc9339fd2ed7c021976a170d787 |
05-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix fragment shader size calculation bc.ndw is altered in r600_bc_build, respect that in fragment shader size calculation.
600_asm.c
|
54f11a27a1ec28fcf9734f4454dee870bc0113f8 |
04-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
137d44e0f2ce7d99d34f301f7d943645cefb289c |
03-Mar-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: disable tiling by default again. we still have a lot of corner cases that aren't working. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
0eccb1038a620bc76ba45ac00c293b3e88427510 |
03-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
8d9ea4c4e7d0aa28ca86e0f620cde187b0c6c96b |
02-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: correct mega_fetch_count in fetch shader
600_asm.c
|
ed12c29bc45b100b758c9affe2cebe8c8498e25e |
02-Mar-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: merge fix
600_asm.c
|
c7d239c43b8fbc502139e1699c7a47fcbece1aa7 |
02-Mar-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: change the cross over point for 2d->1d this fixes some rendering in the fbo-generatemipmap-formats test on my rv610. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
a44b65312e2cbba641652f4c78b8db9f24ba39b6 |
28-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add NV_conditional_render support. This is reliant on a drm patch that I posted on the list + a version bump. These will appear in drm-next today. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreend.h
600.h
600_query.c
600d.h
|
929be6eb95c33d5885a89b36dbc82db64c1344fe |
01-Mar-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: start using drm minor version to enable things. If the drm minor version is > 9 (i.e. whats in drm-next), we enable s3tc + texture tiling by default now. this changes R600_FORCE_TILING to R600_TILING which can be set to false to disable tiling on working drm. Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
vergreen_state.c
600.h
600_pipe.c
600_pipe.h
600_state.c
600_state_inlines.h
600_texture.c
|
1dc204d145dc8c0b19473a7814c201a8954b6274 |
01-Mar-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: truncate point sampled texture coordinates By default the hardware rounds texcoords. However, for point sampled textures, the expected behavior is to truncate. When we have point sampled textures, set the truncate bit in the sampler. Should fix: https://bugs.freedesktop.org/show_bug.cgi?id=25871 Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
600_state.c
|
b97e41c7b18c363a303693fb841fe606b1106fe6 |
28-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
5f44fab5a6ba99c287da8d01fa584763bff2565b |
28-Feb-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add missing evergreen INT_TO_FLT to r600_bc_get_num_operands Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_asm.c
|
c33e091d17b90df61f7b3873a2f124c4f26adf06 |
28-Feb-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: indentation fixes Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_asm.c
600_buffer.c
600_pipe.c
600_shader.c
600_state_common.c
|
96bbc627f369c0100b950f81531b1fe9ef586c34 |
28-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: implement instanced drawing support
g_asm.c
600_asm.c
600_asm.h
600_pipe.c
600_shader.c
600_state_common.c
|
0a17444133e74de7bc5d04d8ffc8f29b89f0cf58 |
28-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
Revert "r600g: Don't negate result of ABS instruction" This reverts commit b6d40213935da702570eca2c0861bd4b1d7f5254. This actually breaks gears here on my rv670.
600_shader.c
|
0ab7dcddb35560626c1aab4e8e6181dc4b4703a6 |
27-Feb-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Process TRUNC with tgis_op2 TRUNC is neither a scalar instruction nor exclusive to the Trans unit. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
b6d40213935da702570eca2c0861bd4b1d7f5254 |
25-Feb-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Don't negate result of ABS instruction Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
b2413de91682e3908d8ab1635956a290f603681c |
25-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: explicity set sign bits for RGTC
600_texture.c
|
c9bca01819ef0fa3c64a28e26bd63953cf7f1364 |
24-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: bc 4/5 or rgtc textures need to be tiled as well. Make the s3tc upload code more generic. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
600_texture.c
|
77217af40d67612d1f1089ca188393d27a8a038f |
24-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: Merge fix
600_texture.c
|
b922a0ce12916a91cfc3e56714913fcf63279ff2 |
24-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: configure.ac src/gallium/auxiliary/Makefile src/gallium/auxiliary/SConscript src/gallium/drivers/r600/r600_asm.c src/gallium/drivers/r600/r600_asm.h src/gallium/drivers/r600/r600_shader.c src/gallium/drivers/r600/r600_state_inlines.h src/gallium/drivers/r600/r600_texture.c
|
69d969e8fafd3357a140072f0f4bbf0f28db9769 |
17-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: EXT_texture_array support. This adds EXT_texture_array support to r600g, it passes the piglit array-texture test but I suspect may not be complete. It currently requires a kernel patch to fix the CS checker to allow these, so you need to use R600_ARRAY_TEXTURE=true for now to enable them. Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
600_pipe.c
600_shader.c
600_state.c
600_state_inlines.h
600_texture.c
|
0ed5bf668db24fb56b5b359399099c89531e2a0a |
14-Feb-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Request DWORD aligned vertex buffers. The spec says that the offsets in the vertex-fetch instructions need to be byte-aligned and makes no specification with regard to the required alignment of the offset and stride in the vertex resource constant register. However, testing indicates that all three values need to be DWORD aligned.
600_pipe.c
|
dfa59284049e735cb55e1b39f32cfcfb71ebbff3 |
18-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: reorganise rgtc pieces. when the cs checker fixes go upstream a lot of this can disappear into a drm version check. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
8b5119aab30828edbc4310694c09fe02fdbb0552 |
16-Feb-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Start a new TEX clause if the texture lookup address was fetched in the current clause Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
51cc14471cffcec9c44eeee947be7533352ac62a |
15-Feb-2011 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: Add support to dump vertex- and texture-fetch clauses Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
|
2a6cce09e356a33337dbc193d8a580d0faab8915 |
18-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add BC4/5 to RGTC conversion this doesn't do anything much since the rest of mesa doesn't support RGTC yet.
600_texture.c
|
231bf886dae9c7df0ae3e16acee904024a08824f |
17-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: get s3tc working on cards with crappy 64/128 bit types. Some cards don't appear to work correctly with the UNORM type, so switch to the integer type, however since gallium has no integer types yet from what I can see we need to do a hack to workaround it for the blitter. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_blit.c
600_resource.h
600_state.c
|
5cc35124b31aa1dddffd24d92c8447cf7a9d9f98 |
17-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing type to color buffer swap.
600_state_inlines.h
|
f53436d821a5173075b2a4a8db8cd23d9669f6e2 |
16-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in previous s3tc commit pointed out by Marek on irc.
600_blit.c
|
04903d1f639d21e1476552adf4de7f4edc35b489 |
16-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add L8A8 SRGB formats. this fixes the piglit mipmap generation sRGB on my rv730. Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
600_state_inlines.h
600_texture.c
|
4016a1b4c634b09ca4b3007d18e5ead1dd57a1bb |
16-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add L4A4 support. this fixes piglit fbo-generatemipmap-formats on my rv730. Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
600_state_inlines.h
|
0863eaf91cbbfb39f9b91b0d1217090a18e10082 |
16-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix s3tc-texsubimage we need to translate the destination box as well. fixes piglit's s3tc-texsubimage test. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
632918d3ecd9756ad34098d28ed9eeda874d41a9 |
15-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add srgb compressed formats to the list.
600_texture.c
|
82a9794a35744d60adc38b5eee53153c73d07331 |
10-Feb-2011 |
Fabian Bieler <<der.fabe@gmx.net>> |
r600g: Fix RGB10_A2 format handling
g_state_inlines.h
600_state_inlines.h
|
4b81c5f6e1ad73e344b1f1b5d5844297ee7b985a |
15-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix regression in r6/7xx since mipmap rework I typod this when copy-pasting.
600_state.c
|
8e0437914bb786d0b05be8f95e4ff37bf5a19f44 |
11-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add support for s3tc formats. On r600, s3tc formats require a 1D tiled texture format, so we have to do uploads using a blit, via the 64-bit and 128-bit formats Based on the r600c code we use a 64 and 128-bit type to do the blits. Still requires R600_ENABLE_S3TC until the kernel fixes are in, this has only been tested on evergreen where the kernel doesn't yet get in the way.
600_blit.c
600_pipe.c
600_texture.c
|
a661dacf143d7187abc2360ac945db75296f7e23 |
15-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix miptree calculations the miptree setup and pitch storing didn't work so well for block based things like compressed textures. The CB takes blocks, where the texture sampler takes pixels, and transfers need bytes, So now we store blocks/bytes and translate to pixels in the sampler. This is necessary for s3tc to work properly.
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
ea7a548d07ddc69c226a425af0f88f818203d6ee |
14-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: drop tiled flag we can work this out from the array_mode and it makes more sense to do that. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
588fa884d212eba5ffbc69fda75db37d7c77214c |
09-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
gallium: notify drivers about possible changes in user buffer contents Also implement the redefine_user_buffer hook in the drivers.
vergreen_state.c
600_state.c
|
9e96ea0652dda64f8eb311d7dfc9c50519ad02f0 |
14-Feb-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add alignment cases for linear aligned Matches the drm and ddx. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_texture.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.
600_state_common.c
|
596684eb93067f5281ce7c32123a7f009c8a98c6 |
11-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: get correct height alignment useful for s3tc
600_texture.c
|
9d85aba0e392250ecea0377f9aa9691bd02622e0 |
11-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: drop two unused | 0 that are actually in word4 anyways. these were NOPs anyways. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_state.c
|
0d851f6e9c6046052ddce3860e625537832530a0 |
10-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: handle 16/32 u/s norm formats properly add support for the 32-bit types, also fixup the export setting to handle types with channels > 11 bits properly Signed-off-by: Dave Airlie <airlied@redhat.com>
g_state_inlines.h
vergreen_state.c
vergreend.h
600_state.c
600_state_inlines.h
600_texture.c
600d.h
|
69e5516308095efe12e557fd3d60d0caae514a36 |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: fixup assertion
600_buffer.c
|
71df812146ae316d9d371be3436e90da79435be9 |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: add a faster implementation of transfer_inline_write u_default_transfer_inline_write uses util_copy_rect, which is kinda slow.
600_buffer.c
|
f0b202ec73855bd9e1b29909c8ac90393043cb8b |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: slab-allocate buffer and transfer structures
600_buffer.c
600_pipe.c
600_pipe.h
|
467023e8080489abeff53e18ac83560eaf851827 |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use the same upload buffer for vertices, indices, and constants This should reduce memory consumption.
600_buffer.c
600_pipe.c
600_pipe.h
600_translate.c
|
1ee71bdc8a8471357cee6a1cf2fbaac6a70bb86c |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: add a way to specify the BIND flag for the upload buffer
600_pipe.c
|
f53cbf8bb0e542a114b76467fe715ceb977411ab |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
u_vbuf_mgr: make the uploader public
600_pipe.c
|
d8d5c2660f581821f017fdcb7954c6f7bd099114 |
08-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
Revert "r600g: do not flush the uploader" (with comments) This reverts commit 1c2a4f0820ff2272f993e6da28dcf8bcbbc3252a.
600_pipe.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.
vergreen_state.c
600_pipe.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
|
871460eb149b9868e5750f13b8206e271743c4a2 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Set the fetch type in r600_bc_vtx_build().
600_asm.c
|
4c30a80e384d523803d70ead3403cf3ca30b8868 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Handle the ADD_INT instruction in r600_bc_get_num_operands().
600_asm.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.
vergreen_state.c
600_pipe.h
600_state.c
600_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.
600_pipe.c
600_pipe.h
600_state_common.c
|
7687eabaa0470261e059a2d6502628fffd209345 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Split constants in r600_shader_from_tgsi().
600_shader.c
|
1fa95c7f9e7f1b63364b1f9c6289690418cf6313 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Do the tgsi_full_src_register to r600_shader_src conversion in r600_shader_from_tgsi().
600_shader.c
|
a77e813de32643ae2dfffd7ad12abed596172cab |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Split r600_bc_alu_src. The r600_bc_alu_src structure is used in two different ways, as a vector and for the individual channels of that same vector. This is somewhat fragile, and probably confusing.
600_asm.c
600_asm.h
600_shader.c
|
3b1c1f02537544a11772b94a8f2e8c3d4c886ca8 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Store literal values in the r600_bc_alu_src structure. This is much easier to work with, and allows use to get rid of some of the literal handling hacks.
600_asm.h
600_shader.c
600_shader.h
|
80235d92e6f0b2ac7b23d5d41b3f1ad0f12f91f2 |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: tgsi_dst() can't fail.
600_shader.c
|
d0f2ffad76f58a14d0e85f2b7961f2dbff0d8eeb |
07-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: tgsi_src() can't fail.
600_shader.c
|
a22bda9f80070393581c6ac512c03aa3144577ef |
07-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: correctly report supported vertex formats
g_state_inlines.h
600_pipe.c
600_state_inlines.h
|
aa8a2224a3df111a1613f0baefebc00883e1b70b |
07-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: use the new vertex buffer manager
600_asm.c
600_blit.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_state_common.c
600_texture.c
600_translate.c
|
1c2a4f0820ff2272f993e6da28dcf8bcbbc3252a |
06-Feb-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: do not flush the uploader
600_pipe.c
|
780c183b8fdf2d301e1eea7f0b83cd96fb6cbf84 |
06-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: use surface format not underlying texture format This uses the surface format to set the CB up not the underlying texture format, since these can and do differ. Fixes piglit fbo-srgb.
vergreen_state.c
600_state.c
|
3188a7deb3d8bcaee647de27831c0f62b17a6ea9 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: don't set tile_type on evergreen. Since we never bind the actual DB to the CB/texture only the flushed one we don't need to track the tile type at the moment.
vergreen_state.c
|
fdd35dc91220046ed66877e60479f155e3a23690 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix evergreen sampler view + depth interaction
vergreen_state.c
|
151a945d38d8c9231799b00364c5b85c8a4b2279 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: get offset for correct texture when setting up CB. this fixes the mipmap tests with tiling forced on. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state.c
|
812c314e5161d2b5f91c86ba45b79d4b34046bee |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: avoid trying to flush the flushing texture. Since these textures still have the depth bit set. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
8c643446f982892aeec4298977fbbe1ab92206fb |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen CB check for flushed texture
vergreen_state.c
|
2271c793e8650e0e55c054301ab85b5b92b9bf11 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: flushing texture needs all levels. For mipmap generation we need all levels in the flushing texture. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.c
|
cd6864c07976fad5f9008206d558dc6c8c599c11 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: remove unused variables
600_blit.c
|
3e9bc43fbafdd497d475eaffe0deec81b446d122 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: add a flag to just create flushed texture without flushing. This just adds a flag to create the texture without doing any flushing to it. Flushing occurs in the draw function. This avoids unnecessary flushes when we end up rebinding a CB/DB/texture due to the blitter just restoring state. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_blit.c
600_resource.h
600_state.c
600_texture.c
|
446bc12c1760fe5d402cdd519a7f0e42d89b9696 |
04-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: also check CB bindings for textures to depth flush. This checks the color buffer bindings to make sure there is something to flush. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
4b49fcbb9a26680e9a4ef441668e0dd817529d47 |
03-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: flush depth texture before a blit from it. If we are going to blit from a depth texture we need to flush it before we blit from it. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
|
a6a710cbe7425819e1cd5ad5f2085311c092f2e7 |
03-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Make some more things static.
600_asm.c
600_asm.h
600_buffer.c
600_pipe.h
600_shader.c
|
d06b99009699f8bc1d7a1d711bee8edc92dfb1a9 |
03-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of the unused r600_cf_vtx_tc() function.
600_asm.c
600_asm.h
|
126e98966d5396ed251a34e3c39f11b36351a579 |
03-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Make the buffer and texture vbtls static const.
600_buffer.c
600_texture.c
|
aa31a5cbc7b52eb1d03c6eab414479249830eabf |
03-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: flush differences back to DB copy.
600_blit.c
600_pipe.h
600_texture.c
|
417cfa60b2fec89423be6ce51ab8b1f3063abb2a |
01-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix depth hw resource copies. With the previous fixes we can now enabled hw depth copies Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
600_texture.c
|
5730d565498cb8b4608fb7ed526172bc4bd84cb9 |
03-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: only set depth bit for hw accessible depth buffers. If we get a sw accessible buffer like the S8 texture we end up doing depth tracking on it when there is no need since we won't ever bind it to the hardware. This leads to a sw fallback in the transfer destruction which leads to and endless recusion loop of fail in transfer destroy. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_texture.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>
600_blit.c
600_resource.h
600_state.c
600_state_common.c
600_texture.c
|
d0293290ad620084d490b51693d97731a8935094 |
03-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: set correct pitch/offset for depth textures in flushed state. This fixes zreaddraw in tiling mode
600_texture.c
|
8ca3b140eb53fd8063337a5a2a54a35987d597bc |
02-Feb-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: use burst exports in shaders Join multiple exports into just one instruction instead of exporting each register separately.
g_asm.c
600_asm.c
600_asm.h
600_shader.c
|
11bc8991e94e2fa6d461193a6aff47f8f94b7a47 |
01-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: just change tile type when buffer is set to depth. Not 100% sure on this one, but this is how it should work, the question is whether it will uncover other bugs elsewhere.
vergreen_state.c
600_state.c
|
8b5a50b31ca272ab8761e2a31025a54d8999ec06 |
01-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix evergreen for depth decompress test
vergreen_state.c
|
aee5f1e40ca27149a6226187e855125821d96971 |
01-Feb-2011 |
Dave Airlie <airlied@redhat.com> |
r600: only decompress depth when its tile type is wrong. If the tile type for the buffer is 1 then its been bound to the DB at some point, we need to decompress it, otherwise its only been bound as texture/cb so don't do anything. This fixes 5 piglit tests here on r600g.
600_blit.c
600_state.c
600_texture.c
|
42b5f6819881e4885ff73a17635eb7d2d341563d |
29-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: start looking at evergreen tiling. this just adds the ioctl interface and sets the tile type and array mode in the correct place. This seems to bring eg 1D tiling to the same level, and issues as on r600. No idea how to address 2D yet.
vergreen_state.c
vergreend.h
|
d171ae086bae37279251a1d6f32e16e333cfc154 |
01-Feb-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Actually use the info from the flushed depth texture when creating a sampler view on a depth texture. R600/R700 was using incorrect tiling information from the (compressed) depth buffer. Evergreen worked anyway because tiling doesn't work.
vergreen_state.c
600_state.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.
600_state_common.c
|
26a4c1cb650eee1380f87f3d7e8cff43c3d6a3e6 |
31-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix OQ on evergreen 6xx/7xx have a max of 4 DBs, evergreen have a max of 8. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600.h
|
df8089df90de3e720fec46d6118b15094e94ccd7 |
31-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix occlusion query results. Like on some r5xx, there are multiple DB backends on the r600, we need to add up the query results from each of these to get the final correct value. So far I'm not 100% sure how to calculate the num_db, value setting it to 4 should be harmless enough until we do. This fixes occulsion_query piglit test on my rv740. Signed-off-by: Dave Airlie <airlied@redhat.com>
600.h
|
2f7c876ff5af86c78c0f3debfbdc2a56c7b4d1fe |
31-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: remove some non-existent evergreen reg fields Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreend.h
|
065c8696e7b8290f9361ae88b8a7d99be9e2d0ef |
31-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fix regression in cubemap tests since eea1d8199b376f37027c14669e0bdf991a22872d Although CUBE is a reduction inst, it writes to more than just PV.X so we need to keep the dst channel. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_texture.c
|
5555cd776b970bce020be59193054474a2a63317 |
31-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: handle the write all cbufs property. This only works on r600/r700 so far, evergreen doesn't appear to have the multiwrite enable bit in the color control, so we may have to actually do a shader rewrite on EG hardware. remove some duplicate code reg defines also. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
vergreend.h
600_shader.c
600_shader.h
600d.h
|
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.
600_blit.c
600_pipe.h
600_resource.h
600_state_common.c
600_texture.c
|
cad0520179ef2a62b2756b01d37663f495a00619 |
30-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
r600g: Fix void pointer arithmetic. Fixes SCons build.
600_buffer.c
|
71f610e26ea7d71043b1a8ceeb8af7d11d75d6ab |
30-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: fixes a segfault in the piglit fbo-genmipmap-formats test. should be no need to unset this ptr here and if we don't end up using the blitter we've just broken the state.
600_blit.c
|
77900843b42d9672c6b10f49c177a172041f6a8d |
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: upload translated indices via the uploader
600_translate.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.
600_pipe.h
600_state_common.c
600_translate.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
600_asm.c
600_blit.c
600_pipe.h
600_state_common.c
600_translate.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.
600_buffer.c
600_pipe.h
600_state_common.c
|
15730a8207374936e354d945730070cb29c9547c |
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate set_constant_buffer functions
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
73fb2b7c9074c8878e8ff617ad6d6a21b93b66f2 |
29-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: consolidate vertex_buffer_update functions
vergreen_state.c
600_pipe.h
600_state.c
600_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.
vergreen_state.c
600_pipe.c
600_pipe.h
600_state.c
600_state_common.c
|
5cefe1eddd4854490aebdf4f138ffb07aa59073c |
28-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: make r600_drawl inherit pipe_draw_info
vergreen_state.c
600_buffer.c
600_pipe.c
600_pipe.h
600_state.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
akefile
Conscript
vergreen_state.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_state_common.c
600_upload.c
|
f013b4f8f1329982727691a55cc263e3011d02bf |
29-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: bugfixing register remapping
600_asm.c
|
6dc0a0e71f3a911437a88798145e18d176703482 |
28-Jan-2011 |
Marek Olšák <maraeo@gmail.com> |
r600g: handle PIPE_CAP_ARRAY_TEXTURES
600_pipe.c
|
90c2fd86407999475ff6accecf36e5a2c75feb9b |
23-Jan-2011 |
Mathias Fröhlich <Mathias.Froehlich@web.de> |
r600g: Implement timer queries.
600.h
600_pipe.c
|
1af59b28b57f460b2944f803251a297fd4f7a769 |
25-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: FLT_TO_INT* are vector instructions on Evergreen. FLT_TO_INT is a vector instruction, despite what the (current) documentation says. FLT_TO_INT_FLOOR and FLT_TO_INT_RPI aren't explicitly mentioned in the documentation, but those are vector instructions too.
600_asm.c
|
86e5b79a274ad4ed5c169aa5626106331273311c |
21-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_texture.c
|
a40305dcdb17588613c02868777b3f0e997fb6ff |
09-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: check if hardware blits are possible bevore enabling tilling
600_texture.c
|
4b3789427f5eaef8560b9cb4845a6b1c92228f02 |
21-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: FLT_TO_INT_FLOOR is trans instruction Add missing evergreen FLT_TO_INT_FLOOR instruction.
600_asm.c
|
78faf8d0e9c276a0ff1465e501d58fb3d66de2f7 |
20-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_asm.c
|
d2ff6b8715e817c1ef14d4bf12be58c19d894143 |
20-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_asm.c src/gallium/drivers/r600/r600_shader.c
|
a124490262a29d2e873fe50ca57974f246946b85 |
19-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix segfault if texture operand is a literal This fixes Bug 33262
600_shader.c
|
ba700d2ead3ae629ff29599455176fee72706698 |
18-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix reserve_cfile for R700+ According to R700 ISA we have only two channels for cfile constants. This patch makes piglit tests "glsl1-constant array with constant indexing" happy on RV710.
600_asm.c
|
9e964baaf34fedec385a750b97fd6684fc52584a |
18-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Kill trailing whitespace.
Conscript
600_asm.c
600_pipe.h
600_shader.c
600_texture.c
|
7e2e8d09f78e326662bd275cac25a7b596b38965 |
18-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Remove the unused eg_states_inc.h and r600_states_inc.h.
g_states_inc.h
600_states_inc.h
|
495dec0a2bcdff10f9a4024b892501c54e29ef00 |
18-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Simplify some r600_bc_add_alu_type() calls to r600_bc_add_alu().
600_shader.c
|
ef3b8042e00fa4ac371f61b0832d1d5e73cff52f |
16-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix PIPE_CAP_INSTANCED_DRAWING warning
600_pipe.c
|
b61afe13f1a272bfe8230ed5d8658f4b4f58ed71 |
16-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fix alu inst group merging for relative adressing
600_asm.c
|
ac6334145ec8eef42505cdd727aed7fae0831e12 |
16-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600d: fix some bugs added reworking literal handling If a literal slot isn't used it should be set to 0 instead of an uninitialized value. Also the channels for pre R700 trig functions were incorrect. And most important literals were not counted against ndw, resulting in an invalid force_add_cf detection.
600_asm.c
600_shader.c
|
5a2abf7a854cef3ae635f74dd0e580d603a92a21 |
15-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix some register value name typos. SFR -> SRF.
vergreen_state.c
vergreend.h
600_state.c
600d.h
|
f6f7808028a7551fa7398e8f20ed39043779b493 |
15-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of r600_translate_vertex_data_type(). This has been replaced with r600_vertex_data_type().
g_state_inlines.h
600_state_inlines.h
|
634dece281c6f7eb3bb210fdd386c2afe8f7e895 |
14-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: compiler helper opcode fixes for evergreen Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_asm.c
600_opcodes.h
|
9dfc68314de575ba7f0f936d5d0c9efe117fd535 |
14-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: pass r600_bc to some addition compiler helper functions needed for asic specific opcodes Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_asm.c
|
4c6d6dd8fc61239ac2008267f3c5cf76f4124d11 |
14-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
r600g: Disable V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_FLT_TO_INT_FLOOR case. The usage of macro V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_FLT_TO_INT_FLOOR was introduced by commit 323ef3a1f07ba4333dadebab571ddcd49d95f45c but the macro is undefined. Disable this case to fix the build for now.
600_asm.c
|
323ef3a1f07ba4333dadebab571ddcd49d95f45c |
14-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: add more missing instructions to r600_bc_get_num_operands
600_asm.c
|
a2ab929ab2d7dd4fcbbc5f32c8feabf42cad4d34 |
13-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
r600g: Move declaration before code in r600_asm.c. Fixes SCons build.
600_asm.c
|
96f8f8db7bcddec7ef0fce62cf0e23f1c2fb8c8d |
22-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rework literal handling
600_asm.c
600_asm.h
600_shader.c
600_shader.h
700_asm.c
|
d7342f6a81a0d13acb6486a24bffa8e5987d5410 |
20-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: merge alu groups
600_asm.c
600_asm.h
|
eea1d8199b376f37027c14669e0bdf991a22872d |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: implement replacing gpr with pv and ps
600_asm.c
600_asm.h
600_sq.h
|
0448f73f06b92dfd04e553147cac0e240dbabbdd |
13-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: add missing RECIPSQRT_CLAMPED to r600_bc_get_num_operands
600_asm.c
|
a25b91c2c2118741389f418a66de7ca145b8600b |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rework bank swizzle code
600_asm.c
600_asm.h
|
89275c0b36f1104ac05f13e930f7fb99595607a1 |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix alu slot assignment
600_asm.c
|
236e99fe05a8d301f81ca4330bf4ded80cf501a2 |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize away CF ALU instructions even if type doesn't match
600_asm.c
|
eb70e58caf773f9a89aa16109705b84f0aa2a6f7 |
13-Jan-2011 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warnings.
600_asm.c
|
6881262eff2154e4252359c104e8c90052537eb5 |
12-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: also look at tex inst when for maximum gpu count
600_asm.c
|
c60cb25bfb15fc83e78d9f2c74646dcc5ad07792 |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: implement output modifiers and use them to further optimize LRP
600_asm.c
600_asm.h
600_shader.c
700_asm.c
|
7728bef29097c8406d35c6dd969544382abdf935 |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: use special constants for 0, 1, -1, 1.0f, 0.5f etc
600_shader.c
|
dffad730df17983cfaef0808555a8c26cad0aa15 |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize temp register handling for LRP
600_shader.c
|
8813842121d46d1be476807c98b0ba0b771f0c91 |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize away CF_INST_POP If last instruction is an CF_INST_ALU we don't need to emit an additional CF_INST_POP for stack clean up after an IF ELSE ENDIF.
g_asm.c
600_asm.c
600_shader.c
|
052b9e8fab2e7deddf7f287d63c45aa938e5ec67 |
12-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: make dumping of shaders an option
600_shader.c
|
95a2b265facfb8c6e50895326c90f7fd75d5c1d6 |
17-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix alu dumping
600_asm.c
|
47e7c6f57149975939b8519c45b793a30364dd79 |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: improve r600_bc_dump
600_asm.c
|
a96fe679e2f57e8e4e26c38660d8b6e5b67d5b4b |
12-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_shader.c
|
93a95ad8ff1d543f886f123029d1329513729c4b |
12-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: texture instructions also work fine with TGSI_FILE_INPUT
600_shader.c
|
a1146c1373e66d429afbb92ecb08a6fd67c3e224 |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: DP4 also supports writemasking
600_shader.c
|
7be5455796facbe35cf1f1bdbefa83759b2e3b58 |
12-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: Why all this fiddling with tgsi_helper_copy? tgsi_helper_copy is used on several occasions to copy a temporary result into the real destination register to emulate writemasks for OP3 and reduction operations. According to R600 ISA that's unnecessary. This patch fixes this use for MAD, CMP and DP4.
600_shader.c
|
cc0f604241ee7b536f4c9867573024b8673b0998 |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix tex and vtx joining
600_asm.c
|
242205404d24f04f9abe1cfa01b9cf0f9e4f9d07 |
06-Jan-2011 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed SIN/COS/SCS for the case where the operand is a literal. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
600_shader.c
|
63b9790a55038c262b57c846a5f7067ea33fc60f |
11-Jan-2011 |
Jerome Glisse <jglisse@redhat.com> |
r600g: move user fence into base radeon structure This avoid any issue when context is free and we still try to access fence through radeon structure. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
|
3789a480edb271bc9e512c7e901dbfc96aafe955 |
09-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: check if hardware blits are possible bevore enabling tilling
600_texture.c
|
9bf8adc45e1b90b33e3900eef3a682a263b9e1bb |
09-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: some merge fixes
600_asm.c
|
72e30991559017c16d48569e612dbc0970e3b9ca |
08-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: configure.ac src/gallium/drivers/r600/eg_asm.c src/gallium/drivers/r600/r600_asm.c src/gallium/drivers/r600/r600_asm.h src/gallium/include/pipe/p_format.h src/gallium/targets/dri-nouveau/Makefile
|
ef4def1d9a2a48c7e32ea3e6bf0294470dfbf4c8 |
08-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: join export instructions
g_asm.c
600_asm.c
600_asm.h
|
10dbabc48129ca64b0cb27b3a05d040e725b481c |
07-Jan-2011 |
Christian König <deathsimple@vodafone.de> |
r600g: fully implement barrier handling
g_asm.c
600_asm.c
600_asm.h
600_shader.c
|
82acc3b14c2e85b4367bcbbb50f6a7e946050b19 |
07-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Also set const_offset if the buffer is not a user buffer in r600_upload_const_buffer().
600_buffer.c
|
f39dfa0ab08d1328110afb5ed0ed16a8b5e3fbda |
07-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Update some comments for Evergreen.
600_shader.c
|
97e2aa31c6e735d5f6bd1d67a4dd8da2605aedc8 |
07-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Split ALU clauses based on used constant cache lines.
600_asm.c
600_shader.c
|
2a134534a60f1aff463918c6b27dea5741cf247f |
07-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Consistently use the copy of the alu instruction in r600_bc_add_alu_type().
600_asm.c
|
8273921b7a41251f3f5a87df995913cb291902ca |
07-Jan-2011 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Store kcache settings as an array.
g_asm.c
600_asm.c
600_asm.h
|
6d9ca78ef7bf831b9b63f4bda68623cbae627508 |
07-Jan-2011 |
Dave Airlie <airlied@redhat.com> |
r600g: allow constant buffers to be user buffers. This provides an upload facility for the constant buffers since Marek's constants in user buffers changes. gears at least work on my evergreen now. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
|
f54366bcf61a414885abb9f7f47e897598a80859 |
07-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add support for NI (Northern Islands) GPUs This adds support for Barts, Turks, and Caicos asics.
vergreen_state.c
600.h
600_asm.c
600_pipe.c
|
f28bb6bdd1e98be11bbcaef545575a22db638d5a |
04-Jan-2011 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: support up to 64 shader constants From the r600 ISA: Each ALU clause can lock up to four sets of constants into the constant cache. Each set (one cache line) is 16 128-bit constants. These are split into two groups. Each group can be from a different constant buffer (out of 16 buffers). Each group of two constants consists of either [Line] and [Line+1] or [line + loop_ctr] and [line + loop_ctr +1]. For supporting more than 64 constants, we need to break the code into multiple ALU clauses based on what sets of constants are needed in that clause. Note: This is a candidate for the 7.10 branch. Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_asm.c
600_sq.h
|
3a49b567cf7a8e671e90831dd131c0408ffb6252 |
28-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rearange exports
g_asm.c
600_asm.c
600_asm.h
600_shader.c
|
c099fcd28a30a019d02f8a56dab185c5dd1a9d35 |
28-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize unneeded alu moves
600_asm.c
|
f23dce053282eb1f1ad50041cf87e2e542b63e34 |
27-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix gpr usage intersection and add conditiona code handling
600_asm.c
|
22de93b435f868daa9f80e88ad2d128bd4cc67c4 |
27-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: implement register remapping
600_asm.c
|
e179a8bf34022c200deee92d328cb1bae3c3aa4a |
22-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
1b03996b1269fb8b2f89e0a013d8427da660ff83 |
22-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: remove some unneded barriers
600_asm.c
600_shader.c
|
26127d6a2f2df8d8833825bbe96b28ed4fc028f0 |
22-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rework literal handling
600_asm.c
600_asm.h
600_shader.c
600_shader.h
700_asm.c
|
ca8b4ca4788545a3f85efd7904f1a07b95f00c86 |
22-Dec-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Remove the unused "pframebuffer" field from r600_pipe_context.
vergreen_state.c
600_pipe.h
600_state.c
|
f431e0452b33ca9028e07cd85783297df6e87e69 |
22-Dec-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop unused code in evergreen. this code was pretty much duplicated, thanks to Henri Verbeet on irc for pointing it out. Signed-off-by: Dave Airlie <airlied@redhat.com>
vergreen_state.c
600.h
|
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>
600_state_common.c
|
adf89a33296b60c746e813c3def030207cac9ec1 |
21-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix bug created by 120a558624b46578412c945eb4b6005be020445c
600_asm.c
|
fa62cf7450595b3d99259b5a212df301ca711d4b |
21-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: avoid segfault Candidates 7.10 Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state.c
|
ac5b174706da61c93cd083a4a913c2caa1d74298 |
20-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: merge alu groups
600_asm.c
600_asm.h
|
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>
vergreen_state.c
600_state.c
600_state_common.c
|
ec51092a72e2dff1e9b1362d813fe4691cda89b7 |
19-Dec-2010 |
Marek Olšák <maraeo@gmail.com> |
gallium: remove unused 'buf' parameter in pipe_buffer_unmap
600_translate.c
|
7b0cc9bd386f62f58c39e66ce29f1423cfccdfb7 |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: implement replacing gpr with pv and ps
600_asm.c
600_asm.h
600_sq.h
|
79f881156f0e1ebb3395a151affb336a05a2cf9c |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: rework bank swizzle code
600_asm.c
600_asm.h
|
f6c47f686d1888d70638f87af56aaa3fd5be8a4d |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix alu slot assignment
600_asm.c
|
120a558624b46578412c945eb4b6005be020445c |
18-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize away CF ALU instructions even if type doesn't match
600_asm.c
|
8cff56168dea3556d1cbe78b67d966669d2d65aa |
17-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix alu dumping
600_asm.c
|
01e3e7c7c3af694ceeb426b6f3e1950fabaa5703 |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: fix tex and vtx joining
600_asm.c
|
f2fe3735183a4fac193d54999afa911cc891c1f3 |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: improve r600_bc_dump
600_asm.c
|
08c8cd26b86b1d5514ff152ce853eae0541b02fd |
16-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: implement output modifiers and use them to further optimize LRP
600_asm.c
600_asm.h
600_shader.c
700_asm.c
|
8fc6c5fb3684ba3f4a8810b8db09540de1187782 |
24-Dec-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: r600_blit_uncompress_depth() can't fail.
600_blit.c
600_pipe.h
|
878519b73e5ff80df98591f70e6d53d05ed46f2f |
24-Dec-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Get rid of r600_blit_uncompress_depth_ptr.
600_pipe.c
600_resource.h
600_texture.c
|
876effb0e717e8e64050662f6ffa286c22065f5c |
24-Dec-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: hack around property unknown issues. should fix https://bugs.freedesktop.org/show_bug.cgi?id=32619 Need to add proper support for properties later. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
1039f36c47bf8c5db93b1d39c912c86fc3b1eb2f |
24-Dec-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Rearrange print order of outputs of R600_ERR.
600.h
|
66f55de31e15f97ad1d16c573756738218c02109 |
15-Dec-2010 |
Fredrik Höglund <fredrik@kde.org> |
r600g: fix pow(0, 0) evaluating to NaN We have to use the non-IEEE compliant version of MUL here, since log2(0) is -inf, and 0 * -inf is NaN in IEEE arithmetic. candidates for 7.10 branch
600_shader.c
|
3861a1001c5ad0dd0de3b0befabf3ed69da9dc5e |
15-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: need to reference upload buffer as the might still live accross flush Can't get away from referencing upload buffer as after flush a vertex buffer using the upload buffer might still be active. Likely need to simplify the pipe_refence a bit so we don't waste so much cpu time in it. candidates for 7.10 branch Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_buffer.c
600_upload.c
|
f75578b31e3cc660c654d13e4f5c4aa8bfe7c6a5 |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: use special constants for 0, 1, -1, 1.0f, 0.5f etc
600_shader.c
|
270f6d194c124294d7ca8256c6bf7b6010e8510c |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize temp register handling for LRP
600_shader.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>
vergreen_state.c
600_state.c
600_state_common.c
600_translate.c
|
9d967fc91e471206d01a54ec097f9e0903ac07ae |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: DP4 also supports writemasking
600_shader.c
|
d92e97d8848dd96fd8e5b93e62edbf7b5f509efc |
14-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: optimize away CF_INST_POP If last instruction is an CF_INST_ALU we don't need to emit an additional CF_INST_POP for stack clean up after an IF ELSE ENDIF.
600_asm.c
600_shader.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>
600_state_common.c
|
7bc9ab1181ff3dd8db67f6b020857820c49e0cbb |
12-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: texture instructions also work fine with TGSI_FILE_INPUT
600_shader.c
|
d5295552f532a1e03b06ff497529f6c4b5ff84c6 |
12-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: Why all this fiddling with tgsi_helper_copy? tgsi_helper_copy is used on several occasions to copy a temporary result into the real destination register to emulate writemasks for OP3 and reduction operations. According to R600 ISA that's unnecessary. This patch fixes this use for MAD, CMP and DP4.
600_shader.c
|
772b25e1f366edc857e77b8c1ccdc5297d82cc41 |
11-Dec-2010 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/drivers/r600/r600_pipe.c src/gallium/drivers/r600/r600_texture.c
|
af5f7b3260dfe3f0910e5fa6fac1786413eb0f13 |
09-Dec-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Fix SCons build.
Conscript
600_upload.c
|
121079bd679ea0729834cca79ab3c424e006feed |
09-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: indentation cleanup Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_pipe.h
600_resource.h
|
7055068eeae7f64166cca513282829d5a3e9b9d3 |
08-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: specialized upload manager Allow important performance increase by doing hw specific implementation of the upload manager helper. Drop the range flushing that is not hit with this code (and wasn't with previous neither). Performance improvement are mostly visible on slow CPU. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
vergreen_state.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_upload.c
|
69251fc4cd5f71be403e08398bc43d19052a640d |
07-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: remove dead code Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_asm.c
600_pipe.h
600_shader.c
600_shader.h
600_state.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>
vergreen_state.c
600_pipe.c
600_shader.c
600_shader.h
600_state.c
600_state_common.c
600_translate.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>
g_asm.c
vergreen_state.c
600_asm.c
600_asm.h
600_buffer.c
600_pipe.c
600_pipe.h
600_shader.c
600_state.c
600_state_common.c
600_translate.c
|
44094356149d9a63c197e15f9db344ef2f651d86 |
05-Dec-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Cleanup fetch shader resources in r600_pipe_shader_destroy().
600_shader.c
|
edda44e0dc72302afa04a767772d5d97ab9d9aa6 |
03-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: more indentation fix + warning silencing + dead code removal Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_texture.c
|
119f00659c03c48cfab0f2770dd6b6fb89af31e4 |
03-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: indentation fix Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_blit.c
600_buffer.c
600_pipe.c
600_pipe.h
600_shader.c
600_texture.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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
cd431a12bf1f0c47dac6bf10c2d9edb5726fe6fe |
03-Dec-2010 |
Fabian Bieler <der.fabe@gmx.net> |
r600g: set address of pop instructions to next instruction
600_shader.c
|
833f3a488a7ba0fa59e25f1e518f6b4616270143 |
03-Dec-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: dump raw shader output for debugging Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_asm.h
600_shader.c
|
fae7cb8ed83d43b28a7837acdb4912714a955217 |
02-Dec-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: bump texture/cb limits appropriately for evergreen
600_pipe.c
|
4c7001462607e6e99e474d6271dd481d3f8f201c |
02-Dec-2010 |
Roland Scheidegger <sroland@vmware.com> |
gallium: support for array textures and related changes resources have a array_size parameter now. get_tex_surface and tex_surface_destroy have been renamed to create_surface and surface_destroy and moved to context, similar to sampler views (and create_surface now uses a template just like create_sampler_view). Surfaces now really should only be used for rendering. In particular they shouldn't be used as some kind of 2d abstraction for sharing a texture. offset/layout fields don't make sense any longer and have been removed, width/height should go too. surfaces and sampler views now specify a layer range (for texture resources), layer is either array slice, depth slice or cube face. pipe_subresource is gone array slices (or cube faces) are now treated the same as depth slices in transfers etc. (that is, they use the z coord of the respective functions). Squashed commit of the following: commit a45bd509014743d21a532194d7b658a1aeb00cb7 Merge: 1aeca28 32e1e59 Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Dec 2 04:32:06 2010 +0100 Merge remote branch 'origin/master' into gallium-array-textures Conflicts: src/gallium/drivers/i915/i915_resource_texture.c src/gallium/drivers/i915/i915_state_emit.c src/gallium/drivers/i915/i915_surface.c commit 1aeca287a827f29206078fa1204715a477072c08 Merge: 912f042 6f7c8c3 Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Dec 2 00:37:11 2010 +0100 Merge remote branch 'origin/master' into gallium-array-textures Conflicts: src/gallium/state_trackers/vega/api_filters.c src/gallium/state_trackers/vega/api_images.c src/gallium/state_trackers/vega/mask.c src/gallium/state_trackers/vega/paint.c src/gallium/state_trackers/vega/renderer.c src/gallium/state_trackers/vega/st_inlines.h src/gallium/state_trackers/vega/vg_context.c src/gallium/state_trackers/vega/vg_manager.c commit 912f042e1d439de17b36be9a740358c876fcd144 Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Dec 1 03:01:55 2010 +0100 gallium: even more compile fixes after merge commit 6fc95a58866d2a291def333608ba9c10c3f07e82 Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Dec 1 00:22:26 2010 +0100 gallium: some fixes after merge commit a8d5ffaeb5397ffaa12fb422e4e7efdf0494c3e2 Merge: f7a202f 2da02e7 Author: Roland Scheidegger <sroland@vmware.com> Date: Tue Nov 30 23:41:26 2010 +0100 Merge remote branch 'origin/master' into gallium-array-textures Conflicts: src/gallium/drivers/i915/i915_state_emit.c src/gallium/state_trackers/vega/api_images.c src/gallium/state_trackers/vega/vg_context.c commit f7a202fde2aea2ec78ef58830f945a5e214e56ab Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Nov 24 19:19:32 2010 +0100 gallium: even more fixes/cleanups after merge commit 6895a7f969ed7f9fa8ceb788810df8dbcf04c4c9 Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Nov 24 03:07:36 2010 +0100 gallium: more compile fixes after merge commit af0501a5103b9756bc4d79167bd81051ad6e8670 Author: Roland Scheidegger <sroland@vmware.com> Date: Tue Nov 23 19:24:45 2010 +0100 gallium: lots of compile fixes after merge commit 0332003c2feb60f2a20e9a40368180c4ecd33e6b Merge: 26c6346 b6b91fa Author: Roland Scheidegger <sroland@vmware.com> Date: Tue Nov 23 17:02:26 2010 +0100 Merge remote branch 'origin/master' into gallium-array-textures Conflicts: src/gallium/auxiliary/gallivm/lp_bld_sample.c src/gallium/auxiliary/util/u_blit.c src/gallium/auxiliary/util/u_blitter.c src/gallium/auxiliary/util/u_inlines.h src/gallium/auxiliary/util/u_surface.c src/gallium/auxiliary/util/u_surfaces.c src/gallium/docs/source/context.rst src/gallium/drivers/llvmpipe/lp_rast.c src/gallium/drivers/nv50/nv50_state_validate.c src/gallium/drivers/nvfx/nv04_surface_2d.c src/gallium/drivers/nvfx/nv04_surface_2d.h src/gallium/drivers/nvfx/nvfx_buffer.c src/gallium/drivers/nvfx/nvfx_miptree.c src/gallium/drivers/nvfx/nvfx_resource.c src/gallium/drivers/nvfx/nvfx_resource.h src/gallium/drivers/nvfx/nvfx_state_fb.c src/gallium/drivers/nvfx/nvfx_surface.c src/gallium/drivers/nvfx/nvfx_transfer.c src/gallium/drivers/r300/r300_state_derived.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/r600/r600_blit.c src/gallium/drivers/r600/r600_buffer.c src/gallium/drivers/r600/r600_context.h src/gallium/drivers/r600/r600_screen.c src/gallium/drivers/r600/r600_screen.h src/gallium/drivers/r600/r600_state.c src/gallium/drivers/r600/r600_texture.c src/gallium/include/pipe/p_defines.h src/gallium/state_trackers/egl/common/egl_g3d_api.c src/gallium/state_trackers/glx/xlib/xm_st.c src/gallium/targets/libgl-gdi/gdi_softpipe_winsys.c src/gallium/targets/libgl-gdi/libgl_gdi.c src/gallium/tests/graw/tri.c src/mesa/state_tracker/st_cb_blit.c src/mesa/state_tracker/st_cb_readpixels.c commit 26c6346b385929fba94775f33838d0cceaaf1127 Author: Roland Scheidegger <sroland@vmware.com> Date: Mon Aug 2 19:37:21 2010 +0200 fix more merge breakage commit b30d87c6025eefe7f6979ffa8e369bbe755d5c1d Merge: 9461bf3 1f1928d Author: Roland Scheidegger <sroland@vmware.com> Date: Mon Aug 2 19:15:38 2010 +0200 Merge remote branch 'origin/master' into gallium-array-textures Conflicts: src/gallium/drivers/llvmpipe/lp_rast.c src/gallium/drivers/llvmpipe/lp_rast_priv.h src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_screen_buffer.c src/gallium/drivers/r300/r300_state_derived.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/r300/r300_texture.h src/gallium/drivers/r300/r300_transfer.c src/gallium/drivers/r600/r600_screen.c src/gallium/drivers/r600/r600_state.c src/gallium/drivers/r600/r600_texture.c src/gallium/drivers/r600/r600_texture.h src/gallium/state_trackers/dri/common/dri1_helper.c src/gallium/state_trackers/dri/sw/drisw.c src/gallium/state_trackers/xorg/xorg_exa.c commit 9461bf3cfb647d2301364ae29fc3084fff52862a Merge: 17492d7 0eaccb3 Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jul 15 20:13:45 2010 +0200 Merge commit 'origin/master' into gallium-array-textures Conflicts: src/gallium/auxiliary/util/u_blitter.c src/gallium/drivers/llvmpipe/lp_rast.c src/gallium/drivers/llvmpipe/lp_surface.c src/gallium/drivers/r300/r300_render.c src/gallium/drivers/r300/r300_state.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/r300/r300_transfer.c src/gallium/tests/trivial/quad-tex.c commit 17492d705e7b7f607b71db045c3bf344cb6842b3 Author: Roland Scheidegger <sroland@vmware.com> Date: Fri Jun 18 10:58:08 2010 +0100 gallium: rename element_offset/width fields in views to first/last_element This is much more consistent with the other fields used there (first/last level, first/last layer). Actually thinking about removing the ugly union/structs again and rename first/last_layer to something even more generic which could also be used for buffers (like first/last_member) without inducing headaches. commit 1b717a289299f942de834dcccafbab91361e20ab Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jun 17 14:46:09 2010 +0100 gallium: remove PIPE_SURFACE_LAYOUT_LINEAR definition This was only used by the layout field of pipe_surface, but this driver internal stuff is gone so there's no need for this driver independent layout definition neither. commit 10cb644b31b3ef47e6c7b55e514ad24bb891fac4 Merge: 5691db9 c85971d Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jun 17 12:20:41 2010 +0100 Merge commit 'origin/master' into gallium-array-textures Conflicts: src/gallium/docs/source/glossary.rst src/gallium/tests/graw/fs-test.c src/gallium/tests/graw/gs-test.c commit 5691db960ca3d525ce7d6c32d9c7a28f5e907f3b Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jun 17 11:29:03 2010 +0100 st/wgl: fix interface changes bugs commit 2303ec32143d363b46e59e4b7c91b0ebd34a16b2 Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Jun 16 19:42:32 2010 +0100 gallium: adapt code to interface changes... commit dcae4f586f0d0885b72674a355e5d56d47afe77d Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Jun 16 19:42:05 2010 +0100 gallium: separate depth0 and array_size in the resource itself. These fields are still mutually exclusive (since no 3d array textures exist) but it ultimately seemed to error-prone to adapt all code accept the new meaning of depth0 (drivers stick that into hardware regs, calculate mipmap sizes etc.). And it isn't really cleaner anyway. So, array textures will have depth0 of 1, but instead use array_size, 3D textures will continue to use depth0 (and have array_size of 1). Cube maps also will use array_size to indicate their 6 faces, but since all drivers should just be fine by inferring this themselves from the fact it's a cube map as they always used to nothing should break. commit 621737a638d187d208712250fc19a91978fdea6b Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Jun 16 17:47:38 2010 +0100 gallium: adapt code to interface changes There are still usages of pipe_surface where pipe_resource should be used, which should eventually be fixed. commit 2d17f5efe166b2c3d51957c76294165ab30b8ae2 Author: Roland Scheidegger <sroland@vmware.com> Date: Wed Jun 16 17:46:14 2010 +0100 gallium: more interface changes In particular to enable usage of buffers in views, and ability to use a different pipe_format in pipe_surface. Get rid of layout and offset parameter in pipe_surface - the former was not used in any (public) code anyway, and the latter should either be computed on-demand or driver can use subclass of pipe_surface. Also make create_surface() use a template to be more consistent with other functions. commit 71f885ee16aa5cf2742c44bfaf0dc5b8734b9901 Merge: 3232d11 8ad410d Author: Roland Scheidegger <sroland@vmware.com> Date: Mon Jun 14 14:19:51 2010 +0100 Merge commit 'origin/master' into gallium-array-textures Conflicts: src/gallium/auxiliary/util/u_box.h src/gallium/drivers/nv50/nv50_surface.c src/gallium/drivers/nvfx/nvfx_surface.c src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_texture.c src/gallium/drivers/r300/r300_transfer.c src/gallium/drivers/r600/r600_blit.c src/gallium/drivers/r600/r600_screen.h src/gallium/include/pipe/p_state.h commit 3232d11fe3ebf7686286013c357b404714853984 Author: Roland Scheidegger <sroland@vmware.com> Date: Mon Jun 14 11:40:04 2010 +0100 mesa/st: adapt to interface changes still need to fix pipe_surface sharing (as that is now per-context). Also broken is depth0 handling - half the code assumes this is also used for array textures (and hence by extension of that cube maps would have depth 6), half the code does not... commit f433b7f7f552720e5eade0b4078db94590ee85e1 Author: Roland Scheidegger <sroland@vmware.com> Date: Mon Jun 14 11:35:52 2010 +0100 gallium: fix a couple of bugs in interface chnage fixes commit 818366b28ea18f514dc791646248ce6f08d9bbcf Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:42:11 2010 +0200 targets: adapt to interface changes Yes even that needs adjustments... commit 66c511ab1682c9918e0200902039247793acb41e Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:41:13 2010 +0200 tests: adapt to interface changes Everything needs to be fixed :-(. commit 6b494635d9dbdaa7605bc87b1ebf682b138c5808 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:39:50 2010 +0200 st: adapt non-rendering state trackers to interface changes might not be quite right in all places, but they really don't want to use pipe_surface. commit 00c4289a35d86e4fe85919ec32aa9f5ffe69d16d Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:38:48 2010 +0200 winsys: adapt to interface changes commit 39d858554dc9ed5dbc795626fec3ef9deae552a0 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:26:54 2010 +0200 st/python: adapt to interface changes don't think that will work, sorry. commit 6e9336bc49b32139cec4e683857d0958000e15e3 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:26:07 2010 +0200 st/vega: adapt to interface changes commit e07f2ae9aaf8842757d5d50865f76f8276245e11 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:25:56 2010 +0200 st/xorg: adapt to interface changes commit 05531c10a74a4358103e30d3b38a5eceb25c947f Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:24:53 2010 +0200 nv50: adapt to interface changes commit 97704f388d7042121c6d496ba8c003afa3ea2bf3 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:24:45 2010 +0200 nvfx: adapt to interface changes commit a8a9c93d703af6e8f5c12e1cea9ec665add1abe0 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:24:01 2010 +0200 i965g: adapt to interface changes commit 0dde209589872d20cc34ed0b237e3ed7ae0e2de3 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:22:38 2010 +0200 i915g: adapt to interface changes commit 5cac9beede69d12f5807ee1a247a4c864652799e Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:20:58 2010 +0200 svga: adapt to interface changes resource_copy_region still looking fishy. Was not very suited to unified zslice/face approach... commit 08b5a6af4b963a3e4c75fc336bf6c0772dce5150 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:20:01 2010 +0200 rbug: adapt to interface changes Not sure if that won't need changes elsewhere? commit c9fd24b1f586bcef2e0a6e76b68e40fca3408964 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:19:31 2010 +0200 trace: adapt to interface changes commit ed84e010afc5635a1a47390b32247a266f65b8d1 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:19:21 2010 +0200 failover: adapt to interface changes commit a1d4b4a293da933276908e3393435ec4b43cf201 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:19:12 2010 +0200 identity: adapt to interface changes commit a8dd73e2c56c7d95ffcf174408f38f4f35fd2f4c Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:18:55 2010 +0200 softpipe: adapt to interface changes commit a886085893e461e8473978e8206ec2312b7077ff Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:18:44 2010 +0200 llvmpipe: adapt to interface changes commit 70523f6d567d8b7cfda682157556370fd3c43460 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:18:14 2010 +0200 r600g: adapt to interface changes commit 3f4bc72bd80994865eb9f6b8dfd11e2b97060d19 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:18:05 2010 +0200 r300g: adapt to interface changes commit 5d353b55ee14db0ac0515b5a3cf9389430832c19 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:17:37 2010 +0200 cell: adapt to interface changes not even compile tested commit cf5d03601322c2dcb12d7a9c2f1745e2b2a35eb4 Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:14:59 2010 +0200 util: adapt to interface changes amazing how much code changes just due to some subtle interface changes? commit dc98d713c6937c0e177fc2caf23020402cc7ea7b Author: Roland Scheidegger <sroland@vmware.com> Date: Sat Jun 12 02:12:40 2010 +0200 gallium: more interface fail, docs this also changes flush_frontbuffer to use a pipe_resource instead of a pipe_surface - pipe_surface is not meant to be (or at least no longer) an abstraction for standalone 2d images which get passed around. (This has also implications for the non-rendering state-trackers.) commit 08436d27ddd59857c22827c609b692aa0c407b7b Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jun 10 17:42:52 2010 +0200 gallium: fix array texture interface changes bugs, docs commit 4a4d927609b62b4d7fb9dffa35158afe282f277b Author: Roland Scheidegger <sroland@vmware.com> Date: Thu Jun 3 22:02:44 2010 +0200 gallium: interface changes for array textures and related cleanups This patch introduces array textures to gallium (note they are not immediately usable without the associated changes to the shader side). Also, this abandons pipe_subresource in favor of using level and layer parameters since the distinction between several faces (which was part of pipe_subresource for cube textures) and several z slices (which were not part of pipe_subresource but instead part of pipe_box where appropriate for 3d textures) is gone at the resource level. Textures, be it array, cube, or 3d, now use a "unified" set of parameters, there is no distinction between array members, cube faces, or 3d zslices. This is unlike d3d10, whose subresource index includes layer information for array textures, but which considers all z slices of a 3d texture to be part of the same subresource. In contrast to d3d10, OpenGL though reuses old 2d and 3d function entry points for 1d and 2d array textures, respectively, which also implies that for instance it is possible to specify all layers of a 2d array texture at once (note that this is not possible for cube maps, which use the 2d entry points, although it is possible for cube map arrays, which aren't supported yet in gallium). This should possibly make drivers a bit simpler, and also get rid of mutually exclusive parameters in some functions (as z and face were exclusive), one potential downside would be that 3d array textures could not easily be supported without reverting this, but those are nowhere to be seen. Also along with adjusting to new parameters, rename get_tex_surface / tex_surface_destroy to create_surface / surface_destroy and move them from screen to context, which reflects much better what those do (they are analogous to create_sampler_view / sampler_view_destroy). PIPE_CAP_ARRAY_TEXTURES is used to indicate if a driver supports all of this functionality (that is, both sampling from array texture as well as use a range of layers as a render target, with selecting the layer from the geometry shader).
vergreen_state.c
600_blit.c
600_buffer.c
600_pipe.c
600_pipe.h
600_resource.h
600_state.c
600_texture.c
|
a7cb673aa1b1184ac58d77ff400d1d70d316dc06 |
29-Nov-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: it looks like r600 can handle dword offsets in the indices. Tested with piglit + ut2004 still seems to render okay (and it definitely does this)
600_translate.c
|
c6ea4c0e8a6aa84a590ae63da3eb06c08c7356ed |
27-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix the PIPE_FORMAT_A8_UNORM color swap for Evergreen as well.
g_state_inlines.h
|
7a4599c6f5596e55b55a04817d812c6ff70f69d3 |
27-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Fix the PIPE_FORMAT_L8A8_UNORM color swaps.
g_state_inlines.h
600_state_inlines.h
|
a981d62c9781cd204aaec643b0f6115496f01789 |
26-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: disable hardware blit for stream texture
600_texture.c
|
de623b96abea4352259c8079ddc1a16fe5d4b22f |
24-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: disable not working formats
600_state_inlines.h
|
431e72984b12e6ef0a1668814ec54b14255f98a1 |
24-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: reenable texture uploads, but keep R16_SNORM disabled
600_texture.c
|
a51b0daa59c03cae8cc67baa48c11ff63155cbcb |
24-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: disable R32 float also in r600_translate_colorformat
600_state_inlines.h
|
3688301c59d5661d7a5f1473576f2ad1ed575a14 |
19-Nov-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Removed duplicated call to tgsi_split_literal_constant(). Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
07e0424a172970a6ea06e09fe92c1681d8f0f260 |
23-Nov-2010 |
Mathias Fröhlich <Mathias.Froehlich@gmx.net> |
r600g: Only compare active vertex elements Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
0e4c5f63b9023b292b88b2f0d5d0f6154e8ad263 |
22-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: add support for ontario APUs Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
vergreen_state.c
600.h
600_asm.c
600_pipe.c
|
bf9c80976fdd6bcbd29c959f6313115b2b07f5df |
22-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix additional EVENT_WRITE packet Add explicit EVENT_TYPE field
vergreend.h
|
9aa089eac05ebefafb6610b4a7e209b2fd1e93f6 |
14-Nov-2010 |
Marek Olšák <maraeo@gmail.com> |
gallium: add PIPE_SHADER_CAP_SUBROUTINES This fixes piglit/glsl-vs-main-return and glsl-fs-main-return for the drivers which don't support RET (i915g, r300g, r600g, svga). ir_to_mesa does not currently generate subroutines, but it's a matter of time till it's added. It would then break all the drivers which don't implement them, so this CAP makes sense. Signed-off-by: Marek Olšák <maraeo@gmail.com>
600_pipe.c
|
d5aadf0d80e8c973ef5cf9d82e97f23f0e3c032b |
22-Nov-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: pick correct color swap for A8 fbos. This fixes fdo bug 31810. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state_inlines.h
|
e6b71530daea3059ee362d4df51575e27e026b22 |
21-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video Conflicts: src/gallium/auxiliary/Makefile src/gallium/auxiliary/SConscript
|
331eb58d1532303770e3cae2ba5ed4c39a159881 |
21-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: disable staging upload for now
600_texture.c
|
cc998ddf929d5b6caea9f3d4b31c92aed7c55d96 |
21-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: remove accidentally added r32 float format
600_state_inlines.h
|
749504a935f2468ea1f84a54e918233d77d90178 |
20-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
r600g: add support for signed normalized frame buffers
600_state.c
600_state_inlines.h
|
c63a86e1e5665fb5cd94de42d6c59171398e12ee |
20-Nov-2010 |
Owen W. Taylor <otaylor@fishsoup.net> |
r600g: Fix location for clip plane registers The stride between the different clip plane registers was incorrect. https://bugs.freedesktop.org/show_bug.cgi?id=31788 agd5f: fix evergreen as well.
vergreen_state.c
600_state.c
|
04ffbe1ac6a82ac5cce843afa15ffdfa4ef78103 |
19-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: use full range of VS resources for vertex samplers Now that we have fetch shaders, the full range of VS resources can be used for sampling.
vergreen_state.c
600_shader.c
600_state.c
|
4afd0683854ac1cfbe7118232b5e344c83d4b0c2 |
19-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: use meaningful defines for chiprev Makes the code much clearer.
600_asm.c
600_opcodes.h
600_shader.c
|
52c66120d8c55d29af6af60f75eb1dc54d9b8062 |
19-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: translate ARR instruction for evergreen evergreen variant of: 9f7ec103e26c67cb077fd7d94d2fb68562b86c40
600_shader.c
|
f609b2ab0342d77a8beca9efb5fbc5b66ff98295 |
18-Nov-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add fetch shader capabilities Use fetch shader instead of having fetch instruction in the vertex shader. Allow to restrict shader update to a smaller part when vertex buffer input layout changes. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_asm.c
vergreen_state.c
600.h
600_asm.c
600_asm.h
600_pipe.h
600_shader.c
600_shader.h
600_state.c
|
a23f25eba1fb8919a29efb88ef9e351abcc65b2e |
18-Nov-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix buffer alignment This should fix the remaining buffer alignment issues in r600g.
600_texture.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>
vergreen_state.c
600_asm.c
600_asm.h
600_blit.c
600_buffer.c
600_pipe.c
600_shader.c
600_state.c
600_state_common.c
|
6bbe637c1307001d4e6d6acb3d91da029d8fde98 |
17-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Synchronize supported color formats between Evergreen and r600/r700.
g_state_inlines.h
|
7d0f45563d5426f0ad633bed1561c7455804b807 |
17-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Swizzle vertex data only once. Vertex data swizzles are already done in the vertex shader. Doing them twice breaks BGRA vertex arrays for example.
g_state_inlines.h
vergreen_state.c
|
e639e1b83ea65985cd84d12dc120d77cab80ba9e |
16-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] next round of idct implementation
600_state_inlines.h
|
62fe9c4efc77d0b9310e5e265f285205a3f862dc |
15-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Add PIPE_FORMAT_L8A8_UNORM for Evergreen as well.
g_state_inlines.h
|
aa3113ae20e42b5c519936a5dc565275b1ae3ab2 |
15-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Evergreen has two extra frac_bits for the sampler LOD state. The (piglit) mipmap_limits test shows the issue very clearly.
vergreen_state.c
|
5c7127c07c3933662bc5447ce4a83b4e8af3b473 |
12-Nov-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: fill out CAPs for indirect addressing
600_pipe.c
|
195bbe8ce218533569dde1368d04da0fd229913d |
11-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
Merge remote branch 'origin/master' into pipe-video
|
7fb16423cc325efcdcf6e4954a5ac71d8f96dbf8 |
11-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: enforce minimum stride on render target texture images Fixes piglit/fbo_readpixels since staging upload changes.
600_texture.c
|
8a3c181e9cc761abb647a8e813f25e3fa4441a9a |
11-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: do not try to use staging resource for depth textures Currently r600_resource_copy_region() will turn these copies into transfers + memcpys, so to avoid recursion we must not turn those transfers back into blits.
600_texture.c
|
6baad55f157387d0bb44144680a96bc32280109f |
11-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: guard experimental s3tc code with R600_ENABLE_S3TC
600_texture.c
|
e406936b9ec46f1b8a41d02edd15f384bb739e32 |
11-Nov-2010 |
Christian König <deathsimple@vodafone.de> |
[g3dvl] remove empty block handling for now Maybe this isn't going into the right direction, but it makes handling the code easier for now.
600_video_context.c
|
63c3e3a3dc73f8a72e0d08ac4453df57bccdfdb9 |
09-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600: fix my pessimism about PIPE_TRANSFER_x flags For some reason I though we needed the _DISCARD flag to avoid readbacks, which isn't true at all. Now write operations should pipeline properly, gives a good speedup to demos/tunnel.
600_texture.c
|
9f7ec103e26c67cb077fd7d94d2fb68562b86c40 |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: translate ARR instruction
600_shader.c
|
c2c55547dc36f404e29dbc9253166f90df6783af |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: attempt to turn on DXTn formats Seems to sort-of work for non-mipmapped textures. Better than just black anyway.
g_state_inlines.h
600_state_inlines.h
600_texture.c
|
e3ea4aec033643a629e2fa48eb538fdb856adf4e |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: avoid recursion with staged uploads Don't use an intermediate for formats which don't support hardware blits under u_blitter.c, as these will recursively attempt to create a transfer.
600_texture.c
|
46c19700676e17bfaa0a88346d512449fbeede79 |
03-Nov-2010 |
Benjamin Franzke <benjaminfranzke@googlemail.com> |
r600g: implement texture_get_handle (needed for eglExportDRMImageMESA)
600.h
600_texture.c
|
9f064116458ff68b92f179a19be4615f003eaa3e |
07-Nov-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Mention AMD in the renderer string.
600_pipe.c
|
01b39b053b0cb6c7493b560b26734f3c4fa52efa |
03-Nov-2010 |
José Fonseca <jfonseca@vmware.com> |
r600g: Swap the util_blitter_destroy call order. Trivial change that avoids a segmentation fault when the blitter state happens to be bound when the context is destroyed. The free calls should probably removed altogether in the future -- the responsibility to destroy the state atoms lies with whoever created it, and the safest thing for the pipe driver is to not touch any bound state in its destructor.
600_pipe.c
|
32bb65217ed048817d314062f2804c79f80d0ec7 |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
evergreeng: set hardware pixelcenters according to gl_rasterization_rules
vergreen_state.c
vergreend.h
|
d6b6a0bc170bd61abbbe9cb6ba777c7192dbd018 |
01-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
evergreeng: respect linewidth state, use integer widths only Discard fractional bits from linewidth. This matches the nvidia closed drivers, my reading of the OpenGL SI and current llvmpipe behaviour. It looks a lot nicer & avoids ugliness where lines alternate between n and n+1 pixels in width along their length. Also fix up r600g to match.
vergreen_state.c
vergreend.h
600_state.c
|
ee07e0e39ad1c4d13d540b23220fecc564d07b16 |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: don't call debug_get_bool_option for tiling more than once
600_texture.c
|
b3462601cb69f277b9aafc2ee5179a0c2cf6cbcd |
03-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
evergreeng: protect against null constant buffers Should do better than this and actually unbind the buffer, but haven't yet gotten it to work.
vergreen_state.c
|
c3974dc837b4a11a30603bb00fa1d346e721af59 |
17-Oct-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: set hardware pixel centers according to gl_rasterization_rules These were previously being left in the default (D3D) mode. This mean that triangles were drawn slightly incorrectly, but also because this state is relied on by the u_blitter code, all blits were half a pixel off.
600_state.c
600d.h
|
7b120ceac8738b73dcffe4d39e3e32b473dea3cf |
02-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: remove unused flink, domain fields from r600_resource These were being set but not used anywhere.
600_buffer.c
600_resource.h
600_texture.c
|
d4fab99c1c20334131b446b0032303a8b3c5c1a1 |
02-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: use a buffer in GTT as intermediate on texture up and downloads Generalize the existing tiled_buffer path in texture transfers for use in some non-tiled up and downloads. Use a staging buffer, which the winsys will restrict to GTT memory. GTT buffers have the major advantage when they are mapped, they are cachable, which is a very nice property for downloads, usually the CPU will want to do look at the data it downloaded.
600_resource.h
600_texture.c
|
29c4a15bf61a76cd71ffa5b8f09706d0eab84281 |
02-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: propogate resource usage flags to winsys, use to choose bo domains This opens the question of what interface the winsys layer should really have for talking about these concepts. For now I'm using the existing gallium resource usage concept, but there is no reason not use terms closer to what the hardware understands - eg. the domains themselves.
600.h
600_buffer.c
600_shader.c
600_texture.c
|
14c0bbf469642722f86df315b9f85d23f9753956 |
15-Oct-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: propagate usage flags in texture transfers
600_texture.c
|
52ba68d0b071620c891122d8049ec77568aa8d19 |
31-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Destroy the winsys in r600_destroy_screen(). Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_pipe.c
|
ecb1b8b98f7b2464e29e56a1f1bf87f74129ac08 |
31-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Delete custom_dsa_flush on shutdown. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_pipe.c
|
c49dcaef65296dd51d374d3f903734c46b601b2d |
30-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: We don't support PIPE_CAP_PRIMITIVE_RESTART. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_pipe.c
|
8dfafbf0861fe3d2542332658dd5493851053c78 |
02-Nov-2010 |
Keith Whitwell <keithw@vmware.com> |
st/mesa: unbind constant buffer when not in use Important as more constant buffers per shader start to get used. Fix up r600 (tested) and nv50 (untested) to cope with this. Drivers previously didn't see unbinds of constant buffers often or ever, so this isn't always dealt with cleanly. For r600 just return and keep the reference. Will try to do better in a followup change.
600_state.c
|
3ae04dd910d59dd2f044579f3e098b52fc577700 |
02-Nov-2010 |
José Fonseca <jfonseca@vmware.com> |
scons: Add aliases for several pipe drivers.
Conscript
|
4f8dbd2f5ecfa3142a43876146ea054cf11f80eb |
02-Nov-2010 |
José Fonseca <jfonseca@vmware.com> |
r600g: List recently added files in SConscript.
Conscript
|
41ed47d6b8fb6c032e2907ef2e49e414c26f35c1 |
28-Oct-2010 |
Christian König <deathsimple@vodafone.de> |
Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa into pipe-video Conflicts: src/gallium/include/pipe/p_format.h
|
d674ee2a4dfeda55d3f4780e97a26f73d855c448 |
27-Oct-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warnings.
600_asm.c
|
8ad9d83fdfc609303cebba3d811064b91aed6b0b |
24-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Destroy the blitter. This fix got lost in the state rework merge. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_pipe.c
|
d1acb920163ab0f39ff2fc72b85fc7bf16c37262 |
25-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add assembler support for all the kcache fields.
g_asm.c
600_asm.c
600_asm.h
|
2d2bafdb30110e83b7e14017326a454d7e7f37f3 |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix magic 0x1 ->flat shade ena
vergreen_state.c
600_state.c
|
a20c2347a0bb9e0e1591b070ee5d0cac81168114 |
24-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop more common state handling code
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
f4a2c62af56ce10e43688e8283f8defeb05cef1a |
23-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Also clear bc data when we're destroying a shader. [airlied: remove unused vars] Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_asm.h
600_shader.c
|
ccb9be105602edaaff196046e324c8cb4a12fe0a |
23-Oct-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added r600_pipe_shader_destroy(). Not yet complete. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
600_pipe.h
600_shader.c
600_state.c
|
9612b482e2c8e994709bcaab79185224b4d76670 |
23-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: merge more of the common r600/evergreen state handling
vergreen_state.c
600_pipe.h
600_state.c
600_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>
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
|
b0dfc3f261b121bf8f39da6d09731ce7beb5f742 |
24-Oct-2010 |
Christian König <deathsimple@vodafone.de> |
Remove code copied over from r300
600_video_context.c
|
4381580936f07e0c5eb0ad7c51d2ccf765000d08 |
23-Oct-2010 |
Christian König <deathsimple@vodafone.de> |
First xvmc-r600 implementation
akefile
600_pipe.c
600_video_context.c
600_video_context.h
|
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
akefile
vergreen_state.c
600_pipe.h
600_state.c
600_state_common.c
600_translate.c
|
e68c83a5a01a8a659857310cfcc785c7e028d3f0 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: initial translate state support
600_pipe.c
600_pipe.h
600_shader.c
600_state.c
|
089aa0ba247cee908ae689f8e4f3ffc457ce7627 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add texture tiling enable under a debug option. At the moment you need kernel patches to have texture tiling work with the kernel CS checker, so once they are upstream and the drm version is bumped we can make this enable flip the other way most likely.
600_texture.c
|
cdd14668b67d80729c0bb6480dc2317ac4e1cbb9 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add texture tiling alignment support. this sets things up to align stride/height with tile sizes, it also adds support for the 2D/1D array mode cross over point.
600_texture.c
|
92ed84d11560e226c87bf2758b1503e3075b3f82 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: introduce a per-driver resource flag for transfers. this is to be used to decide not to tile a surface being used for transfers.
600_resource.h
600_texture.c
|
91e513044de21f20c2c085a99e9d784c7a61173c |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add r600 surface to store the aligned height. we need to know the aligned height when binding the surface to cb/zb, not the gallium surface height.
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
388ce31baa860a0d7535c852d768c6e243c8133c |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: start adding hooks for aligning width/height for tiles.
600_texture.c
|
ea5aab85fd195074189832c2d6870dd78f0f8966 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: move to per-miplevel array mode. Since the hw transitions from 2D->1D sampling below the 2D macrotile size we need to keep track of the array mode per level so we can render to it using the CB.
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
206fbd9640f076ada23368edf158b6d40f673ba7 |
21-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: all non-0 mipmap levels need to be w/h aligned to POT. this adds a new minify function to the driver to ensure this.
600_texture.c
|
89c26866f05dcf8fbb716e38d4780cebcae71653 |
20-Oct-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Ensure r600_src is initialized in tgsi_exp function. Silences these GCC warnings. r600_shader.c: In function 'tgsi_exp': r600_shader.c:2339: warning: 'r600_src[0].rel' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].abs' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].neg' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].chan' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].sel' is used uninitialized in this function
600_shader.c
|
8a74f7422bedb419f3527bb1ccd60e1e9220502c |
18-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: retrieve tiling info from kernel for shared buffers. we need to know if the back is tiled so we can blit from it properly.
600.h
600_buffer.c
600_texture.c
|
375613afe38e0704b4ce38e64765b12d9660a846 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix transfer function for tiling. this makes readback with tiled back work better.
600_texture.c
|
c61b97d50425236f001dbc54f098318f921fe916 |
17-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: attempt to cleanup depth blit cleanup what I'm nearly sure is unnecessary work in the depth blit code.
600_blit.c
|
21c6459dfbe3434fd80bc1beaffb9f71a34e8994 |
18-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: depth needs to bound to ds
600_texture.c
|
69f8eebe726d01d013f7cdea6c0d058ff6b04337 |
17-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in tiling setup cb code.
600_state.c
|
a1b7333c07797faea29f50fd49b6c5e877beca0a |
17-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: do proper tracking of views/samplers. we need to do pretty much what r300g does in for this, this fixes some issues seen while working on tiling.
vergreen_state.c
600_pipe.h
600_state.c
|
5b966f58e3d87fc271cc429be969cf98eec991ca |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: set tiling bits in hw state
600_state.c
|
7b3fa038830663de9bceded1b0dd2d64b8cf39c4 |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: get tiling info from kernel
600.h
600_pipe.c
600_pipe.h
|
e8e20313afbdf3a38e5a10e6fa566864452eeb2c |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add defines for tiling
600d.h
|
82114ac02a2d5a764ce69711fc0a71f559ee9137 |
05-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: switch to a common formats.h file since they are in different regs
g_state_inlines.h
vergreend.h
600_formats.h
600_state_inlines.h
600_texture.c
600d.h
|
98b3f27439ba3a48286ed0d6a4467e5482b41fec |
17-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add evergreen ARL support. Thanks to Alex Deucher for pointing out the FLT to int conversion is necessary and writing an initial patch, this brings about 20 piglits, and I think this is the last piece to make evergreen and r600 equal in terms of features.
600_opcodes.h
600_shader.c
|
fc6caef4cb67fb13642c5ebccee53019d1764df6 |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen interpolation support. On evergreen, interpolation has moved into the fragment shader, with the interpolation parmaters being passed via GPRs and LDS entries. This works out the number of interps required and reserves GPR/LDS storage for them, it also correctly routes face/position values which aren't interpolated from the vertex shader. Also if we noticed nothing is to be interpolated we always setup perspective interpolation for one value otherwise the GPU appears to lockup. This fixes about 15 piglit tests on evergreen.
vergreen_state.c
600_shader.c
600_shader.h
|
8260ab93461eca3e18f9c17a9ca1961a11372071 |
14-Oct-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: handle absolute modifier in shader translator This was being classed as unsupported in one place but used in others. Enabling it seems to work fine. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
c28f7645722ed3da1a04d3187f9cfa5d8e5e489d |
14-Oct-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: emit hardware linewidth Tested with demos/pixeltest - line rasterization doesn't seem to be set up for GL conventions yet, but at least width is respected now. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_state.c
|
68014c8d19559576d368e158932278df05fe659b |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: select linear interpolate if tgsi input requests it
600_shader.c
|
0637044add50b3a4aee8e915b84c18813c9130f3 |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup typo in macro name
600_shader.c
|
1e82c28fcf76bf79ceb5a1eaf29b3d6d25909ddd |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup pos/face ena/address properly
600_shader.c
|
8a9f02c5d503089bdcc90ff934f6269e59356d52 |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: only pick centroid coordinate when asked. TGSI tells us when to use this, its not hooked up from GLSL to MESA to TGSI yet though.
600_shader.c
600_shader.h
|
a21a2748beb1f42d21e14858eee9a1323d85a00f |
13-Oct-2010 |
Fredrik Höglund <fredrik@kde.org> |
r600g: Fix texture sampling with swizzled coords Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
26dacce2c0b33a2a6aff77e6094c06e385e1a541 |
14-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop unused context members
600_pipe.h
|
ff4b397517a374ac3d4bf437f85ae6a96171a714 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix stencil export for evergreen harder
vergreen_state.c
vergreend.h
|
40cc5bfcd70e412289dbb32a1ebca91bf109e1bd |
11-Oct-2010 |
Stephan Schmid <stephan_2303@gmx.de> |
r600g: fix relative addressing when splitting constant accesses Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
6da8129b3c25be1da6d6f6a0e56b8f70b1e2f054 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing eg reg definition
vergreend.h
|
92e729bba5aab9958f5ba1339c27f6bfe743ef2e |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen add stencil export bit
vergreen_state.c
|
88c1b32c62427c24ea276f20ac5ef260385a98d4 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use blitter for hw copy region at the moment depth copies are failing (piglit depth-level-clamp) so use the fallback for now until get some time to investigate.
600_blit.c
|
f8778eeb40daf355f8dbcfeb1a9b492c57ce6a35 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop all use of unsigned long this changes size on 32/64 bit so is definitely no what you want to use here.
600_resource.h
600_texture.c
|
e9acf9a3bb45caea7b0fba197aa9ab01f24bb63f |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix transfer stride. fixes segfaults
600_texture.c
|
e3b089126c63c7178d725fbe245ca09d3f9edba1 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: remove bpt and start using pitch_in_bytes/pixels. this mirror changes in r300g, bpt is kinda useless when it comes to some of the non-simple texture formats.
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
fa797f12b3e1e82020eb7bc8fd0181baa7515efe |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: rename pitch in texture to pitch_in_bytes
vergreen_state.c
600_resource.h
600_state.c
600_texture.c
|
6a0066a69f6873a53d45684205926e8f5b73ddb2 |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use common texture object create function
600_texture.c
|
771dd89881791e38c076230497023ad7522602b3 |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: split out miptree setup like r300g just a cleanup step towards tiling
600_texture.c
|
9979d60c0e2e4152bce19c2c4128ff2941b9191b |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add copy into tiled texture
600_texture.c
|
560427667006f01ad9146fa07185924d4f3a08d6 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: the vs/ps const arrays weren't actually being used. completely removed them.
600_pipe.c
600_pipe.h
|
d59498b78041b8a7a046ac2c892e7a1896f59ca2 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: reduce size of context structure. this thing will be in the cache a lot, so having massive big struct arrays inside it won't be helping anyone.
600_pipe.c
600_pipe.h
|
c8d4108fbee679735a1cc3f405d848d01bfb23f6 |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: store samplers/views across blit when we need to modify them also fixup framebuffer state copies to avoid bad state.
vergreen_state.c
600_blit.c
600_pipe.h
600_state.c
|
a8d1d7253ed281fd5c3a8a86658998eb5b9af847 |
13-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix scissor/cliprect confusion gallium calls them scissors, but r600 hw like r300 is better off using cliprects to implement them as we can turn them on/off a lot easier.
vergreen_state.c
600_state.c
|
833b4fc11e0fcac36490b036135298232310568a |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix depth0 setting
600_texture.c
|
39d1feb51e9dac794751e72f48faf26409a84b1c |
06-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add shader stencil export support.
600_pipe.c
600_shader.c
600d.h
|
40acb109de61ba445b9247f7d53eaf1c2b9b1245 |
07-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add support for S8, X24S8 and S8X24 sampler formats.
600_texture.c
|
d0eb854f58ffb7d01fb37c0939078d8d117e7386 |
06-Oct-2010 |
Keith Whitwell <keithw@vmware.com> |
r600g: add missing file to sconscript
Conscript
|
965f69cb0c51ca5a5c332e207cc86367fa31e6b1 |
12-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in vertex sampling on r600 fixes https://bugs.freedesktop.org/show_bug.cgi?id=30771 Reported-by: Kevin DeKorte
600_state.c
|
3322416de44f27974edaba2aee8b2d2d21de6a8f |
11-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: don't run with scissors. This could probably be done much nicer, I've spent a day chasing a coherency problem in the kernel, that turned out to be incorrect scissor setup.
vergreen_state.c
600_state.c
|
ef2702fb2003944998ab1578119fb44fe16d1c82 |
10-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add TXL opcode support. fixes glsl1-2D Texture lookup with explicit lod (Vertex shader)
600_shader.c
|
ea1d818b58d6ff9e4cd0c40eb865beabde8f268c |
11-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: enable vertex samplers. We need to move the texture sampler resources out of the range of the vertex attribs. We could probably improve this using an allocator but this is the simple answer for now. makes mesa-demos/src/glsl/vert-tex work.
vergreen_state.c
600_pipe.c
600_shader.c
600_state.c
|
2c47f302af48fe2a464230efb63dfe543740d1fb |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen has no request size bit in texture word4
vergreen_state.c
vergreend.h
|
bd89da79a1acc8b896a7f5afc71435befe2ff7e4 |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix input/output Z export mixup for evergreen.
vergreen_state.c
|
8d6a38d7b3ea85bd2199f2797e3580d76cca2f6f |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop width/height per level storage. these aren't used anywhere, so just waste memory.
600_resource.h
600_texture.c
|
1ae5cc2e67a02b3105b5539b5dbc6a69cbb57889 |
08-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add some RG texture format support.
g_state_inlines.h
600_state_inlines.h
|
51f9cc4759c23b74a2e4d9c79b0a5df27d403f54 |
07-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix Z export enable bits. we should be checking output array not input to decide. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
97eea87bde5d05f247580aeb2963ac2476417bd5 |
07-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use format from the sampler view not from the texture. we want to use the format from the sampler view which isn't always the same as the texture format when creating sampler views.
vergreen_state.c
600_state.c
|
84457701b05ef29126d90c2fe72083278d26bd4f |
06-Oct-2010 |
Andre Maasikas <amaasikas@gmail.com> |
r600g: fix evergreen interpolation setup interp data is stored in gpr0 so first interp overwrote it and subsequent ones got wrong values reserve register 0 so it's not used for attribs. alternative is to interpolate attrib0 last (reverse, as r600c does)
600_shader.c
|
9528fc2107d4cae39bc932c1943ffc57ebc92499 |
06-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add evergreen stencil support. this sets the stencil up for evergreen properly.
g_state_inlines.h
vergreen_state.c
|
ea5a74fb5892c9b6ca62054be2ee83a743103f4c |
05-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: userspace fence to avoid kernel call for testing bo busy status Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
|
2cf3199ee3b0014bc426bc3163dfa279c00eabb3 |
05-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: simplify block relocation Since flush rework there could be only one relocation per register in a block. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
|
ac8a1ebe55b08180945ffaebcff6b3bed336c9ec |
05-Oct-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: use dirty list to track dirty blocks Got a speed up by tracking the dirty blocks in a seperate list instead of looping through all blocks. This version should work with block that get their dirty state disabled again and I added a dirty check during the flush as some blocks were already dirty.
600.h
|
585e4098aa0cb68a2cfce55ced5c585bd20aba24 |
05-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: improve bo flushing Flush read cache before writting register. Track flushing inside of a same cs and avoid reflushing same bo if not necessary. Allmost properly force flush if bo rendered too and then use as a texture in same cs (missing pipeline flush dunno if it's needed or not). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
|
d2c06b5037fe9282cbbc0c7acd84a1b286716507 |
05-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop use_mem_constant. since we plan on using dx10 constant buffers everywhere.
vergreen_state.c
600_asm.c
600_asm.h
600_shader.c
600_shader.h
600_state.c
|
d22a1247d8a709cf433a6dd99b2f87a224c27d88 |
04-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: allow r600_bo to be a sub allocation of a big bo Add bo offset everywhere needed if r600_bo is ever a sub bo of a bigger bo. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600.h
600_shader.c
600_state.c
|
294c9fce1b924beddf198a3cce738b88eabb5537 |
04-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: rename radeon_ws_bo to r600_bo Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600.h
600_buffer.c
600_pipe.h
600_resource.h
600_shader.c
600_state.c
600_texture.c
|
6dc051557d99e81fc58e09edf21f185874dc1979 |
04-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: the code to check whether a new vertex shader is needed was wrong this code was memcmp'ing two structs, but refcounting one of them afterwards, so any subsequent memcmp was never going to work. again this stops unnecessary uploads of vertex program,
600_shader.c
|
7af2a22d1f10fa1f556e0d0c55092184ff734c88 |
02-Oct-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary headers.
600_pipe.c
600_state.c
|
20846a8ce102aa2bc6d3f1e907d490940c0d0a69 |
02-Oct-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable. Fixes this GCC warning. r600_shader.c: In function 'tgsi_split_literal_constant': r600_shader.c:818: warning: unused variable 'index'
600_shader.c
|
29b491bd033dd97e5afa3ca0058c50f28c01f39d |
01-Oct-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: indentation fixes Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_asm.c
g_state_inlines.h
600_asm.h
600_buffer.c
600_resource.c
|
738aa29289296512959cbb37d8602131dae44dab |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: setup basic loop consts on r600 + evergreen. this sets up a single loop constant like r600c does.
vergreen_state.c
vergreend.h
600_shader.c
600d.h
|
7777c997e0f4cf75ff292f34a5a64ee2834c0f26 |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: only set the Z export if shader exports it.
vergreen_state.c
600_shader.c
|
b67aa5311fa5d4130cf150c9004946fb30a15fae |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix evergreen draw-buffers just a typo in the register headers.
vergreend.h
|
14c95bb4eec4417887ae882c39fead47624f0fda |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add cb flushing for extra buffers + depth buffer on r600/evergreen
vergreend.h
|
d662195f00fe60349cdda368eeb065910764842f |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup vertex format picking. there are some vertex formats defined in r600c not in the docs.
g_state_inlines.h
vergreen_state.c
vergreend.h
600_state.c
600_state_inlines.h
600d.h
|
e973221538d5edfad62abedf5b37a4fb774d71fc |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add assembler support for other vtx fetch fields. this shouldn't change behaviour, just push the choice of what to do out to the shader.
600_asm.c
600_asm.h
600_shader.c
|
35cfe286d69206d3108c7a8702bd4be6521b5706 |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: realign evergreen code with r600 code. fixes segfault in depth-tex-modes-glsl and OA startup.
vergreen_state.c
|
5eccdc62b998a6b3a82d9fd204db733d4852fc73 |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add reloc for evergreen color attrib we'll need this for color tiling on evergreen.
vergreen_state.c
|
40ccb235d693ea6184ab61529f2910086e68edda |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop depth quirk on evergreen none of the EG cards need the quirk.
vergreen_state.c
|
05d1d86907b12011fdb80e147ae68b4cd207f789 |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add winsys support for CTL constants. These need to be emitted, we also need them to do proper vtx start, instead of abusing index offset.
vergreen_state.c
vergreend.h
600_state.c
600d.h
|
084c29baedf2702200b310d6e63a5d0f95aaac37 |
01-Oct-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix evergreen depth flushing. although evergreen can apparantly sample direct from 24-bit, just make it work with the current method for now.
vergreen_state.c
vergreend.h
600_pipe.c
600_pipe.h
600_state.c
|
9d4ae914e28ac7857a32a88ba27aecc182f697c6 |
30-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix constant & literal src splitting, also fix mplayer gl2 shader Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
153105cfbfd8d6ff30de144605016f6e4f2a1b9e |
30-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: use constant buffer instead of register for constant Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
600d.h
|
4378c17c88c6d1fb046f53ef83955fd7fbd992db |
30-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: return string for chip family use same strings as r600c.
600_pipe.c
|
dbcd6526021c50770c3e5e04b04dc64c70298124 |
30-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: clean up some code from move to new paths. mainly remove 2 suffix from function names
vergreen_state.c
600_blit.c
600_pipe.c
600_pipe.h
600_resource.c
600_shader.c
600_state.c
|
2bc9d3f49837eb56f2602974004552e7852bfe0b |
30-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add L8A8 unorm. fixes texEnv warnings.
600_state_inlines.h
|
534f7d5749e34003fc9a0a4c83e6cd6f86a1c2cb |
30-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: port r300g fix for X* formats in texformat code
600_texture.c
|
6abd7771c6ab2c733b20835e211060dd18fd847d |
29-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: more cleanup Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
vergreen_state.c
600_asm.h
600_blit.c
600_pipe.c
600_pipe.h
600_public.h
600_query.c
600_shader.c
600_state.c
|
22c06a08e76a4edb468e0a6a85dd4e5c0483d275 |
29-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Update SConscript. Fixes SCons build.
Conscript
|
1235becaa1cf7e29f580900592563c3329d326de |
29-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: cleanup Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
vergreen_state.c
600_buffer.c
600_pipe.c
600_pipe.h
600_query.c
600_resource.c
600_shader.c
600_state.c
600_state2.c
adeon.h
|
845bda34d0c10b72cf3e41b445985a67572c0c1d |
29-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Update SConscript. This is a follow-up to commit 9c284b5cae916a083d17d1039d2f2da128b47882. Fixes SCons build.
Conscript
|
9c284b5cae916a083d17d1039d2f2da128b47882 |
29-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: delete old path Lot of clean can now happen. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
g_asm.c
g_hw_states.c
600.h
600_asm.c
600_blit.c
600_buffer.c
600_context.c
600_context.h
600_draw.c
600_helper.c
600_hw_states.c
600_pipe.h
600_query.c
600_resource.c
600_resource.h
600_screen.c
600_screen.h
600_shader.c
600_state.c
600_texture.c
700_asm.c
|
5646964b1360883b6254e2ebacc198f43869d36f |
28-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: use a hash table instead of group Instead of creating group of register use a hash table to lookup into which block each register belongs. This simplify code a bit. Signed-off-by: Jerome Glisse <jglisse@redhat.com
vergreen_state.c
600.h
600_state2.c
|
08839c4055e89a10e90df2f3a3a2bdc4e6ce0273 |
29-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
Revert "r600g: add initial vertex translate support." This reverts commit 914b669b082258fc05d0fec047b69949d88585c4. I didn't mean to commit this yet, will redo in new state system once we clean it up.
600_context.c
600_context.h
600_draw.c
600_state.c
|
28b57c56e21943055f8d3c08822c4f632468b0b1 |
29-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: remove old assert from new codepath this fixes draw-elements-base-vertex
600_state2.c
|
914b669b082258fc05d0fec047b69949d88585c4 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial vertex translate support.
600_context.c
600_context.h
600_draw.c
600_state.c
|
53b3933ce661e2552aa064bbc3a3ab317f32d148 |
29-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add evergreen texture border support to new path
vergreen_state.c
|
23be883c9b7ca58d2626e665cd238744ae8639b0 |
29-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add back evergreen name.
600_state2.c
|
35f94b1942d9b99463ef9e179ebf70809e3bea69 |
26-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Cleaned up index buffer reference handling in the draw module. This fixes a buffer leak. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_buffer.c
600_draw.c
600_state2.c
|
723a655ed3f3092f6fa74a903fb774a3cec93b79 |
28-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: avoid rebuilding the vertex shader if no change to input format Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_pipe.h
600_state2.c
|
fe790a3c346b5edb8b64cfc937b0d5cd9e337412 |
28-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: suspend/resume occlusion query around clear/copy Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_state2.c
|
b534eb16a298ce02e723c53c1d021f35a4a873a2 |
28-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix remaining piglit issue in new design Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state2.c
|
5a38cec7c807db07a6e8f1f2557fa75778a19763 |
28-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: use ptr for blit depth uncompress function Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_resource.h
600_state2.c
600_texture.c
|
175261a1f1bfb1317d787c05f1ccde7f10629636 |
28-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: on evergreen the centroid isn't set in this register.
g_hw_states.c
vergreen_state.c
|
34dba5f05aa36baecdc655f7f94fed871006d590 |
28-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix db flush breaking config state
600_state.c
|
5e07483ed9783cd34e3d3dca74f9f1d002f1ce9d |
27-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix routing btw vertex & pixel shader Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_pipe.h
600_state2.c
|
1617daaf496573eba70b35a760183b427adeff1b |
27-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix pointsprite & resource unbinding When asking to bind NULL resource assume it's unbinding so free resource and unreference assoicated buffer. Also fix pointsprite parameter. Fix glsl-fs-pointcoord & fp-fragment-position Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state2.c
|
99c422ef5ab3924aad66af026945f491d75d226f |
27-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: build packet header once Build packet header once and allow to add fake register support so we can handle things like indexed set of register (evergreen sampler border registers for instance. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreend.h
600.h
|
58a31758e3b8249b12f0e797034bec235343aa15 |
27-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix index buffer drawing Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state2.c
|
4c6344f569c5417b0ea804f6f8216a2b40321480 |
27-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed two texture surface leaks in r600_blit_uncompress_depth(). Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_blit.c
|
7eab5ef425e1e08c0dc0ea8d161c33610a91586f |
27-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add evergreen texture resource properly. adding sampler border looks impossible with current design, another day, another corner case not worked out.
vergreen_state.c
600.h
|
84b2773f00161441c4fe06ce6dbf979c5ce78dae |
26-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warnings. Fixes these GCC warnings. r600_shader.c: In function 'tgsi_tex': r600_shader.c:1611: warning: 'src2_chan' may be used uninitialized in this function r600_shader.c:1611: warning: 'src_chan' may be used uninitialized in this function
600_shader.c
|
d2f24c4d75579acf27cf6d1b0620afa302a1b78f |
26-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: use depth decompression in new path Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_pipe.h
600_state2.c
|
4ca1a92b7fe44158a13910d01c76f41f6946165c |
26-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: move around variables to share depth uncompression code Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.h
600_state.c
|
bc8b8d06b672f19d91fda835d38083d5751299f2 |
25-Sep-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: set ENABLE_KILL on evergreen too
vergreen_state.c
|
c622174f73d0113dbba79520028d3a101b116e39 |
25-Sep-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: set ENABLE_KILL in the shader state in the new design
600_state2.c
|
a852615946b98de2d832d4907f09649803577db7 |
26-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: disable early cull optimization when occlusion query running When occlusion query are running we want to have accurate fragment count thus disable any early culling optimization GPU has. Based on work from Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
|
1fa50412f1840257579d8e6017e8b97189901609 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Disable unused variables. The variables are used only in currently disabled code. Fixes this GCC warning. r600_context.c: In function 'r600_flush': r600_context.c:76: warning: unused variable 'dname' r600_context.c:75: warning: unused variable 'dc'
600_context.c
|
d7065908e48b296cceb0e1b756e9560a013881a2 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable. Fixes this GCC warning. r600_draw.c: In function 'r600_draw_common': r600_draw.c:71: warning: unused variable 'format'
600_draw.c
|
60ec71e8b96da647cd90d8639a4f8bc259d997d5 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable. Fixes this GCC warning. r600_screen.c: In function 'r600_screen_create': r600_screen.c:239: warning: unused variable 'family'
600_screen.c
|
58c243905b0cfcbf1b0299a0f7f0ea90755e36cc |
25-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix vertex resource & polygon offset Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_pipe.h
600_state2.c
|
b6469a8dc712f550bafef624f854f265c5c8360f |
25-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add eg db count control register.
g_hw_states.c
g_states_inc.h
|
ebca23149a8d73317a5e00ba544f28ca0cde31ec |
25-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: make index bias fix for evergreen
g_hw_states.c
|
16a457bba6909d0c34036277eb3a56f27f425c3d |
25-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add eg poly mode code.
g_hw_states.c
g_state_inlines.h
|
53e6eb8dbeedce5699bd43049d5dc1dde9d8855e |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence 'control reaches end of non-void function' warning. Fixes this GCC warning. r600_hw_states.c: In function 'r600_translate_fill': r600_state_inlines.h:136: warning: control reaches end of non-void function
600_state_inlines.h
|
95cb6d30ae442614acd3cf1bee3c19517abb6d63 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable. Fixes this GCC warning. eg_hw_states.c: In function 'eg_resource': eg_hw_states.c:525: warning: unused variable 'r'
g_hw_states.c
|
68fdd5f0d9d66f3b9c103a5ec0674a5f8e4c93d7 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Disable unused variables. The variables are only used in currently disabled code. Fixes this GCC warning. r600_state2.c: In function 'r600_flush2': r600_state2.c:613: warning: unused variable 'dname' r600_state2.c:612: warning: unused variable 'dc'
600_state2.c
|
207481fa53e545e12cb11a3a8b0e64ff0416beeb |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable. Fixes this GCC warning. r600_buffer.c: In function 'r600_buffer_transfer_map': r600_buffer.c:141: warning: unused variable 'rctx'
600_buffer.c
|
80ac94af726e00a7b5e92d7f549caeb0b2d8b166 |
25-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary header.
600_blit.c
|
6613605d79bc84043e74c7eefe8025c2c7c4978b |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: bring over fix from old path to new path Up to 2010-09-19: r600g: fix tiling support for ddx supplied buffers 9b146eae2521d8e5f6d3cbefa4f6f7737666313a user buffer seems to be broken... new to fix that. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_pipe.h
600_state2.c
|
3ad4486bfeea0d38f0789431e5e8fc1e6579e3aa |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix evergreen new path glxgears seems to work, had somelockup but now they seems to have vanish. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_hw_states.c
vergreen_state.c
|
49111213e483e4f7830f77f53fc4331a57a296e3 |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix reg definition Doesn't bother fixing old path code, just disable that reg. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreend.h
|
ba7e6ccc95a4e39cd15ca03573b2f6d6f8c9f539 |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix evergreen new path Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
600_state2.c
|
b43480fabb5d7c99ffd874e7dc64f2c65e1da2fe |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fixup some evergreen register definitions Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_hw_states.c
vergreend.h
|
7967b46e652eeef5e3bb1101e53b4c15683ecd12 |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix compilation after change to evergreend.h Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_hw_states.c
|
eff1af65afb479b3719d8fa2bed97b76d6dee768 |
24-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: evergreen fix for new design Signed-off-by: Jerome Glisse <jglisse@redhat.com>
vergreen_state.c
vergreend.h
600_state2.c
|
8b63ed4e6cb4ecea57e2bc622124056341844c56 |
24-Sep-2010 |
Andre Maasikas <amaasikas@gmail.com> |
r600g: break alu clause earlier we still have constants to add and next int may need also 6 slots
600_asm.c
|
11cd1612a1f0f7225ccb22c1197074c57b46aa26 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix polygon mode this fixes glean'pointSprite test.
600_hw_states.c
600_state_inlines.h
|
efa111a6cbfe03318a0e0569d4c9205a16d56857 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup sprite coord enable. this fixes piglit glsl-fs-pointcoord
600_hw_states.c
|
428b101af922fce5358af501b7a4d90697f35368 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in r700 alu emit
700_asm.c
|
59276b8541049a2d07d32fbb139fb14e21e387fc |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup VP->FP output->input routing. We need to map the TGSI semantics to each other using the hw semantic ids. this fixes glsl-kwin-blur and glsl-routing.
g_hw_states.c
600_context.h
600_hw_states.c
600_shader.c
|
e74d26d82ab6e4b21c6220d8f599f69ab2acf01e |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup tex wrapping. the clamp edge/clamp cases were reversed.
g_state_inlines.h
600_state_inlines.h
|
4e27e935ca670d0cb1748e40a46a2357d4331a6f |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop index_offset parameter to index buffer translate. r600 doesn't need this as we always have working index bias
600_draw.c
|
cf0162be138cb424f47a8fa75e4645e2319c7ddf |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix draw-elements and draw-elements-base-vertex
600_context.h
600_draw.c
600_hw_states.c
|
95e04c3d74aef91bde8653bddc4b0013b68fedd1 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: some more vertex formats
g_state_inlines.h
600_state_inlines.h
|
b7ab9ee84e4e4ff48b335c74c110d82e48bee4a5 |
24-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add some more vertex format support. adds the sscaled formats, this passes some more of the draw-vertices tests.
g_hw_states.c
g_state_inlines.h
vergreend.h
600_draw.c
600_hw_states.c
600_state_inlines.h
600d.h
|
4388087f199f020e15024c908ba840a250cf29e1 |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add vert support for 16/16 and 16/16/16 floats. makes draw-vertices-half-float pass
600_state_inlines.h
|
b360c050b60a578ce6c75cbc872dd54999b3f6c5 |
22-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: initial evergreen support in new path This doesn't work yet. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
vergreen_state.c
vergreend.h
600.h
600_pipe.h
600_state2.c
|
ce8c71817b89ae97f960ba517becc8a74431206f |
23-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Destroy the blitter. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_context.c
|
6547a82df185e1786e2313cfc4eb254f0a59f5aa |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix warnings since last commit.
600_texture.c
|
2f8453eea3b5ff8d2818517753d3990490f699b8 |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use blitter to do db->cb flushing. use the blitter + custom stage to avoid doing a whole lot of state setup by hand. This makes life a lot easier for doing this on evergreen it also keeps all the state setup in one place. We setup a custom context state at the start with a flag to denote its for the flush, when it gets generated we generate the correct state for the flush and no longer have to do it all by hand. this should also make adding texture *to* depth easier.
g_hw_states.c
600_blit.c
600_context.c
600_context.h
600_hw_states.c
600_resource.h
600_screen.h
600_texture.c
|
8078e58795052b8eb7c35fd73db06f26bec078e2 |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix depth readback on rv610 and other quirky variants. at least zreaddraw works for me here now on my rv610
600_blit.c
600_hw_states.c
|
fb5ef05dc5e57b6454bd43b9a0eca3b6e9bf27c1 |
23-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use floats instead of hex for blit vbo once I go past 0x3f80000, I can't translate hex to float in-brain anymore.
600_blit.c
|
f060ae9ab6492446dbaf4d55665822c11a72d509 |
22-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix multiple occlusion query on same id When calling query begin using same query id we need to discard previous query results. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_state2.c
|
b8835a3992edb7b01712ea83b5729ef0f6f94e4f |
22-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: disable shader rebuild optimization & account cb flush packet Shader rebuild should be more clever, we should store along each shader all the value that change shader program rather than using flags in context (ie change sequence like : change vs buffer, draw, change vs buffer, switch shader will trigger useless shader rebuild). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state2.c
|
2b1ea90342a8fb912f3a5a40ebcd7c1ec488a4bb |
22-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: disable dirty handling on texture from depth code. nothing was every dirtying the object again, the mesa-demos reflect test was just stalling. this fixes glean readPixSanity.
600_texture.c
|
d18f3accb02646a48c1f1e1e276d5d9f1dc667b3 |
22-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: make stencil readback work need to write two components to get stencil components as well
600_blit.c
|
41ef78c5af9a8b0ac80d9bd5375700a8bd0643f8 |
21-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: cleanup some of the DB blit code add cb/db flush states to the blit code. add support for the rv6xx that need special treatment. according to R6xx_7xx_3D.pdf set r700 CB_SHADER_CONTROL reg in blit code docs say dual export should be disabled for DB->CB
600_blit.c
600d.h
|
6e901e330aa7f0d186dad19bcc886bf45a76e50b |
21-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in struct member name
g_hw_states.c
600_hw_states.c
600_resource.h
600_state2.c
600_texture.c
|
ca35292a4456fec1c584d40bf9b4197fe733f609 |
22-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: occlusion query for new design Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_state2.c
|
45d10c7d5910ada45b3bf7c34f9fb98c80c72664 |
21-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix multi buffer rendering Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state2.c
|
6048be89697fe27e30ef0f45594daba4e896362c |
21-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: directly allocate bo for user buffer Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_state2.c
|
894a307a91d6437ec418800952da2ec174e092f5 |
21-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Removed debug code. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
88934273776242878dbaabdae25a7027fdeaff05 |
21-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix eg texture borders. texture border regs are indexed on evergreen.
g_hw_states.c
g_states_inc.h
|
b6ced8ee7b2c86e94fd7467d12aca5e322048ba4 |
21-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup evergreen miptree setup. eg seems to have a higher pitch aligmment requirement and uses r700 cube setup this fixes a couple of piglit tests here.
600_texture.c
|
8e8b60588b37e2d9cce7c0c04cdae73ce8206d09 |
21-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: deal with overflow of VTX/TEX CF clauses. running piglit's texrect-many caused the vtx to overflow.
600_asm.c
|
0f099f2906773690210661fb533e207626dc8e40 |
20-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: use pipe context for flushing inside map This allow to share code path btw old & new, also remove check on reference this might make things a little slower but new design doesn't use reference stuff. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_buffer.c
600_context.c
600_query.c
600_shader.c
600_state2.c
600_texture.c
adeon.h
|
ef419599d9b18de2a9077c5f0a7f02bfc11d1762 |
20-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Implemented the Z and W component write for the SCS opcode. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
57bf96b43be2abcbadc387d7b5466b772125a093 |
19-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Honour destination operand's writemask in the SCS implementation. If we are not going to write to the X or Y components of the destination vector we also don't need to prepare to compute SIN or COS. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
363dfb83f1ca7f1ab09eec30aeb89732c5ce3e02 |
20-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: move chip class to radeon common structure So texture code can be shared btw new state design & old one. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600.h
600_blit.c
600_context.c
600_hw_states.c
600_screen.c
600_screen.h
600_state.c
600_state2.c
600_texture.c
adeon.h
|
0d53dfa3c5bdac3a04187a93d916b84c1ad9e8d2 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Cleanup viewport floats.
600_hw_states.c
|
e98062673e20109e4f95b4636a4695e50ba4b8cc |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Clean up PS setup. I didn't do r600d according to the docs; I split EXPORT_MODE to be a bit more useful and obvious. Hope this is okay.
600_hw_states.c
600d.h
|
7e5173d065f0da450cf553e3e3084a0f774919a3 |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing BC_INST wrapper for evergreen
600_shader.c
|
b110ddd9a95cfcd910900154af6f58e32e419f40 |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup r700 CB_SHADER_CONTROL register. r600c emits this with a mask of each written output.
600_hw_states.c
600_states_inc.h
|
d172ef31383112ca6967341c4007eac7ac75961e |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix r700 cube map sizing. this fixes fbo-cubemap on r700.
600_texture.c
|
3a1defa5e88cc846d8f5ba73ef475af95e7bc4ae |
19-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add color/texture support for more depth formats.
g_state_inlines.h
600_state_inlines.h
600_texture.c
|
2cabbb290f07dae98fc969725028fdfde0b14b81 |
19-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add z16 to color setup
g_state_inlines.h
600_state_inlines.h
|
c2ba729321b1e36f50027382bb825f3152ecd1d1 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: "tmp" is such a bad name for a texture.
600_hw_states.c
|
07b9e22a1f587026672a00a31cebaef5aae964c6 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Fix false and true.
g_hw_states.c
600_context.c
600_draw.c
600_hw_states.c
600_query.c
600_resource.h
600_shader.c
600_state2.c
|
eb347c7ef06a39b86c6de7c93417b6b90baf0300 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Clean up some indentation and |= vs. | usage.
600_hw_states.c
|
7ee9b0b951eed3e1a553b2d8cda6b52dad39f027 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Deobfuscate and comment a few more functions in r600_hw_states.
600_hw_states.c
600d.h
|
f76b81423e2ec178edf08df787b8241dae044484 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Trivially deobfuscate r600_hw_states.
600_hw_states.c
|
5f5bf25af5c4abeeb2f47f46e9efeeb4f8353b28 |
20-Sep-2010 |
Corbin Simpson <MostAwesomeDude@gmail.com> |
r600g: Use align() instead of handrolled code.
g_hw_states.c
600_hw_states.c
600_state2.c
|
8d1ec80319bad197665f42b77786b94c3e9337f1 |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop debugging that snuck in
600_draw.c
|
040411de267bd6b0d82a621430cbbbb943fd455a |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: clean up valgrind issues on maxtargets test.
600_state.c
|
4af55364ccb50e4f19cbb59ac6f51d86f58dedba |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix fbo-drawbuffers-maxtargets we were leaking buffers since the flush code was added, it wasn't dropping references. move setting up flush to the set_framebuffer_state. clean up the flush state object. make more space in the BOs array for flushing.
600_state.c
adeon.h
|
f59fe9671f29f37b02540c21957a673f8dfedc1a |
20-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: modify index buffers for sizes the hw can't deal with. this just uses the common code from r300g now in util to do translations on r600g.
600_draw.c
|
f1cf04dbc0549d1520159be6b4811d6d37ddb5bf |
20-Sep-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: fix exports_ps to export a number not a mask.
g_hw_states.c
600_hw_states.c
|
1934ade18309d44f6e98f571674404ecb19d6364 |
19-Sep-2010 |
Henri Verbeet <hverbeet@gmail.com> |
Revert "r600g: Flush upload buffers before draws instead of before flushes." This reverts commit a1d9a58b825825723f1c5f7705f2ed3ef834038a. Flushing the upload buffers on draw is wrong, uploads aren't supposed to cause flushes in the first place. The real issue was radeon_bo_pb_map_internal() not respecting PB_USAGE_UNSYNCHRONIZED.
600_context.c
600_draw.c
|
affd46cc2bb327490fbc6a96f936dccf82d4996d |
19-Sep-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Buffer object maps imply a wait. Unless e.g. PB_USAGE_DONTBLOCK or PB_USAGE_UNSYNCHRONIZED would be specified.
600.h
600_query.c
600_texture.c
adeon.h
|
de9c8015eb30bf8a7e8571e7ca85e985173b0695 |
19-Sep-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Remove a redundant flush in r600_texture_transfer_map(). radeon_ws_bo_map() will already take care of that if needed.
600_texture.c
|
a1d9a58b825825723f1c5f7705f2ed3ef834038a |
19-Sep-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Flush upload buffers before draws instead of before flushes. If a upload buffer is used by a previous draw that's still in the CS, accessing it would need a context flush. However, doing a context flush when mapping the upload buffer would then flush/destroy the same buffer we're trying to map there. Flushing the upload buffers before a draw avoids both the CS flush and the upload buffer going away while it's being used. Note that u_upload_data() could e.g. use a pool of buffers instead of allocating new ones all the time if that turns out to be a significant issue.
600_context.c
600_draw.c
|
ed4f740127d6896506a91c8c5b9c527a971e982b |
19-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: only emit uses waterfall on r6xx hw.
600_asm.c
|
c5edfcc410bdf3dbe4f37418de8f0009746c9578 |
19-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g; add uses waterfall to asm cf for r6xx. On r6xx if an MOVA instruction is emitted we should set this bit.
600_asm.c
600_asm.h
600_shader.c
|
8861727c9190c35f7391ad848fefc6a401872007 |
18-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added support for TGSI_SEMANTIC_FACE. This makes the 'glsl1-gl_FrontFacing var (1)' piglit test pass. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
g_hw_states.c
600_hw_states.c
|
cef42f925cc8b38df741c4571676dab4bd3fd14e |
18-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unused variable.
600_draw.c
|
da3db66c08cbc74f34d2fb6067ae02ceb86007b3 |
17-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence unused variable warnings. The variables are used in code that is currently ifdef'ed out.
600_state2.c
|
694b1883ee52570abd22a4d763efcfa5314ca297 |
17-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary header.
600_state2.c
|
fd266ec62ca772a8551d2d7922d718d9d84bdf07 |
17-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: alternative command stream building from context Winsys context build a list of register block a register block is a set of consecutive register that will be emited together in the same pm4 packet (the various r600_block* are there to provide basic grouping that try to take advantage of states that are linked together) Some consecutive register are emited each in a different block, for instance the various cb[0-7]_base. At winsys context creation, the list of block is created & an index into the list of block. So to find into which block a register is in you simply use the register offset and lookup the block index. Block are grouped together into group which are the various pkt3 group of config, context, resource, Pipe state build a list of register each state want to modify, beside register value it also give a register mask so only subpart of a register can be updated by a given pipe state (the oring is in the winsys) There is no prebuild register list or define for each pipe state. Once pipe state are built they are bound to the winsys context. Each of this functions will go through the list of register and will find into which block each reg falls and will update the value of the block with proper masking (vs/ps resource/constant are specialized variant with somewhat limited capabilities). Each block modified by r600_context_pipe_state_set* is marked as dirty and we update a count of dwords needed to emit all dirty state so far. r600_context_pipe_state_set* should be call only when pipe context change some of the state (thus when pipe bind state or set state) Then to draw primitive you make a call to r600_context_draw void r600_context_draw(struct r600_context *ctx, struct r600_draw *draw) It will check if there is enough dwords in current cs buffer and if not will flush. Once there is enough room it will copy packet from dirty block and then add the draw packet3 to initiate the draw. The flush will send the current cs, reset the count of dwords to 0 and remark all states that are enabled as dirty and recompute the number of dwords needed to send the current context. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
600.h
600_resource.c
600_resource.h
600_screen.c
600_state2.c
600_texture.c
600d.h
|
d80bed15660e784a405c467be1ded8266d8ffc48 |
17-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed the shift in S_02880C_KILL_ENABLE. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
vergreend.h
600d.h
|
54d688f1484292278535c8ea20bde4a5e8075c7f |
17-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Enable PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_screen.c
|
70a85c39a9cc907902b41c934a17b542865b2ca7 |
17-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Only set PA_SC_EDGERULE on rv770 and greater. This is what xf86-video-ati and r600c do. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_hw_states.c
|
5f97d0a218f3509f361504be06f6b307e1b6bb89 |
17-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added DB_SHADER_CONTROL defines. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
g_hw_states.c
vergreend.h
600_hw_states.c
600d.h
|
5edb778c1b78ca113de56521dc49f65561dc3949 |
16-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Formatting fixes. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_screen.c
|
0d76bb5d4c5c867155f7fb381c46018e1560b790 |
17-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add upload manager support. this add support for the upload manager for uploading user vbo/index buffers. this provides a considerable speedup in q3 type games.
600_buffer.c
600_context.c
600_context.h
600_draw.c
600_resource.h
600_state.c
|
da96313afe3cff66d8ae0c9675a6299b3d7510f9 |
17-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add support for kernel bo this moves to using a pb bufmgr instead of kernel bos directly.
600_context.c
adeon.h
|
7c1fcc41be15b6d648f84c8c1870a3a00575a48f |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: move constant buffer creation behind winsys abstraction. this paves the way for moving to pb bufmgrs now.
600_blit.c
600_buffer.c
600_query.c
600_resource.h
600_screen.c
600_shader.c
600_texture.c
adeon.h
|
f70f79f6f6027bdf2f7de09bb39e12a24420f338 |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: attempt to abstract kernel bos from pipe driver. introduce an abstraction layer between kernel bos and the winsys BOs. this is to allow plugging in pb manager with minimal disruption to pipe driver.
g_hw_states.c
600_blit.c
600_buffer.c
600_context.h
600_hw_states.c
600_query.c
600_resource.h
600_shader.c
600_state.c
600_texture.c
adeon.h
|
ec9d838aa56d2c4bc5649d7c26ac61abb6c4b9bb |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: hide radeon_ctx inside winsys. no need for this info to be exported to pipe driver.
600_blit.c
600_context.c
600_context.h
600_draw.c
600_query.c
adeon.h
|
df62338c491f2cace1a48f99de78e83b5edd82fd |
10-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Use clamped math for RCP and RSQ. This is likely only correct for OpenGL and not other state trackers. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
2108caac25b375cfa6943fcc6a6386b9a8d4655e |
10-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed a bo leak in r600_blit_state_ps_shader(). We would leak the newly created bo if it cannot be mapped. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_blit.c
|
ef2808f56fbf31c09b8bc61776a711e31e0e7ee2 |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix texture bos and avoid doing depth blit on evergreen since the depth blit code is hardcoded hex yay \o/
g_hw_states.c
600_texture.c
|
9a589961a281f77b938a4b5bf80409326743f147 |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup texture state on evergreen. This whole set of state just seems wrong, another cut-n-paste nightmare.
g_hw_states.c
600_context.h
600_hw_states.c
600_texture.c
|
1a20aae581dae3d8d733f7f18414737a6924e981 |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add vgt dma src defines
600_draw.c
600d.h
|
3ead528bbbbc59aa22e951c10cdeb1f7b54de87f |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use index min/max + index buffer offset. more prep work for fixing up buffer handling
g_hw_states.c
600_context.h
600_draw.c
600_hw_states.c
|
05433f20b6547e105d172bd586d3b6ce1b9d0f97 |
16-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: pull r600_draw struct out into header we need this for future buffer rework, it also makes the vtbl easier
g_hw_states.c
600_context.h
600_draw.c
600_hw_states.c
|
e0b6df4fcce0964ea7930efeb40cb487b4c53337 |
15-Sep-2010 |
John Doe <glisse@localhost.localdomain> |
r600g: misc cleanup Avoid using r600_screen structure to get ptr to radeon winsys structure. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
g_asm.c
600_asm.c
600_asm.h
600_shader.c
600_shader.h
600_texture.c
700_asm.c
|
efab1c86429d078300dd8b2125f97bf922713222 |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence unused variable warning. The code that uses dname is currently ifdef'ed out.
600_context.c
|
1ce4f868031a31da759e3e687d7e3da237b4725e |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warning.
600_context.c
|
a712e193a3f58f4f40402c34adf16de255afa760 |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warning.
600_shader.c
|
76c05761014ac0c4b02a38a09fd286676e941e58 |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warning.
600_hw_states.c
|
9aee4be5e010725f3f06a5638532752c400c2f0f |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warning.
g_hw_states.c
|
7290c5982cc60f3a9658512a99db6cc08a29e77f |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Silence uninitialized variable warning.
600_asm.c
|
6a8a5061580f41185cf0fb4cae89e78d67810b7b |
15-Sep-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary headers.
600_context.c
600_state.c
|
a508d2dddcc67d0f92cc36b9ed6f36a9bbfc579d |
05-Sep-2010 |
Luca Barbieri <luca@luca-barbieri.com> |
gallium: introduce get_shader_param (ALL DRIVERS CHANGED) (v3) Changes in v3: - Also change trace, which I forgot about Changes in v2: - No longer adds tessellation shaders Currently each shader cap has FS and VS versions. However, we want a version of them for geometry, tessellation control, and tessellation evaluation shaders, and want to be able to easily query a given cap type for a given shader stage. Since having 5 duplicates of each shader cap is unmanageable, add a new get_shader_param function that takes both a shader cap from a new enum and a shader stage. Drivers with non-unified shaders will first switch on the shader and, within each case, switch on the cap. Drivers with unified shaders instead first check whether the shader is supported, and then switch on the cap. MAX_CONST_BUFFERS is now per-stage. The geometry shader cap is removed in favor of checking whether the limit of geometry shader instructions is greater than 0, which is also used for tessellation shaders. WARNING: all drivers changed and compiled but only nvfx tested
600_screen.c
|
61c2861b4effed6b5e50e4d4089ede9768842b2b |
13-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen fixup dsa state for running query. evergreen is always the same as r700 here.
g_hw_states.c
vergreend.h
|
b5fcf0c8e07e666523b007fab1d0fc18c2c89241 |
28-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
pb: add void * for flush ctx to mapping functions If the buffer we are attempting to map is referenced by the unsubmitted command stream for this context, we need to flush the command stream, however to do that we need to be able to access the context at the lowest level map function, currently we set the buffer in the toplevel map, but this racy between context. (we probably have a lot more issues than that.) I'll look into a proper solution as suggested by jrfonseca when I get some time.
600_buffer.c
|
33b1d14913f8a9f91bf2f2962282502590ed51c1 |
11-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Undo bo placement change. This reverts a part of e795ca8f3175fa6fd97b6b2ef2775e3f8803012a that causes artefacts and a performance drop. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_hw_states.c
|
ec2e0fd1e976ce09453ff94dce9d90c970da2069 |
09-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed a bo reference leak in the draw module. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_draw.c
|
ac2bddb9f2c40effb16db321db0177decea81a92 |
09-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Fixed a bo leak in r600_texture_from_handle(). We would leak bo if the argument check failed. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_texture.c
|
ae23d425c2aae652f4fc61ee8dee721e8e25509e |
09-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Don't leave stale references in query_list when we cannot create bo. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_query.c
|
96a4edb8ccb4bc1125918b972e8b3a080f496d0d |
08-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Implemented the y component write for the LOG opcode. This makes the 'vp1-LOG test' piglit test work. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
600_shader.c
|
fcae8ca57512f84c51b7445456aab7ec92a21254 |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup state calculations for picking states. for evergreen I ended up using a non-contig array of states, but this code needs a bit of fixing up to deal with that.
adeon.h
|
f61b241ebabf2d8db9b96f7860afe79bec980df7 |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup CB state numbering header
g_hw_states.c
g_states_inc.h
600_states_inc.h
|
cc1b3b1013d1fb1f1f25ade20a68d8bdfe14f5f7 |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix warning in r600 pipe driver
600_asm.c
600_hw_states.c
600_state.c
|
ad5ada4372356583599a84f50a43ca688165e18f |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: evergreen CBs are more sane to support with a single state
g_hw_states.c
|
50526e094f4c66957c7f74c190c35903bc82fb62 |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial evergreen support adds shader opcodes + assembler support (except ARL) uses constant buffers add interp instructions in fragment shader adds all evergreen hw states adds evergreen pm4 support. this runs gears for me on my evergreen
akefile
g_asm.c
g_hw_states.c
g_sq.h
g_state_inlines.h
g_states_inc.h
vergreend.h
600_asm.c
600_asm.h
600_context.c
600_context.h
600_hw_states.c
600_opcodes.h
600_screen.c
600_shader.c
600_sq.h
600_state.c
600_texture.c
700_asm.c
adeon.h
|
42da02743358fd4b212f47d2727340dcd0578b5a |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: align flushing of cb/db with DDX/r600c. the DDX and r600c both flush cb/db after the draw is emitted, as long as they do that, r600g can't be different, as it races. We end up with r600g flush, set CB, DDX set CB, flush. This was causing misrendering on my evergreen, where sometimes the drawing would go to an old CB.
600_context.h
600_state.c
adeon.h
|
e795ca8f3175fa6fd97b6b2ef2775e3f8803012a |
10-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: don't need 3 bos here. the code should reloc correctly a single BO 3 times.
600_hw_states.c
|
bf346f065c65e15e5757d5b1a14dbc6638051860 |
08-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial bank swizzle support. this is ported from r600c mostly, bank swizzling is real messy and I don't think I got enough sleep last night to fully understand it.
600_asm.c
600_asm.h
600_sq.h
700_asm.c
|
1e28dd4ebe73f85cdc38a6bdaeef23fd10223cf3 |
07-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added missing r600_bc_add_literal() calls to XPD implementation. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
460c5304aba646143938b76d536a6fc13a302ca8 |
07-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added preliminary support for the LOG opcode. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
42c966bc496d4049d98eb1d45dd7bb0b55fa41bd |
07-Sep-2010 |
Tilman Sauerbeck <tilman@code-monkey.de> |
r600g: Added missing abs-ification to RSQ. This makes the 'fp1-RSQ test 2' piglit test work. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
a3a94554f5a12f0626d9712ddcdc81b1e21d36c2 |
08-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: split opcodes out and add wrapper around usage. This splits the r600 opcodes out of the sq file and adds a wrapper so we can convert to evergreen opcodes later without touching these functions too much.
600_asm.c
600_opcodes.h
600_shader.c
600_sq.h
|
d42efb9e8df6ef872ab4f142e3daf1b6cb9eff11 |
08-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add support for constants in memory buffers. DX9 constants were in the constant file, and evergreen no longer support cfile. r600/700 can also use constants in memory buffers, so add the code (disabled for now) to enable that as precursor for evergreen.
600_asm.c
600_asm.h
600_buffer.c
600_context.h
600_hw_states.c
600_screen.c
600_screen.h
600_shader.c
600_shader.h
600_state.c
600_states_inc.h
adeon.h
|
9ef1c51be16ea360481cf9f82ebb1e3eb01efb18 |
08-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: abstract the hw states out behind a vtbl. this is step one towards evergreen support, it lets us plug in whole new hw level states.
akefile
600_context.c
600_context.h
600_draw.c
600_hw_states.c
600_shader.c
600_state.c
|
35e01b79cb576503fc6c7cd5759b379c26ecb5ee |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add error print for no literals for r700s as well
700_asm.c
|
2caf6f5e84df97f71856574f1e2a8240fb18d9b6 |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup r700 assembler for clamp/relative addressing
700_asm.c
|
48cdad70d9404555c9bb545d9e6408c6aef707b0 |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add script to generate header file with offsets into state objects. This was inherently fragile as any changes to r600_states.h would also need manual updating of all of the bits in radeon.h. Just add a simple python script to do the conversion, its not hooked up to make at all. This also will make adding evergreen a bit easier.
600_states_inc.h
adeon.h
|
5b82777311965d26e534bd522afb0f679622d504 |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix up surface references We end up referencing the new surf and derefing the old surface which is a copy of the pointer to the new surf. So just bump the ref count directly.
600_state.c
|
3a672785df247e6f8ce95616166b74d4fd10ede0 |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: search for sampler views in context on removal. Need to remove from context as well.
600_state.c
|
6ec0fff822f66170f190515fc5e718142f6a5e28 |
06-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing printf operand
600_asm.c
|
50c1b6f2e845c067ac91493c0f93caca794521dd |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix segfault in state after rework probably can improve this a bit.
600_state.c
|
191bfc5c3be219e2389fec004a51ea3239f434c8 |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: refactor sample states into a reusable struct. I will not cut-n-paste. I will not cut-n-paste. I will not cut-n-paste.
600_context.h
600_state.c
|
9ef228ee2d74a32e01ac0fcf0776d92d904369f4 |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: reduce size of r600 context structure to !insane Its now about 7.8k, and might actually fit in a cache.
600_context.c
600_context.h
|
b5fcf8274916afdf29aca5e8db7611687b03abe4 |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add texture border state. Okay I finally wrapped my head around what r600_context_state is meant to be, maybe I should just rename all the structs so that have distinct names. I've no idea however why 16 is a good magic number for R600_MAX_RSTATE.
600_context.h
600_state.c
|
ce7077423fc9ea003606dd28ca87311644b7e5c2 |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: deref old driver states for set entry points.
600_state.c
|
4ca207b174c3500c13e8a994f2ff2bc5c94fb18f |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop r600_bind_state. This was another ugly function that really wasn't needed. The 3 calls to it from the gallium api were shorter than it, and all the calls from the set_ functions were pointless.
600_state.c
|
49b4f5259bdbfce4f84a6997ccb36376f953068c |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: kill r600_context_state function having some sort of locality of code really matters, just create and setup state at time. Not sure if this is just further polishing of a bad thing, but at least it makes it more readable.
600_context.h
600_state.c
|
1bd8493a0b0959c44592b11f8e90ba0c040705b1 |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: move lots of state inline helpers to separate header. this gets them out of sight of the main codeflow.
600_state.c
600_state_inlines.h
|
883cbbd99cd44dd5d2729fcddddafddcc435affc |
03-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: drop magic numbers in depth state. this also fixes occulsion queries.
600_state.c
600d.h
|
f8d11b2e8ebaab2845080900ff4a2068f9a20b5f |
02-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: force unbind of previously bind sampler/sampler_view Previously bind sampler/sampler_view can be converted and endup overwritting the current state we want to schedule. Example : bind texA texB to sampler_view[0] & sampler_view[1], render, bind texB to sampler_view[0] render. Now state associated to texB are set to configure sampler_view slot 0, but as we don't unbind sampler_view[1] still point to texB state so we end up with sampler_view[1] overwritting sampler_view[0], which gives wrong rendering if next rendering bind texA to sampler_view[0], it will endup as texB is bound to sampler_view[0]. If you are not confuse at that point give me a call i will be buying you beer. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
|
e73c5501b2fe20290d1b691c85a5d82ac3a0431c |
02-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix memory/bo leak Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_context.h
600_draw.c
|
5d5f693cefe452bd8bd7e45f8b5d7ed991ae5115 |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix thinko in shadow code. spotted by taiu on irc
600_shader.c
|
76d0541e79d4fe2ffcb25b17f9dd540fafc14ba2 |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix logicop, the 3d ROP is the 2D rop shifted twice.
600_state.c
|
e8ff0f63b6f078b17989e42dd05c9b69729b341b |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix depth texture tests
600_texture.c
|
7299023c2aa5378b2d54663a53cb2fa4e743fa73 |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing vertex fetch formats to the translation table. fixes at least 2 more piglits.
600_state_inlines.h
600d.h
|
31b84acbd2ae2dc7555844c5a2eead932b8759a7 |
02-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix binding of same texture to several target slot One can bind same texture or sampler to different slot, each slot needs it own state. The solution implemented here is not exactly beautifull or optimal need to think to somethings better. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.h
600_state.c
|
36192b772eda190c4d78e8a4979c4e3c6377ae61 |
02-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix incorrect state naming in pipe_sampler vs pipe_sampler_view fixes problems in valgrind with uninitialised values.
600_state.c
|
ffcb443cd7be563071725885b87085bd5701d980 |
02-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: silence compiler warning Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
|
67234b4b42a8285a9b14da48dd113cbe2ee871fd |
02-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: refix db/cb state Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_context.h
600_draw.c
600_shader.c
600_state.c
600_texture.c
|
c70459a1b9f718ae0748070cbf8c7c623d8840ac |
01-Sep-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: fix up default state differences between r6xx and r7xx Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
600_context.c
|
66e4cb1cd5a55402606a09417349d2be8b009e89 |
30-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: avoid dynamic allocation of states Make state statically allocated, this kills a bunch of code and avoid intensive use of malloc/free. There is still a lot of useless duplicate function wrapping that can be kill. This doesn't improve yet performance, needs to avoid memcpy states in radeon_ctx_set_draw and to avoid rebuilding vs_resources, dsa, scissor, cb_cntl, ... states at each draw command. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.c
600_context.h
600_draw.c
600_query.c
600_resource.h
600_shader.c
600_state.c
600_texture.c
adeon.h
|
15ce70252c5357081a61f3494261c7e343174301 |
01-Sep-2010 |
Jerome Glisse <jglisse@redhat.com> |
Revert "Revert "r600g: precompute some of the hw state"" This reverts commit 1fa7245c348cb7aced81f1672140f64cb6450e2f. Conflicts: src/gallium/drivers/r600/r600_state.c
600_blit.c
600_context.h
600_resource.h
600_screen.h
600_state.c
600_texture.c
adeon.h
|
1d7b4af81781512b5bc5d43249529441d60ecebe |
01-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: correct cb/zb offset emits. This fixes fbo-3d and fbo-cubemap
600_state.c
|
1fa7245c348cb7aced81f1672140f64cb6450e2f |
01-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
Revert "r600g: precompute some of the hw state" This reverts commit de0b76cab22caa9fc7260f80acb8f151ccced6c5, its pre-computes the texture state wrong, you can't just use an array of levels, since you can have FBOs to depth texture slices inside a level as well it would get really messy quickly. Probably need to split commits like this up into pieces for each piece of state, so we can revert bits easier in case of regressions. This also break 5 piglit tests, and valgrind starts to warn about invalid read/writes after this.
600_blit.c
600_context.h
600_resource.h
600_screen.h
600_state.c
600_texture.c
adeon.h
|
d7e2509692d3aa8afb8d2236a4f28b6ab502ec62 |
01-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo causing segfault. fixes warning that r600_blit.c: In function ‘r600_resource_copy_region’: r600_blit.c:136: warning: passing argument 1 of ‘util_resource_copy_region’ from incompatible pointer type and also 7 more piglit tests.
600_blit.c
|
bea5f559a6f52e8fb7c32ee8e9f9c5f04c05b582 |
01-Sep-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix glean texCube and shadows. add cube and shadow support to the texture code.
600_shader.c
|
b87b6e5bf798fcfa486e8082a09b4425a40cf3c4 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix up depth write swizzles. For some reason r600c, emits extra instructions in the FP to do the depth write output swizzle, I'm not sure this is required, so here I'm doing it in the exports. this fixes the mesa trivial demos tri-depthwrite and tri-depthwrite2, it doesn't fix the glsl1 gl_FragDepth writing test however.
600_shader.c
|
ad202678fc4859b51a9198575a886707f57ad05b |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix fp-fragment-position test.
600_shader.c
|
580781babe99bbfd0181b911e1e53e94728faa04 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in last commit
600_shader.c
|
5d66a8606d68caf0fb4754c144c5fb7d87fbf7df |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix position input to fragment shader. this fixes a few if the fs shader tests, 10 more piglits
600_shader.c
|
4e61f085d04c5d182989c6cb388c375b007e6b76 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: remove unneeded function call from scs
600_shader.c
|
d3fa92584b109bf59dce32501eec73f8de74f42b |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: make LIT work properly this is a bit of a workaround, something is wrong with the literal emits here so we just use the trig copy function to copy the immd to a temp at start of op. fix VP/FP LIT tests
600_shader.c
|
be7816f2b7f0b064a47fb3f101477ad5dba74017 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup trig functions when input is a literal So as the trig functions used up the literal spots for the PI work, if the arg0 was an immediate we'd hit failure, so copy the literal before starting. add some tracking of max temp used to avoid trashing temp regs. 5 more piglits, fp1 COS,SCS,SIN tests
600_shader.c
|
ee0153f891bb75ee14db579e6628d592032d6801 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: make sure LIT splits constants
600_shader.c
|
9bbc54a10d225679a180a085f7ca5bb88ee2bd15 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix constant splitting constant splitting was broken for multi-constant cases, fixes fp1 CMP+MAD, vp1 CMP.
600_shader.c
|
85e401d8bfd80450a31eac234e13008e33e64227 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix LIT tests
600_shader.c
|
5ea238b7991331c854e66a16911d616d36965dc9 |
31-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add missing literals Also add an error if we hit this problem again, we need to do this better possibly tying the literal addition to the last flag. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_asm.c
600_shader.c
|
de0b76cab22caa9fc7260f80acb8f151ccced6c5 |
30-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: precompute some of the hw state Idea is to build hw state at pipe state creation and reuse them while keeping a non PM4 packet interface btw winsys & pipe driver. This commit also force rebuild of pm4 packet on each call to radeon_state_pm4 which in turn slow down everythings, this will be addressed. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.h
600_resource.h
600_screen.h
600_state.c
600_texture.c
adeon.h
|
0bba7796a33d3c47295a9676dc82984da1615fe5 |
28-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix depth buffer decompression after states rework Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
|
69c30f5d6d429be4f7e211867984dab1a33da79c |
26-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup states generation in winsys. The current states code had an unhealthy relationship between that had to somehow magically align themselves, editing either place meant renumbering all states after the one you were on, and it was pretty unapproachable code. This replaces the huge types structures with a simple type + sub type struct, which is keyed on an stype enum in radeon.h. Each stype can have a per-shader type subclassing (4 types supported, PS/VS/GS/FS), and also has a number of states per-subtype. So you have 256 constants per 4 shaders per one CONSTANT stype. The interface from the driver is changed to pass in the tuple, (stype, id, shader_type), and we look for this. If radeon_state_shader ever shows up on profile, it could use a hashtable based on stype/shader_type to speed things up. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
600_context.c
600_draw.c
600_query.c
600_shader.c
600_state.c
600_texture.c
adeon.h
|
57eecbbf6c57fbf5a46b8b81d8d4fbb6bd78ea12 |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add DST opcode support.
600_shader.c
|
92f5c7a597aaf098f4e6b4793e4b89ae539e328a |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add SCS support.
600_shader.c
|
db92a03aacc0c0e13377af4f54ef5303400b4810 |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix warning introduced by last commit.
600_shader.c
|
47d5a19df1e7760c4f5f0e340bfc56355c2e428b |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial relative support to assembler passes another ~20 piglits. /me starts to run out low hanging fruit around now.
600_asm.c
600_asm.h
600_shader.c
600_sq.h
|
4502b17901ad491e0598ee59a12d372c008ae03b |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add KILP support passes glsl1-discard tests
600_shader.c
600_shader.h
600_state.c
|
cb08b9fa84bf432dcca2e685daadd2df651b3025 |
30-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix SSG and op3 neg writing 8 more piglits, mainly the two SSG tests.
600_asm.c
600_shader.c
|
09547e1bcee7df3444dd8682770d1b31da1a5822 |
27-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g : add basic loop support. Adds BGNLOOP, BRK, CONT, ENDLOOP support, ported from r600c. 17 piglits more on r300g.tests.
600_asm.c
600_asm.h
600_shader.c
|
cd4bd4fb53f82361480f388923ef9e2fa7379d68 |
29-Aug-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: use the values from the correct literals Created an array for literals as we should not always use the last declared literal. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
e77b1e777d585254db62e872a74e23351bb36f85 |
29-Aug-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: added literals where needed for POW instruction Fixes size calculation for the bytecode buffer. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_shader.c
|
48d8814c03cc7f270985abe7efdaec1f18d120aa |
27-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix vbo size Silence the kernel, vbo size is size - 1. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_draw.c
|
2184f3ec3059eaf8a9a2b04c995162543f000862 |
27-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
Revert "r600g: simplify states" This reverts commit bd25e23bf3740f59ce8859848c715daeb9e9821f. Apart from introducing a lot of hex magic numbers and being highly impenetable code, it causes lots of lockups on an average piglit run that always runs without lockups. Always run piglit before/after doing big things like this.
600_blit.c
600_context.c
600_draw.c
600_query.c
600_shader.c
600_state.c
600_texture.c
adeon.h
|
a03d456f5a41926e39194de70b2d50776e64b8a2 |
25-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial if/else/endif support this adds handling for some more CF instructions and conditions also adds parameter for stack size emission These seem to pass on VS with the stack size hack but not on FS, TODO: fix FS + stack size calcs
600_asm.c
600_asm.h
600_shader.c
600_sq.h
|
d8fb13bae30b6ff214c5d5158b9bcaf430f56b43 |
25-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: optimise op2 and swapped op2 emission. this makes op2 emission smaller, since it skips instructions that don't write to the dst. not sure if this could have unwanted side effects but try it and see.
600_shader.c
|
36d91be75ea9b79878fdf4b789ea022d781e87f4 |
24-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add exp support in theory. though it isn't passing the test, and this instruction is pure bonghits.
600_shader.c
|
e57437ccd6814ffd4534fd46512afeb0b9e06eed |
24-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add DPH support.
600_shader.c
|
bd25e23bf3740f59ce8859848c715daeb9e9821f |
24-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: simplify states Directly build PM4 packet, avoid using malloc (no states are bigger than 128 dwords), remove unecessary informations, remove pm4 building in favor of prebuild pm4 packet. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.c
600_draw.c
600_query.c
600_shader.c
600_state.c
600_texture.c
adeon.h
|
547e8675583053f15dc62a073b52f4722e7d0f5f |
24-Aug-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Add support for PIPE_FORMAT_R32_FLOAT.
600_state_inlines.h
|
0e6a02d29915db2ca460206656ab517ddaf0b455 |
24-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add XPD support ported from r600c.
600_shader.c
|
87f44d5723ebb3a2efe0dddc1a6edb6536adea4d |
24-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add CMP support. ported from r600c, fixes fp-cmp, glsl1-sqrt*
600_shader.c
|
6fb39f0fa2cad668fd6c49d0b739c33954a6946c |
23-Aug-2010 |
Henri Verbeet <hverbeet@gmail.com> |
r600g: Add support for PIPE_CAP_DEPTH_CLAMP.
600_screen.c
600_state.c
|
bcf7f66a934ebd9c91da90d6e1f9b169c33c746c |
23-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: export one component per pixel + r7xx uncompression shader We need to always at least export one component (wether it's depth or color. Add valid r7xx shader program for depth decompression. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_screen.c
600_screen.h
600_shader.c
600_state.c
|
d843bbfd3f92d5afea665c3ff16bcca0628f2e7b |
22-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix DB decompression Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_resource.h
600_screen.h
600_state.c
600_state_inlines.h
600_texture.c
|
ed99c28d12579bb8ee79eb9cfa55452785be7b6e |
22-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: depth buffer likely needs decompression when used as texture Before using depth buffer as texture, it needs to be decompressed (tile pattern of db are different from one used for colorbuffer like texture) Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.h
600_draw.c
600_resource.h
600_screen.h
600_shader.c
600_state.c
600_texture.c
|
36efb86c0570d86d8dfce87fd2416125e0e91b40 |
22-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: partialy fix texturing from depth buffer + initial support for untiling Partialy fix texturing from depth buffer, depth buffer is tiled following different tile organisation that color buffer. This properly set the tile type & array mode field of texture sampler when sampling from db resource. Add initial support to untiling buffer when transfering them, it's kind of broken by corruption the vertex buffer of previous draw. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.c
600_resource.h
600_screen.h
600_shader.c
600_state.c
600_texture.c
|
a4b10a56145ea253def4cf958410d770d0640bc9 |
20-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add POW instruction Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
921c987c6f43b4d63a98b61013d43bac97baff21 |
20-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: cleanup definition, fix segfault when no valid pixel shader Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
600_sq.h
600_state.c
|
63d010115c7972d854e0583f8f74e8d0c3407fcd |
17-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add occlusion query support Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_context.c
600_context.h
600_query.c
600_state.c
adeon.h
|
ae0ef6f69f351cacdc7eaa9b21097a7c1b414e44 |
18-Aug-2010 |
Luca Barbieri <luca@luca-barbieri.com> |
gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT too Searched for them with: git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D' Behavior hasn't been changed.
600_state.c
600_texture.c
|
076c53879b90855ecf38602584f22e4ab6db7569 |
19-Aug-2010 |
Alex Deucher <alexdeucher@gmail.com> |
r600g: update comments about ALU src operands
600_shader.c
600_sq.h
|
88f5976484842671ecb2cefcfa91838a43032359 |
19-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add sin/cos This pretty much ports the code from r600c, however it doesn't always seem to work quite perfectly, but I can't find anything in this code that is wrong. I'm guessing either literal input or constants aren't working always.
600_shader.c
600_sq.h
|
098064e8cb6950f60c51a44e280cb335f07920b1 |
19-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add a chiprev type for r600/r700/evergreen instead of using family
600_asm.c
600_asm.h
|
0d48925a56ad4fb253386110b545abda82a25464 |
19-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add SSG, SEQ, SGT and SNE
600_shader.c
600_sq.h
|
3af87162cd0d3107cb2af0812ce4e4680b177725 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add FRC, FLR, DDX and DDY the first two are straight op2's and the DDX/DDY are taken from r600c.
600_shader.c
|
be288c3505429811adc2743c1be2c1971f4483a2 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add SGE and SLE opcodes fixes fp-set-01 and glsl-fs-step
600_shader.c
|
d01c0025e81e713d99f4de9ed7f4cdd12a1d08b5 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add TXB support fixes biased texturing tests
600_shader.c
|
b777db32541b360516203865a0fa41f4b8cebf7c |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix TXP vs TEX in shader. Don't do perspective for TEX, and also copy input to a temporary for TEX also add tex opcode names
600_shader.c
600d.h
|
4558b634556f42867449a6e60d4badc72099f10d |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add two simple tgsi opcodes. makes glsl-fs-log2 and glsl1-integer division with uniform var pass
600_shader.c
|
1147814365c78ed20ba71e3f4e0bfe22f9960234 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix point size fixes piglit pointAtten and point-sprite tests
600_state.c
|
03c59e4ab16b0ee362f189b549bd13491dba71e4 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup pitch alignment like r600c. This still needs work, passes tex3d, fbo-scissor-bitmap, scissor-bitmap
600_state.c
600_texture.c
|
edb465e9bb1b45a6db5aca85a002c0f4958deff0 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix height calcs for miptree h needs to be rounded up, this probably needs revisiting when we get to tiling etc. fixes fbo-generatemipmap-npot
600_texture.c
|
1d18739290fa667dc81d6780d695a09f8c1cde99 |
18-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: emit texture level offset in CB/DB setup. 8 more piglit tests pass, fbo-clearmipmap, fbo-copyteximage, fbo-generatemipmap, fbo-generatemipmap-nonsquare, fbo-generatemipmap-scissor, fbo-generatemipmap-viewport, gen-teximage, gen-texsubimage
600_state.c
|
608f749ec3fc655d3e67e572fa2e256a42c16878 |
17-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix fake pixel output Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
3e58007892cb2e89cb979ab172b7160adc84a44d |
17-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add user clip plane support. Apart from the fact that the radeon.h/r600_states.h editing is a nightmare, this wasn't so bad. passes piglit user-clip test now also trivial tests. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_blit.c
600_context.h
600_state.c
adeon.h
|
4985ce1755c5d6f4fa6281150ae0bf7df594146f |
13-Aug-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: update shader caps Sent on ML by Владимир. These values are what fglrx returns.
600_screen.c
|
f2804e70623c4c71e5758a24d695f8d6b74bf6d7 |
13-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix memory leaks running gears. I noticed gears memory usage was heading skywards, some r600 "states" aren't properly refcounted, and the ctx->state is never freed.
600_state.c
|
582129ced65e0a71478a8e75e00397037c4826d8 |
12-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix typo in stencil translate. fixes piglit stencil-twoside and stencil-wrap
600_state_inlines.h
|
13bc2098ca21be3d11176e558ca71e29e41a239f |
12-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix provoking-vertex piglit test.
600_state.c
|
e2df0a8b234efde140b340c2c9b67b06b789b758 |
12-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: improve texture format checker. This takes the r300g texture format checker and fixes it up for r600g, it passes glean texSwizzle, pixelformats, and texture_srgb tests, however I think it L8S8_SRGB is broken as is L8_SRGB, need to investigate. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_context.h
600_state.c
600_state_inlines.h
600_texture.c
|
481b65abaedb271d0da24c75b8c60f7bcf6d8ce9 |
11-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: accept empty frag prog shader Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_shader.c
600_state.c
|
1bb0427a856ffa3fea1b177ea5b0395a00de3833 |
11-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add src negation support Should fix few glBitmap cases. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
457378e031ffb89a2011604c7798a6f5f2142207 |
11-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add point/sprite rendering support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
600_state.c
600d.h
|
72f8edfc0bb8613ac7c0decfd4199e83c8d8a737 |
10-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: avoid reemiting literal, avoid scheduling empty cs Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_asm.h
600_context.c
adeon.h
|
95fb0bf58dde0b81ce601d3f0477fd1b2a5a28d4 |
09-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix r600 context structure, avoid segfault when no scissor Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.h
600_state.c
|
2cad5350f9691d4d2c18a637548735925fa0ee97 |
09-Aug-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix some warnings
600_asm.c
600_draw.c
600_screen.h
|
00963589b4d92460e3ae2c1557a5d816b5c67a6d |
09-Aug-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: fill out some missing caps and sort them The shader caps need additional corrections. (based on a patch from netkas at Phoronix)
600_screen.c
|
d9f72b9f909b32ff0adacf939c75eb2924ed133b |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add PA_CL_CLIP_CNTL definition Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600d.h
|
32251c34f06ef91759fa75271ce724a06483cc42 |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix rendering, only enable target we write too Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
|
b474478f206c6d81af78696d3d5ce156d4d413d7 |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: really fix multi target support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_shader.c
600_shader.h
600_state.c
|
c3ad060488ffd98f1c6dc9127b46324c5201f434 |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: finish multi target rendering support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_shader.c
600_shader.h
600_state.c
adeon.h
|
27041d7cb3faeaed483538a228573466363ec1c7 |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix color format, indentation, defines Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
600_state_inlines.h
600d.h
|
6e6103004c9c737297b842a4aff298da920e7c33 |
06-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
Revert "r600g: don't use dynamic state allocation for states" This reverts commit 9c949d4a4dd43b7889e13bdf683bcf211f049ced. Conflicts: src/gallium/drivers/r600/r600_context.h src/gallium/drivers/r600/r600_draw.c src/gallium/drivers/r600/r600_shader.c src/gallium/drivers/r600/r600_state.c
600_context.c
600_context.h
600_draw.c
600_shader.c
600_state.c
adeon.h
|
5f6ab5e259de826bb3795d90fdb0235c8997acb9 |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: start to fix up multiple targets. fixup exports from pixel shader for multi-cbs + depth buffer writing. Still crashes GPU running any of the multi-buffer or depth writing
600_context.h
600_shader.c
600_state.c
|
0a2a6c75bffc56d8dfde9b8a46c40222825630ea |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add SRGB support. This enables GL2.1 and passes glean's texture_srgb test.
600_state.c
600_state_inlines.h
600d.h
|
fc47cb9d710c046d34e8238337e009d7b76a3207 |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fixup z format translations. this enables GL_EXT_packed_depth_stencil. fbo-d24s8 passes
600_state.c
600_state_inlines.h
|
b8de7788a4b20c702b06402e2e6eed60467e2522 |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix targetmask to work correctly. At least this seems to fix the glean maskedClear test.
600_state.c
|
2b9036476511edd549d1c2cea6044eef4652a19c |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: improve supported format selection. This fixes fbo-readpixels piglit test, and adds support for swapping the formats. Not all formats are correct yet I don't think. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_draw.c
600_helper.c
600_screen.c
600_state.c
600_state_inlines.h
600d.h
|
121a625c1651ddc181e374ebdf16bc5c46f6eaa9 |
06-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add bo wait after map.
600_texture.c
|
9c949d4a4dd43b7889e13bdf683bcf211f049ced |
04-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: don't use dynamic state allocation for states Simplify state handly by avoiding state allocation. Next step is to allocate once for all context packet buffer and then avoid rebuilding pm4 packet each time (through use of combined crc) this would also avoid number of memcpy. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_context.h
600_draw.c
600_shader.c
600_state.c
adeon.h
|
12dac449fba5fe17087fd48ac959a5388875b2d3 |
04-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: force flush on map as temporary fix to readpixel Should allow more piglit test to pass. Need to plugin proper flushing. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_texture.c
|
9a78e790dc4c40362b971ad5eff2505c02b73ed7 |
04-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: always perform texture perspective divide + fix blending quake3 engine seems to run fine at this point (ioquake) Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
600_state.c
600_state_inlines.h
600d.h
|
dd863bf5e7c6680075cf7c355a026b1da69ee9e3 |
03-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add polygon offset support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
600_state.c
600d.h
|
a0b3944c30fdecf5ef97fd602b8a286bcc80fed3 |
03-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: flush and resubmit if we reach limit Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_context.h
600_draw.c
600_helper.c
|
3a8d4a89795d180b910b2c0dfa98c57cf9bb45a6 |
03-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix color target mask Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_state.c
|
8f6341d42131e6f60f269610d62b7f5b7b683052 |
03-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix stencil Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_state.c
|
7e42b7e5d2aebcda0e6bf081b6661411731e6df2 |
03-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix LIT + fix multiple constant one ALU + fix ALU block splitting Make sure LIT fills all slot for instruction (can't do W instruction without having the Z slot filled with at least a NOP). ALU instruction can't access more than 4 constant, move constant to temporary reg if we reach the limit. Fix ALU block splitting, only split ALU after ALU with last instruction bit sets. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
600_asm.c
600_asm.h
600_context.h
600_shader.c
|
f031817450fe75d3224f767d79938813287ac445 |
02-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: split alu block to conform to limit + RCP opcode Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_shader.c
|
313df4156279f84ebc5b98a7540820b994762650 |
02-Aug-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add autogenerated reg definition + debug print cleanup Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_reg.h
600_screen.c
600_shader.c
600_state.c
600_state_inlines.h
600d.h
|
4af5f11c3232015006f61c1a6befdff3411b8d6c |
02-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add stencil op/func translation
600_state.c
600_state_inlines.h
|
3f4ec394b027c6d947ccc88309a7d37bc3859e9d |
02-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: initial alpha test state
600_state.c
|
7bcd39ce50b7b710bb8561c430f345ebe91ab9a3 |
02-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add initial blend state. migrates cb_cntl to be regenerated
600_context.c
600_context.h
600_reg.h
600_state.c
600_state_inlines.h
|
01984cf34fa4e6d564d06a126795468b5718ecb0 |
02-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: set correct tex coord type for rect textures.
600_shader.c
|
919750a55771cfd731e2f90d1385cbb4265e4cf4 |
02-Aug-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: make r600_db_format static. this isn't used anywhere else yet.
600_state.c
|
1d74a1674c0675dc59588167741c4abd2cc82cf9 |
01-Aug-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary header.
700_asm.c
|
5fa1af0905ef2f513fe296f1d8e658dbdf24dd74 |
31-Jul-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary header.
600_texture.c
|
094d66f45992830929d620782c70836b4b9b4a37 |
30-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add KIL opcode support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
6c288d06ac512be6eb7f19a9005389dd46d5a26a |
30-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix typo in tex instruction + shader semantic id fix It seems we never get semantic id from TGSI so fallback to use output number as id. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
7a73390f9126fd270d9891cd9d2bf38ef56d9b80 |
29-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: mipmap early support + EX2/ABS instruction + culling Add mipmap support (demos/src/redbook/mipmap is working) Add EX2/ABS shader instruction support. Add face culling support. Misc fixes. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_resource.h
600_shader.c
600_state.c
600_texture.c
600d.h
|
a57f84251926045a3358822d0fd92ca95a4f0fde |
16-Jul-2010 |
Chia-I Wu <olv@lunarg.com> |
gallium: Keep only pipe_context::draw_vbo. That is, remove pipe_context::draw_arrays, pipe_context::draw_elements, pipe_context::draw_arrays_instanced, pipe_context::draw_elements_instanced, pipe_context::draw_range_elements.
600_context.c
600_context.h
600_draw.c
|
6d28bf917fb1d741d90fd3f05c22769376021fca |
15-Jul-2010 |
Chia-I Wu <olv@lunarg.com> |
gallium: Implement draw_vbo and set_index_buffer for all drivers. Some drivers define a generic function that is called by all drawing functions. To implement draw_vbo for such drivers, either draw_vbo calls the generic function or the prototype of the generic function is changed to match draw_vbo. Other drivers have no such generic function. draw_vbo is implemented by calling either draw_arrays and draw_elements. For most drivers, set_index_buffer does not mark the state dirty for tracking. Instead, the index buffer state is emitted whenever draw_vbo is called, just like the case with draw_elements. It surely can be improved.
600_context.c
600_context.h
600_draw.c
600_state.c
|
42c1f27149828e5b5143f5e53ca3bd7c04a4e762 |
29-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: state context ptr in sampler_view & add I8/L8 buffer format Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_helper.c
600_state.c
|
35e044ab562b65aa53f9d9d7b5885e6a887774bb |
29-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: switch btw flat/linear interpolation I am not sure how to properly handle flat shading regarding non color parameter to fragment shader. It seems we should still interpolate non color using linear interpolation and flat shade only apply to color. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
600_shader.h
600_state.c
|
6f0f6c64596b7bbbfa96e8af6715565e37efa91e |
29-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: split pipe state creating/binding from hw state creation Split hw vs pipe states creation handling as hw states group doesn't match pipe state group exactly. Right now be dumb about that and rebuild all hw states on each draw call. More optimization on that side coming. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_blit.c
600_buffer.c
600_context.c
600_context.h
600_draw.c
600_resource.c
600_shader.c
600_state.c
|
742ee7935da60dda974795243d2e0fcf31accb59 |
28-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: cleanup resource buffer/texture mess Use a common function, fix the mess it was before. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_buffer.c
600_context.c
600_draw.c
600_resource.c
600_resource.h
600_screen.c
600_screen.h
600_state.c
600_texture.c
600_texture.h
|
b346c4205dc19c9ffbff48ed8bd89687772a96f8 |
28-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add lrp instruction support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
9961a0b92de7afed2afec62dadad08d76d1d3374 |
28-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: actualy fix the literal emission Previous patch added literal emission to wrong place, we want to emit literal before emitting a new alu group. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
2ab24a6faedb0f9b93055cbf3d52be1120353ee1 |
28-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: fix up segfault with variation between views and count. For some reason gallium hands us something with lots of empty views, and we are expected to deal with it, just do what r300g does for this bit.
600_state.c
|
f514ad0a9b9bebde0808eadb1e63ea548260be1e |
28-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: use gallium util for float->ui conversion
600_screen.h
600_state.c
|
641c9adb09e8707f659d42be600d16902ebf8895 |
28-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: texture support Add texture mapping support, redbook/texbind works if you comment out glClear and second checkboard. Need to fix : - texture overwritting - lod & mip/map handling - unormalized coordinate handling - texture view with first leve > 0 - and many other things Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_context.h
600_draw.c
600_shader.c
600_state.c
600_texture.c
600d.h
|
6a20539580e1b7ae921d497fbf66a8fd545efea4 |
28-Jul-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Move declaration before code. Fixes SCons build.
600_shader.c
|
2b3b76a4a0e21eb4bd4f1a4da5ff6ed26ccbabd1 |
27-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: always emit literal after emiting an alu instruction Make sure we always fill in the literal after alu instruction. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
0bebdc230ff09f191cfa269c2cbcbb257fd2e0fc |
26-Jul-2010 |
Stephan Schmid <stephan_2303@gmx.de> |
r600g: implememt the LIT instruction
600_shader.c
|
33241134e6e3d5bf19141eceff90fd854b23386a |
24-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: first pass at texture support This add texture support to the assembler, generated code is wrong (tested against working dump). Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_asm.c
600_asm.h
600_context.c
600_helper.c
600_shader.c
600_sq.h
|
bd27db400a433d842b5ede862e14136a1e2d8119 |
24-Jul-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Fix SCons build.
Conscript
|
cf864fd58b2a4780482a108cd3ff86779e8fa965 |
24-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix dp2, dp3, dp4 tokens We need to make sure dp are all mirror accross the alu unit. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
5cc2974dff346f3fa53881dbcc158e4563915487 |
23-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add RSQ token support Could serve as an example on how to add more token support. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_shader.c
|
de553d906b4a205d811a9e1651f14212ec284e29 |
23-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: drop compiler stuff and switch over dumb tgsi assembler Writing a compiler is time consuming and error prone in order to allow r600g to further progress in the meantime i wrote a simple tgsi assembler, it does stupid thing but i would rather keep the code simple than having people trying to optimize code it does. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
akefile
600_asm.c
600_asm.h
600_compiler.c
600_compiler.h
600_compiler_dump.c
600_compiler_r600.c
600_compiler_r700.c
600_compiler_tgsi.c
600_context.c
600_context.h
600_shader.c
600_shader.h
600_sq.h
600_state.c
700_asm.c
|
0bca8fbfdab4a19ddbb4f33aaef372246a5d2cc2 |
21-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add support for all R6XX/R7XX asic This configure some of the value properly based on asic so others asic than RV710 works too. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
600_sq.h
600d.h
700_sq.h
|
4b2820534e3635a8ecd047f1e0139834e0a67d02 |
21-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add r600 compile mode to compiler. some of the ALU instructions are different on r6xx vs r7xx, separate the alu translation to separate files, and use family to pick which compile stage to use.
600_compiler_r600.c
600_compiler_r700.c
600_shader.c
600_shader.h
|
9433d0e8010bfe182762f8d2bd856a416a7f93bb |
21-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600g: add family retrival allow pipe driver to get the family of the gpu.
600_screen.c
adeon.h
|
62f8b56dc6bcc13a30ed4f8c2d71e5a139b57b33 |
20-Jul-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: split trans unit computation Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_compiler_r600.c
600_shader.c
|
8556b77c56f3f1f0e75ce46d6b5c0d84c7b4eabd |
02-Jul-2010 |
Dave Airlie <airlied@redhat.com> |
r600: use gallium list macros instead of making our own. before this change, r600 glxinfo segfaulted in the list code, and I wasn't debugging another linked list implementation, its 2010 after all. So add the two missing list macros to the gallium header from X.org list header file (after fixing them), then port all r600 lists to the new header. Signed-off-by: Dave Airlie <airlied@redhat.com>
600_compiler.c
600_compiler.h
600_compiler_dump.c
600_compiler_r600.c
600_compiler_r700.c
600_shader.c
600_shader.h
|
a01e0afd9fc0d647081c6903baa1a7ba505c4b05 |
28-Jun-2010 |
Jakob Bornecrantz <jakob@vmware.com> |
Merge branch 'gallium-drm-driver-drescriptor' Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
|
92fde20de33d9ffb4ddce9b03eebbfbffe9d93bc |
24-Jun-2010 |
Jakob Bornecrantz <jakob@vmware.com> |
r600g: Move bootstrap code to target
600_buffer.c
600_public.h
600_screen.c
600_texture.c
adeon.h
|
eee570a0fe4599dad7946ed56b5b8d039edeaa18 |
09-Jun-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: save vertex buffers in blitter
600_blit.c
|
34f7681669987bc804f4603463f2fa3f82bc844f |
03-Jun-2010 |
Zack Rusin <zackr@vmware.com> |
gallium: adjust the query interface to support custom types we need to change it to support composite types
600_query.c
|
1574fb78465136b90e42126607a4d39c3db778de |
08-Jun-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary header.
600_helper.c
|
c6131879eb7dfdf26cd068109f6680608d608ab4 |
06-Jun-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: add shader literal constant support Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_compiler_r600.c
600_shader.c
600_shader.h
|
0db388eedd5a537e783faaa1ba1a1d101d20e647 |
05-Jun-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: split instruction into scalar Split instruction into scalar in core compiler this simplify the way we translate the instruction in latter stage. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_compiler.h
600_compiler_dump.c
600_compiler_r600.c
600_compiler_tgsi.c
|
8819421a3b579111e39fbf0ef7fe0a7cb9d7ac6e |
04-Jun-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: implement clear_{render_target, depth_stencil}, resource_copy_region resource_copy_region uses a software fallback because it relies on texture samplers which haven't been implemented yet.
600_blit.c
|
7d0418d3dc5b44ce8171cc74359306ce22234b17 |
04-Jun-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: make blit functions static (private)
600_blit.c
600_context.c
600_context.h
600_screen.h
|
ffd0a2e215d83222f5e1e148b8e7cddeac6025d2 |
04-Jun-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: use cast wrappers
600_blit.c
600_context.c
600_context.h
600_draw.c
600_screen.h
600_shader.c
600_state.c
|
42aad574f2536d8bf0dc38a2e02d9ddd0630d895 |
04-Jun-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Move declaration before code. Fixes SCons build.
600_state.c
|
d6ba70c658d05033f04dd73bc40a3e2d29892121 |
24-May-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: added code for depthtesting - added code to configure the depth buffer and to set up depth testing.
600_state.c
|
c674ce5e3a7023124c7d6936d3a65ec54cb37347 |
03-Jun-2010 |
Roland Scheidegger <sroland@vmware.com> |
r600g: adapt to interface changes r600g should be able to handle separate depth stencil clears as well. Also adapt surface_fill/copy stubs to new interface (not that it matters).
600_blit.c
600_screen.c
600_screen.h
|
d062d2141618e5f5950410b4da84b4d62d43c1be |
03-Jun-2010 |
Vinson Lee <vlee@vmware.com> |
scons: Handle Python OSError exception when missing libdrm_radeon. Instead of crashing when libdrm_radeon is unavailable, the SCons build just does not build r600g.
Conscript
|
4182d3ea00538b421222104cbc08d9bd656be32e |
29-May-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: remove unused struct r600_state What was the purpose of it?
600_context.h
600_shader.h
|
1202f17063dd568d406c04b62307efad909c5917 |
31-May-2010 |
Vinson Lee <vlee@vmware.com> |
r600g: Remove unnecessary headers.
600_blit.c
600_context.c
600_helper.c
600_query.c
600_shader.c
|
7d9396d7cfd4d9472e05f83bf20d7278d37efb4d |
29-May-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: fix gallium function parameters
600_context.h
600_draw.c
600_screen.c
|
1d57b6ebd186217a5c480245a36d169d357b8e67 |
29-May-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: make a local copy of viewport state
600_blit.c
600_context.h
600_state.c
|
6a143b84248d9b32b51238291647c7b8c02ab9b4 |
27-May-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: disable rendering Disable rendering to avoid GPU lockup. Use radeondb to debug shader compiler : radeondb -c gallium.bof radeondb -s gallium.json Will print shader generated, best is to use fp demos to test the compiler. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_context.c
|
9e8a6f801d360f85cc7bb53b85f15129b07b26da |
19-May-2010 |
Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> |
r600g: various fixes - enabled flushing a buffer more than once - enabled the blitter for r600_clear - added some more colors to r600_is_format_supported (copied from r600_conv_pipe_format) - r600_set_framebuffer_state now sets rctx->fb_state - more states are saved before a blit (had to add some accounting for the viewport and the vertex elements state) - fixed a few errors with reference counting
600_blit.c
600_buffer.c
600_context.c
600_context.h
600_draw.c
600_shader.c
600_state.c
600_texture.c
|
e68b4e50536b3438a3bb8c3d12acebc6845461a8 |
27-May-2010 |
Jerome Glisse <jglisse@redhat.com> |
r600g: fix driver + shader compiler backend change Change the way we translate from c_compiler to the asic specific representation. Should make things simpler. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
600_compiler.h
600_compiler_r600.c
600_compiler_r700.c
600_context.c
600_screen.c
600_shader.h
600_state.c
|
aeee52691ccb3afd24591ab3df30d7f243bc3eeb |
13-May-2010 |
Jakob Bornecrantz <wallbraker@gmail.com> |
r600g: Integrate into build Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
Conscript
|
9abfc5ef60ba26505a333bdd0f17a83c90ce316a |
13-May-2010 |
Jakob Bornecrantz <wallbraker@gmail.com> |
r600g: Fix buffer offsets Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
600_buffer.c
|
b8fb1d75ce95fe5d404b301ab31ca0c323967d14 |
10-May-2010 |
Marek Olšák <maraeo@gmail.com> |
r600g: adapt to latest interfaces changes - Wrapped the buffer and texture create/destroy/transfer/... functions using u_resource, which is then used to implement the resource functions. - Implemented texture transfers. I left the buffer and texture transfers separate because one day we'll need a special codepath for textures. - Added index_bias to the draw_*elements functions. - Removed nonexistent *REP and *FOR instructions. - Some pipe formats have changed channel ordering, so I've removed/fixed nonexistent ones. - Added stubs for create/set/destroy sampler views. - Added a naive implementation of vertex elements state (new CSO). - Reworked {texture,buffer}_{from,to}_handle. - Reorganized winsys files, removed dri,egl,python directories. - Added a new build target dri-r600.
akefile
Conscript
600_buffer.c
600_compiler_tgsi.c
600_context.c
600_context.h
600_draw.c
600_helper.c
600_resource.c
600_resource.h
600_screen.c
600_screen.h
600_state.c
600_texture.c
600_texture.h
|
72128962d640846472c1b0dc22cf4ac6ce875dc9 |
08-May-2010 |
Jerome Glisse <glisse@freedesktop.org> |
r600g: Initial import
akefile
Conscript
600_blit.c
600_buffer.c
600_compiler.c
600_compiler.h
600_compiler_dump.c
600_compiler_r600.c
600_compiler_r700.c
600_compiler_tgsi.c
600_context.c
600_context.h
600_draw.c
600_helper.c
600_query.c
600_screen.c
600_screen.h
600_shader.c
600_shader.h
600_sq.h
600_state.c
600_texture.c
600_texture.h
600d.h
700_sq.h
adeon.h
|