| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
This reverts commit r365073.
This is crashing, and is improperly relying on IR type names.
llvm-svn: 365087
|
|
|
|
|
|
|
|
|
| |
Summary:
Hip texture type is equivalent to OpenCL image. So, we need to set the Image type for kernel arguments with __hip_texture type.
Differential revision: https://reviews.llvm.org/D63850
llvm-svn: 365073
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
- Support serialization of all arguments in machine function info. This
enables fabricating MIR tests depending on argument info.
Reviewers: arsenm, rampitec
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64096
llvm-svn: 364995
|
|
|
|
|
|
| |
These aren't produced now, but will be in a future patch.
llvm-svn: 364983
|
|
|
|
|
|
|
|
|
| |
Ordinarily it is lowered as a build_vector of each extract_vector_elt,
which in turn get lowered to bitcasts and bit shifts. Very little
understand the lowered extract pattern, resulting in much worse
code. We treat concat_vectors of v2i16 as legal, so prefer that.
llvm-svn: 364959
|
|
|
|
| |
llvm-svn: 364952
|
|
|
|
|
|
|
|
|
| |
divergent loop and used outside
Differential Revision: https://reviews.llvm.org/D63953
Reviewers: rampitec, nhaehnle, arsenm
llvm-svn: 364950
|
|
|
|
| |
llvm-svn: 364933
|
|
|
|
| |
llvm-svn: 364932
|
|
|
|
|
|
|
|
| |
The register bank for the destination of the sample argument copy was
wrong. We shouldn't be constraining each source to the result register
bank. Allow constraining the original register to the right size.
llvm-svn: 364928
|
|
|
|
|
|
|
| |
Manually select to workaround tablegen emitter emitting checks for
G_CONSTANT.
llvm-svn: 364927
|
|
|
|
|
|
|
| |
These should be SALU writes, and these are lowered to instructions
that def SCC.
llvm-svn: 364859
|
|
|
|
| |
llvm-svn: 364836
|
|
|
|
| |
llvm-svn: 364835
|
|
|
|
| |
llvm-svn: 364834
|
|
|
|
|
|
|
|
|
| |
Tests don't cover the masked input path since non-kernel arguments
aren't lowered yet.
Test is copied directly from the existing test, with 2 additions.
llvm-svn: 364833
|
|
|
|
|
|
|
|
| |
Replace the brcond for the 2 cases that act as branches. For now
follow how the current system works, although I think we can
eventually get rid of the pseudos.
llvm-svn: 364832
|
|
|
|
|
|
|
|
|
| |
This needs to be extended to s32, and expanded into cmp+select. This
is relying on the fact that widenScalar happens to leave the
instruction in place, but this isn't a guaranteed property of
LegalizerHelper.
llvm-svn: 364831
|
|
|
|
|
|
|
| |
Use a change observer to apply a register bank to the newly created
intermediate result register.
llvm-svn: 364830
|
|
|
|
|
|
|
| |
If this is scalar, promote to s32. Use a new observer class to assign
the register bank of newly created registers.
llvm-svn: 364827
|
|
|
|
|
|
|
|
|
| |
The condition register bank must be scc or vcc so that a copy will be
inserted, which will be lowered to a compare.
Currently greedy unnecessarily forces using a VCC select.
llvm-svn: 364825
|
|
|
|
| |
llvm-svn: 364819
|
|
|
|
| |
llvm-svn: 364817
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
ds_ordered_count can now simultaneously operate on up to 4 dwords
in a single instruction, which are taken from (and returned to)
lanes 0..3 of a single VGPR.
Change-Id: I19b6e7b0732b617c10a779a7f9c0303eec7dd276
Reviewers: mareko, arsenm, rampitec
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63716
llvm-svn: 364815
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Original patch by Marek Olšák
Change-Id: Ia97d5d685a63a377d86e82942436d1fe6e429bab
Reviewers: mareko, arsenm, rampitec
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, jfb, Petar.Avramovic, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63452
llvm-svn: 364814
|
|
|
|
| |
llvm-svn: 364811
|
|
|
|
| |
llvm-svn: 364808
|
|
|
|
| |
llvm-svn: 364807
|
|
|
|
|
|
|
|
| |
Also works around tablegen defect in selecting add with unused carry,
but if we have to manually select GEP, might as well handle add
manually.
llvm-svn: 364806
|
|
|
|
| |
llvm-svn: 364805
|
|
|
|
|
|
|
|
|
|
|
| |
There are several things broken, but at least emit the right thing for
gfx9.
The import of the pattern with the unused carry out seems to not
work. Needs a special class for clamp, because OperandWithDefaultOps
doesn't really work.
llvm-svn: 364804
|
|
|
|
| |
llvm-svn: 364801
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: arsenm
Reviewed By: arsenm
Subscribers: hiraditya, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, Petar.Avramovic, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D58804
llvm-svn: 364797
|
|
|
|
| |
llvm-svn: 364795
|
|
|
|
| |
llvm-svn: 364789
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The stride should depend on the wave size, not the hardware generation.
Also, the 32_FLOAT format is 0x16, not 16; though that shouldn't be
relevant.
Change-Id: I088f93bf6708974d085d1c50967f119061da6dc6
Reviewers: arsenm, rampitec, mareko
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63808
llvm-svn: 364788
|
|
|
|
|
|
|
| |
This is easy to handle and avoids legalization artifacts which are
likely to obscure combines.
llvm-svn: 364787
|
|
|
|
| |
llvm-svn: 364786
|
|
|
|
|
|
|
| |
isVCC has the same bug, but isn't used in a context where it can cause
a problem.
llvm-svn: 364784
|
|
|
|
| |
llvm-svn: 364782
|
|
|
|
| |
llvm-svn: 364769
|
|
|
|
| |
llvm-svn: 364768
|
|
|
|
| |
llvm-svn: 364767
|
|
|
|
| |
llvm-svn: 364766
|
|
|
|
|
|
| |
Select s64 eq/ne scalar icmp.
llvm-svn: 364765
|
|
|
|
| |
llvm-svn: 364763
|
|
|
|
| |
llvm-svn: 364762
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was checking the size of the register with the value of the size,
which happens to be exec. Also fix assuming VCC is 64-bit to fix
wave32.
Also remove some untested handling for physical registers which is
skipped. This doesn't insert the V_CNDMASK_B32 if SCC is the physical
copy source. I'm not sure if this should be trying to handle this
special case instead of dealing with this in copyPhysReg.
llvm-svn: 364761
|
|
|
|
|
|
|
| |
Zext from s1 is the only case where this should do anything with the
current legal extensions.
llvm-svn: 364760
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isLoopExiting should only be called for blocks in the loop. A follow
up patch makes this requirement an assertion.
I've updated the usage here, to only match for actual exit blocks. Previously,
it would also match blocks not in the loop.
Reviewers: arsenm, nhaehnle
Reviewed By: nhaehnle
Differential Revision: https://reviews.llvm.org/D63980
llvm-svn: 364750
|