- Mar 27, 2013
-
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> Tested-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 178125
-
- Mar 26, 2013
-
-
NAKAMURA Takumi authored
llvm-svn: 178065
-
Christian Konig authored
Not only fold immediates, but avoid unnecessary copies as well. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178024
-
Christian Konig authored
Prevent loading M0 multiple times. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178023
-
Christian Konig authored
Just define the address as unknown instead of VReg_32. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178022
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178021
-
Christian Konig authored
They read from constant register space anyway. v2: fix lit tests Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178020
-
Christian Konig authored
Just enable WQM when we see an LDS interpolation instruction. Signed-off-by:
Christian König <christian.koenig@amd.com> llvm-svn: 178019
-
Christian Konig authored
Restore the EXEC mask early, otherwise a copy might end up not beeing executed. Candidate for the mesa stable branch. Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> Tested-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 178018
-
Christian Konig authored
Use a MapVector on types where the iteration order matters. Otherwise we doesn't always produce a deterministic output. Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 177999
-
- Mar 22, 2013
-
-
Michel Danzer authored
Fixes wrong lighting in some corner cases with r600g and radeonsi, e.g. manifested by failure of two piglit/glean tests and intermittent black patches in many apps. Tested on SI and RS880. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=62012 [radeonsi] Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58150 [r600g] NOTE: This is a candidate for the Mesa stable branch. Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 177730
-
- Mar 18, 2013
-
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177277
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177276
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177275
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177274
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177273
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177272
-
Christian Konig authored
Unfortunately the previous fix for inserting waits for unordered defines wasn't sufficient, cause it's possible that even ordered defines are only partially used (or not used at all). Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 177271
-
- Mar 14, 2013
-
-
Vincent Lejeune authored
llvm-svn: 177078
-
- Mar 13, 2013
-
-
Vincent Lejeune authored
llvm-svn: 176967
-
- Mar 11, 2013
-
-
Vincent Lejeune authored
This allows R600 Target to use the newly created -verify-misched llc flag llvm-svn: 176819
-
NAKAMURA Takumi authored
llvm-svn: 176797
-
- Mar 08, 2013
-
-
Tom Stellard authored
fold selectcc (selectcc x, y, a, b, cc), b, a, b, setne -> selectcc x, y, a, b, cc Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 176700
-
Tom Stellard authored
Two changes: 1. Prefer SET* instructions when possible 2. Handle the CND*_INT case with floating-point args Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 176699
-
Tom Stellard authored
Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 176698
-
Tom Stellard authored
Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 176697
-
Tom Stellard authored
Reviewed-by:
Christian König <christian.koenig@amd.com> llvm-svn: 176696
-
Michel Danzer authored
This is certainly not the last word on scheduling for this target, but right now this allows a few apps to run / finish with radeonsi, most notably UT2004 / Lightsmark. They fail to compile some shaders with the default scheduler because it ends up trying to spill registers, which we don't support yet (and which is probably a bad idea in general for performance if it can be avoided). NOTE: This is a candidate for the Mesa stable branch. Reviewed-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176687
-
- Mar 07, 2013
-
-
Christian Konig authored
v2: update CMakeLists.txt as well Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176626
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176625
-
Christian Konig authored
v2: fix R600 regressions Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176624
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176623
-
Christian Konig authored
Just encode the type as target specific attribute. Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176622
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176621
-
Christian Konig authored
Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 176620
-
- Mar 05, 2013
-
-
Vincent Lejeune authored
llvm-svn: 176507
-
Benjamin Kramer authored
llvm-svn: 176501
-
Vincent Lejeune authored
This is a skeleton for a pre-RA MachineInstr scheduler strategy. Currently it only tries to expose more parallelism for ALU instructions (this also makes the distribution of GPR channels more uniform and increases the chances of ALU instructions to be packed together in a single VLIW group). Also it tries to reduce clause switching by grouping instruction of the same kind (ALU/FETCH/CF) together. Vincent Lejeune: - Support for VLIW4 Slot assignement - Recomputation of ScheduleDAG to get more parallelism opportunities Tom Stellard: - Fix assertion failure when trying to determine an instruction's slot based on its destination register's class - Fix some compiler warnings Vincent Lejeune: [v2] - Remove recomputation of ScheduleDAG (will be provided in a later patch) - Improve estimation of an ALU clause size so that heuristic does not emit cf instructions at the wrong position. - Make schedule heuristic smarter using SUnit Depth - Take constant read limitations into account Vincent Lejeune: [v3] - Fix some uninitialized values in ConstPair - Add asserts to ensure an ALU slot is always populated llvm-svn: 176498
-
Vincent Lejeune authored
Maintaining CONST_COPY Instructions until Pre Emit may prevent some ifcvt case and taking them in account for scheduling is difficult for no real benefit. llvm-svn: 176488
-
Vincent Lejeune authored
Reviewed-by: Tom Stellard <thomas.stellard at amd.com> llvm-svn: 176487
-