Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
store intrinsic
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
VALU instructions can only read from one SGPR, and that's the condition code
mask in this case.
Fixes a number of radeonsi piglit regressions from Vincent's max/min changes
(which means the matching to AMDGPUfmax/min doesn't work for some reason).
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Fixes hundreds of radeonsi piglit regressions from commit
62c8e1ec4a93b28c55c1c7accb6cbd64952e59c2 ('AMDGPU: replace int_AMDGPU_rcp by
fdiv (1.0, x) in RECIP pattern').
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
|
|
|
|
This will reduce the number of tablegen patterns we need.
|
|
|
|
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
The use list may change during the execution of the loop, so we
need to manually keep track of the next item in the list.
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
- Add \file to every file
- Use \brief, \returns, \param, etc. where necessary
- Remove duplicate function / class names from doxygen comments
|
|
- Fix more coding style errors with braces on their own line
Found using: grep -rn '^[ ]*{$'
- Remove underscore from start of macro defs
- Remove all tabs
- Remove "end of" comments that don't refer to namespaces.
- Fix an issue with parens being on the wrong line.
- Fix warnings from building with clang
|
|
v2:
- Fold the immediates using the SelectionDAG
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
v2:
- Fix alignment of case statements
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
By using the S_*_SAVEEXEC_b64 instructions.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-and-tested-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Christian König <deathsimple@vodafone.de>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-and-tested-by: Michel Dänzer <michel.daenzer@amd.com>
Signed-off-by: Christian König <deathsimple@vodafone.de>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Two SGPRs are used for VCC, so it's not possible to use these and VCC
together.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Pointed out by compiler warning:
/home/daenzer/src/llvm-git/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp:96:16: warning: adding 'int64_t' (aka 'long') to a string does not append to the string [-Wstring-plus-int]
O << " + " + Op.getImm();
~~~~~~^~~~~~~~~~~~~
/home/daenzer/src/llvm-git/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp:96:16: note: use array indexing to silence this warning
O << " + " + Op.getImm();
^
& [ ]
1 warning generated.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
|
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
|
|
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167845 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Vadim Girlin
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167844 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167843 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
SGPRs are not affected by control flow.
v2: don't use liveness analyse any more, handle partial
dominated end notes.
v3: fix old pass name in CMakeLists.txt
v4: remove unnecessary successor handling and kill handling
Patch by: Christian König
Signed-off-by: Christian König <deathsimple@vodafone.de>
Tested-by: Michel Dänzer <michel.daenzer@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167842 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167841 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167840 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167839 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Build with clang checkouts:
SVN: r167547
Git Mirror: b578aee665aad5ed1a46a26217c730fdfbfc8c2e
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167838 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
This is technically too strict: While a VOP3 instruction can only use one SGPR,
it can be used for any operand, even for several operands at the same. But for
now this is a simple solution which fixes the problem (e.g. causing broken
linear fog with radeonsi) at little extra cost (in the form of V_MOV_* from
SGPR to VGPR).
Patch by: Michel Dänzer
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167837 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
radeonsi can run piglit reliably with it now. It fixes hundreds of tests and
prevents many more from crashing.
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellar@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167129 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellar@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167128 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellar@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167127 91177308-0d34-0410-b5e6-96231b3b80d8
|
|
Patch by: Michel Dänzer
Reviewed-by: Tom Stellard <thomas.stellar@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/R600/@167126 91177308-0d34-0410-b5e6-96231b3b80d8
|