History log of /external/mesa3d/src/gallium/drivers/r600/r600_asm.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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)
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
39323e8f792a33f4fe3028c286a1638dc16a38a4 28-Jun-2012 Tom Stellard <thomas.stellard@amd.com> r600g: Update number of gprs when adding a vertex instruction
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
5187948bc2b16df70ee6696a8702a898b38a2d63 17-May-2012 Tom Stellard <thomas.stellard@amd.com> r600g: Handle MUL_IEEE in r600_bytecode_get_num_operands
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
6ae12bac596ce3a6aa8e09f638ad2cb4a7c18e5c 05-May-2012 Christoph Bumiller <e0425955@student.tuwien.ac.at> gallium/drivers: handle TGSI_OPCODE_CEIL
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
a2e08a40f5144a3533de9c3ede422a34b7a44255 27-Apr-2012 Tom Stellard <thomas.stellard@amd.com> r600g: Print integer values of literal constants in shader dumps
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
18617d7423b2c12aac9adbb8354fbf5d0c8ddfea 27-Apr-2012 Tom Stellard <thomas.stellard@amd.com> r600g: Add support for reading BREAK_LOGICALZ_i32 from bytestream
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
0a6120244e66494db070ce875c0a464fbc5b15a1 26-Apr-2012 Marek Olšák <maraeo@gmail.com> winsys/radeon: simplify buffer map/unmap functions

The idea is not to use pb_map and pb_unmap wrappers, calling straight
into the winsys.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
5c03d1fa0fbe130153a2e4c937f684c680ca20b2 30-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: kill off the fallback for crazy src_offset values

st/mesa doesn't allow src_offset to be greater than stride and the maximum
stride r600 supports is 2047.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
330b6c85c961b32f704ce8ec7dbf8cb7fc0b80a8 05-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: cleanup includes
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
370c8b5ee7666f4f515d63603afe8282b1b3c682 24-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: remove obsolete todo comments

Also use XXX in the other ones, because it's the most used word for that
purpose in Mesa.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
e4340c1908a6a3b09e1a15d5195f6da7d00494d0 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: merge r600_context with r600_pipe_context

The split made no sense.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
78293b99b23268e6698f1267aaf40647c17d95a5 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: remove u8,u16,u32,u64 types
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_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
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
ba59a1a0d817566576e20e66d74f1917d958119e 17-Jan-2012 Dave Airlie <airlied@redhat.com> r600g: fix recip_uint on r600.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
543b2331d7b45a29ccd3530daa2389e87e65d89b 08-Nov-2011 Marek Olšák <maraeo@gmail.com> r600g: implement transform feedback

r600: DONE.
r700: MOSTLY (done but locks up).
Evergreen: MOSTLY (done but doesn't work for an unknown reason).

The kernel support will come soon.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
dcdc062dda62212d09f522e07530ed79871ba481 06-Oct-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: fix op3 & write in merge_inst_groups
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d5bfcf73fd2c86c3fdd959a212719f101ad76a76 23-Oct-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> r600g: make r[67]00 not bail out on PRED_SETNE_INT.
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
9b34cea7e91f90023ca3490603155d758cbdee1c 25-Sep-2011 Dave Airlie <airlied@redhat.com> r600g: uarl fixes.

Not 100% sure these are correct yet
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
6101b6d442b06a347c001fe85848d636ab7df260 11-Sep-2011 Marek Olšák <maraeo@gmail.com> r600g: merge r600_bo with r600_resource

I have moved 'last_flush' and 'binding' from r600_bo to winsys/radeon.
The other members are now part of r600_resource.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
f9b7d3bd4a744537db29f8688cf4c4109fb19ab1 05-Sep-2011 Dave Airlie <airlied@redhat.com> r600g: add 10/10/10/2 vertex format conversion.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
041ed559e11ee99d720c8132428c07d8fe57ec81 04-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: remove an unused parameter from r600_bo_destroy

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
b3b946b0ab88c1d7edeab183d8ad5125ba223392 09-Jul-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Store the chip class in r600_pipe_context.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
feec48114b261f43c8dc94c06cfccea3b6ef1689 25-Jun-2011 Alex Deucher <alexdeucher@gmail.com> r600g: eg+ support for FS_COLOR0_WRITES_ALL_CBUFS

Evergreen+ don't support multi-writes so we need to emulate
it in the shader. Fixes the following piglit tests:
fbo-drawbuffers-fragcolor
ati_draw_buffers-arbfp-no-option

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
5f2deba9f3f3f9230a9fdd2848e20c1e23e98b8f 08-Jun-2011 Brian Paul <brianp@vmware.com> gallium: s/bool/boolean/
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
414cd5df50435f475d92b02c229453d037369c0f 04-Apr-2011 Alex Deucher <alexdeucher@gmail.com> r600g: add llano support

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
b2a98c3531c276b76024bb9b10fdd6c3360cb0c9 25-Apr-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Unify comment style somewhat.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d7577ae3a6d6e174ab36d244f6bd4dedd63c3d1d 25-Apr-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Cleanup the big endian support a bit.

In particular, make sure the code is at least compiled on little endian
systems.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
843dfe3206c4f397c7911b748373dde5540392a4 19-Apr-2011 Cédric Cano <ccano@interfaceconcept.com> r600g: add big endian support for r6xx/r7xx

Signed-off-by: Cedric Cano <ccano@interfaceconcept.com>
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
bb4f2a0f3513a20fc3bd27ad4c278e370e5491a8 09-Mar-2011 Christian König <deathsimple@vodafone.de> r600g: remove some now unneeded code from r600_bc_vtx_build
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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
/external/mesa3d/src/gallium/drivers/r600/r600_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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
8d9ea4c4e7d0aa28ca86e0f620cde187b0c6c96b 02-Mar-2011 Christian König <deathsimple@vodafone.de> r600g: correct mega_fetch_count in fetch shader
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
c33e091d17b90df61f7b3873a2f124c4f26adf06 28-Feb-2011 Jerome Glisse <jglisse@redhat.com> r600g: indentation fixes

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
96bbc627f369c0100b950f81531b1fe9ef586c34 28-Feb-2011 Christian König <deathsimple@vodafone.de> r600g: implement instanced drawing support
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
871460eb149b9868e5750f13b8206e271743c4a2 07-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Set the fetch type in r600_bc_vtx_build().
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
4c30a80e384d523803d70ead3403cf3ca30b8868 07-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Handle the ADD_INT instruction in r600_bc_get_num_operands().
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
aa8a2224a3df111a1613f0baefebc00883e1b70b 07-Feb-2011 Marek Olšák <maraeo@gmail.com> r600g: use the new vertex buffer manager
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
a6a710cbe7425819e1cd5ad5f2085311c092f2e7 03-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Make some more things static.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d06b99009699f8bc1d7a1d711bee8edc92dfb1a9 03-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Get rid of the unused r600_cf_vtx_tc() function.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
70e656b4ebdd3cd2962ce66544ae9af349ecd59a 29-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: fix vertex format fallback

This fixes:
- piglit/draw-vertices
- piglit/draw-vertices-half-float
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
9e964baaf34fedec385a750b97fd6684fc52584a 18-Jan-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Kill trailing whitespace.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
b61afe13f1a272bfe8230ed5d8658f4b4f58ed71 16-Jan-2011 Christian König <deathsimple@vodafone.de> r600g: fix alu inst group merging for relative adressing
/external/mesa3d/src/gallium/drivers/r600/r600_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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
634dece281c6f7eb3bb210fdd386c2afe8f7e895 14-Jan-2011 Alex Deucher <alexdeucher@gmail.com> r600g: compiler helper opcode fixes for evergreen

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
323ef3a1f07ba4333dadebab571ddcd49d95f45c 14-Jan-2011 Christian König <deathsimple@vodafone.de> r600g: add more missing instructions to r600_bc_get_num_operands
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
a2ab929ab2d7dd4fcbbc5f32c8feabf42cad4d34 13-Jan-2011 Vinson Lee <vlee@vmware.com> r600g: Move declaration before code in r600_asm.c.

Fixes SCons build.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
96f8f8db7bcddec7ef0fce62cf0e23f1c2fb8c8d 22-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: rework literal handling
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d7342f6a81a0d13acb6486a24bffa8e5987d5410 20-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: merge alu groups
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
eea1d8199b376f37027c14669e0bdf991a22872d 18-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: implement replacing gpr with pv and ps
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
0448f73f06b92dfd04e553147cac0e240dbabbdd 13-Jan-2011 Christian König <deathsimple@vodafone.de> r600g: add missing RECIPSQRT_CLAMPED to r600_bc_get_num_operands
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
a25b91c2c2118741389f418a66de7ca145b8600b 18-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: rework bank swizzle code
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
89275c0b36f1104ac05f13e930f7fb99595607a1 18-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: fix alu slot assignment
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
236e99fe05a8d301f81ca4330bf4ded80cf501a2 18-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: optimize away CF ALU instructions even if type doesn't match
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
eb70e58caf773f9a89aa16109705b84f0aa2a6f7 13-Jan-2011 Vinson Lee <vlee@vmware.com> r600g: Silence uninitialized variable warnings.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
6881262eff2154e4252359c104e8c90052537eb5 12-Jan-2011 Christian König <deathsimple@vodafone.de> r600g: also look at tex inst when for maximum gpu count
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
c60cb25bfb15fc83e78d9f2c74646dcc5ad07792 16-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: implement output modifiers and use them to further optimize LRP
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
95a2b265facfb8c6e50895326c90f7fd75d5c1d6 17-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: fix alu dumping
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
47e7c6f57149975939b8519c45b793a30364dd79 16-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: improve r600_bc_dump
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
cc0f604241ee7b536f4c9867573024b8673b0998 16-Dec-2010 Christian König <deathsimple@vodafone.de> r600g: fix tex and vtx joining
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
97e2aa31c6e735d5f6bd1d67a4dd8da2605aedc8 07-Jan-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Split ALU clauses based on used constant cache lines.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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().
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
8273921b7a41251f3f5a87df995913cb291902ca 07-Jan-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Store kcache settings as an array.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
69251fc4cd5f71be403e08398bc43d19052a640d 07-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: remove dead code

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
fa86fc564aea4e40c89f6fc889e6a5bf817634b3 04-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: build fetch shader from vertex elements

Vertex elements change are less frequent than draw call, those to
avoid rebuilding fetch shader to often build the fetch shader along
vertex elements. This also allow to move vertex buffer setup out
of draw path and make update to it less frequent.

Shader update can still be improved to only update SPI regs (based
on some rasterizer state like flat shading or point sprite ...).

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
0e4c5f63b9023b292b88b2f0d5d0f6154e8ad263 22-Nov-2010 Alex Deucher <alexdeucher@gmail.com> r600g: add support for ontario APUs

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
4afd0683854ac1cfbe7118232b5e344c83d4b0c2 19-Nov-2010 Alex Deucher <alexdeucher@gmail.com> r600g: use meaningful defines for chiprev

Makes the code much clearer.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
7ffd4e976fd11b8c083c2927effd25a2f79ac841 17-Nov-2010 Jerome Glisse <jglisse@redhat.com> r600g: code cleanup (indent, trailing space, empty line ...)

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d674ee2a4dfeda55d3f4780e97a26f73d855c448 27-Oct-2010 Vinson Lee <vlee@vmware.com> r600g: Silence uninitialized variable warnings.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d1acb920163ab0f39ff2fc72b85fc7bf16c37262 25-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: add assembler support for all the kcache fields.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d2c06b5037fe9282cbbc0c7acd84a1b286716507 05-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: drop use_mem_constant.

since we plan on using dx10 constant buffers everywhere.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
ed4f740127d6896506a91c8c5b9c527a971e982b 19-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: only emit uses waterfall on r6xx hw.
/external/mesa3d/src/gallium/drivers/r600/r600_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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
7290c5982cc60f3a9658512a99db6cc08a29e77f 15-Sep-2010 Vinson Lee <vlee@vmware.com> r600g: Silence uninitialized variable warning.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
cc1b3b1013d1fb1f1f25ade20a68d8bdfe14f5f7 10-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix warning in r600 pipe driver
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
d42efb9e8df6ef872ab4f142e3daf1b6cb9eff11 08-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add support for constants in memory buffers.

DX9 constants were in the constant file, and evergreen no longer support
cfile. r600/700 can also use constants in memory buffers, so add the code
(disabled for now) to enable that as precursor for evergreen.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
6ec0fff822f66170f190515fc5e718142f6a5e28 06-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add missing printf operand
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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.
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
098064e8cb6950f60c51a44e280cb335f07920b1 19-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add a chiprev type for r600/r700/evergreen instead of using family
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
481b65abaedb271d0da24c75b8c60f7bcf6d8ce9 11-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: accept empty frag prog shader

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c
2cad5350f9691d4d2c18a637548735925fa0ee97 09-Aug-2010 Marek Olšák <maraeo@gmail.com> r600g: fix some warnings
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.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>
/external/mesa3d/src/gallium/drivers/r600/r600_asm.c