Matt Arsenault
9952f46407
AMDGPU/GlobalISel: Fix flat load/store of pointer types
...
llvm-svn: 367513
2019-08-01 03:57:42 +00:00
Matt Arsenault
26cb53b260
AMDGPU/GlobalISel: Handle G_ATOMICRMW_FADD
...
llvm-svn: 367509
2019-08-01 03:33:15 +00:00
Matt Arsenault
da5b9bfa95
AMDGPU/GlobalISel: Allow selection of DS atomicrmw
...
llvm-svn: 367507
2019-08-01 03:29:01 +00:00
Matt Arsenault
3baf4d3418
AMDGPU/GlobalISel: Select simple local stores
...
llvm-svn: 367504
2019-08-01 03:09:15 +00:00
Matt Arsenault
3594011de0
AMDGPU/GlobalISel: Select local loads
...
llvm-svn: 367498
2019-08-01 00:53:38 +00:00
Matt Arsenault
f8c8284455
AMDGPU/GlobalISel: Select G_ASHR
...
llvm-svn: 366257
2019-07-16 20:31:25 +00:00
Matt Arsenault
7161fb0be5
AMDGPU/GlobalISel: Select private loads
...
llvm-svn: 366248
2019-07-16 19:22:21 +00:00
Matt Arsenault
35c96598b1
AMDGPU/GlobalISel: Select flat loads
...
Now that the patterns use the new PatFrag address space support, the
only blocker to importing most load patterns is the addressing mode
complex patterns.
llvm-svn: 366237
2019-07-16 18:05:29 +00:00
Matt Arsenault
0a52e9d026
AMDGPU/GlobalISel: Complete implementation of G_GEP
...
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
2019-07-01 16:34:48 +00:00
Matt Arsenault
d810ff2588
AMDGPU/GlobalISel: Try to select VOP3 form of add
...
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
2019-07-01 16:27:32 +00:00
Tom Stellard
9e9dd30de3
AMDGPU/GlobalISel: Implement select for 32-bit G_ADD
...
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
2019-07-01 16:09:33 +00:00
Stanislav Mekhanoshin
7895c03232
[AMDGPU] predicate and feature refactoring
...
We have done some predicate and feature refactoring lately but
did not upstream it. This is to sync.
Differential revision: https://reviews.llvm.org/D60292
llvm-svn: 357791
2019-04-05 18:24:34 +00:00
Konstantin Zhuravlyov
9a278bf6b5
Revert "AMDGPU/NFC: Cleanup subtarget predicates"
...
It breaks one of our downstream merges, so revert it
temporarily while investigating failures downstream
llvm-svn: 354700
2019-02-22 23:21:06 +00:00
Konstantin Zhuravlyov
c2650178a1
AMDGPU/NFC: Cleanup subtarget predicates
...
Differential Revision: https://reviews.llvm.org/D58522
llvm-svn: 354620
2019-02-21 20:43:43 +00:00
Tom Stellard
79b5c3842b
AMDGPU/GlobalISel: Move SMRD selection logic to TableGen
...
Reviewers: arsenm
Reviewed By: arsenm
Subscribers: volkan, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D52922
llvm-svn: 354516
2019-02-20 21:02:37 +00:00
Chandler Carruth
2946cd7010
Update the file headers across all of the LLVM projects in the monorepo
...
to reflect the new license.
We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.
Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.
llvm-svn: 351636
2019-01-19 08:50:56 +00:00
Tom Stellard
14d8807d9a
AMDGPU/GlobalISel: Select amdgcn.cvt.pkrtz to 64-bit instructions
...
Summary: The 32-bit variants do not exist on VI+.
Reviewers: arsenm
Reviewed By: arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D52958
llvm-svn: 343985
2018-10-08 17:49:29 +00:00
Tom Stellard
ac68471326
AMDGPU/GlobalISel: Implement select() for 32-bit @llvm.minnun and @llvm.maxnum
...
Reviewers: arsenm, nhaehnle
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, llvm-commits, t-tye
Differential Revision: https://reviews.llvm.org/D46172
llvm-svn: 337056
2018-07-13 22:16:03 +00:00
Tom Stellard
26fac0f8e1
AMDGPU/GlobalISel: legalize and select 32-bit G_ASHR
...
Reviewers: arsenm, nhaehnle
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, llvm-commits, t-tye
Differential Revision: https://reviews.llvm.org/D48196
llvm-svn: 335318
2018-06-22 02:54:57 +00:00
Tom Stellard
9a6535718e
AMDGPU/GlobalISel: legalize and select 32-bit G_SITOFP
...
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D48195
llvm-svn: 335316
2018-06-22 02:34:29 +00:00
Tom Stellard
a92847359a
AMDGPU/GlobalISel: Implement select() for @llvm.amdgcn.cvt.pkrtz
...
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D45907
llvm-svn: 334757
2018-06-14 19:26:37 +00:00
Tom Stellard
46bbbc33c0
AMDGPU/GlobalISel: Implement select() for 32-bit G_FADD and G_FMUL
...
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D46171
llvm-svn: 334665
2018-06-13 22:30:47 +00:00
Tom Stellard
dcc95e9385
AMDGPU/GlobalISel: Implement select() for 32-bit G_FPTOUI
...
Reviewers: arsenm, nhaehnle
Subscribers: kzhuravl, wdng, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D45883
llvm-svn: 332082
2018-05-11 05:44:16 +00:00
Tom Stellard
1dc90204bf
AMDGPU/GlobalISel: Enable TableGen'd instruction selector
...
Reviewers: arsenm, nhaehnle
Reviewed By: arsenm
Subscribers: kzhuravl, wdng, mgorny, yaxunl, rovka, kristof.beyls, dstuttard, tpr, t-tye, llvm-commits
Differential Revision: https://reviews.llvm.org/D45994
llvm-svn: 332039
2018-05-10 20:53:06 +00:00