#
5073ae2a |
| 03-Nov-2022 |
Jay Foad <jay.foad@amd.com> |
[AMDGPU] Fix duplicated words in comments
|
#
ffdbbd11 |
| 02-Nov-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Directly pass Function to mayUseAGPRs
This was taking the MachineFunction, but only inspecting the underlying IR.
|
#
5a3fe9a0 |
| 27-Sep-2022 |
Stanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com> |
[AMDGPU] Move SIModeRegisterDefaults to SI MFI
It does not belong to a general AMDGPU MFI.
Differential Revision: https://reviews.llvm.org/D134666
|
#
20a80d60 |
| 27-Sep-2022 |
Vitaly Buka <vitalybuka@google.com> |
Revert "[AMDGPU] Move SIModeRegisterDefaults to SI MFI"
Break msan bots. Details in D134666.
This reverts commit 0ce96e06ee0226938e723bd0c8e16e3d2d51f203.
|
#
0ce96e06 |
| 26-Sep-2022 |
Stanislav Mekhanoshin <Stanislav.Mekhanoshin@amd.com> |
[AMDGPU] Move SIModeRegisterDefaults to SI MFI
It does not belong to a general AMDGPU MFI.
Differential Revision: https://reviews.llvm.org/D134666
|
#
3a205977 |
| 19-Jul-2022 |
Jon Chesterfield <jonathanchesterfield@gmail.com> |
[amdgpu] Implement lds kernel id intrinsic
Implement an intrinsic for use lowering LDS variables to different addresses from different kernels. This will allow kernels that cannot reach an LDS varia
[amdgpu] Implement lds kernel id intrinsic
Implement an intrinsic for use lowering LDS variables to different addresses from different kernels. This will allow kernels that cannot reach an LDS variable to avoid wasting space for it.
There are a number of implicit arguments accessed by intrinsic already so this implementation closely follows the existing handling. It is slightly novel in that this SGPR is written by the kernel prologue.
It is necessary in the general case to put variables at different addresses such that they can be compactly allocated and thus necessary for an indirect function call to have some means of determining where a given variable was allocated. Claiming an arbitrary SGPR into which an integer can be written by the kernel, in this implementation based on metadata associated with that kernel, which is then passed on to indirect call sites is sufficient to determine the variable address.
The intent is to emit a __const array of LDS addresses and index into it.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D125060
show more ...
|
#
0bdaef38 |
| 24-Jan-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Add gfx11 feature to force initializing 16 input SGPRs
The total user+system SGPR count needs to be padded out to 16 if fewer inputs are enabled.
|
#
cef65864 |
| 18-Jun-2022 |
Guillaume Chatelet <gchatelet@google.com> |
[Alignment] Use Align for MaxKernArgAlign
Differential Revision: https://reviews.llvm.org/D128118
|
#
cc5a1b3d |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
llvm-reduce: Add cloning of target MachineFunctionInfo
MIR support is totally unusable for AMDGPU without this, since the set of reserved registers is set from fields here.
Add a clone method to Ma
llvm-reduce: Add cloning of target MachineFunctionInfo
MIR support is totally unusable for AMDGPU without this, since the set of reserved registers is set from fields here.
Add a clone method to MachineFunctionInfo. This is a subtle variant of the copy constructor that is required if there are any MIR constructs that use pointers. Specifically, at minimum fields that reference MachineBasicBlocks or the MachineFunction need to be adjusted to the values in the new function.
show more ...
|
#
cfe51684 |
| 18-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Make PSV instances static members
|
#
dd7e407d |
| 02-Jun-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Move SpilledReg from MFI to SIRegisterInfo
This isn't the most natural place for it, but it avoids a circular include dependency in an out of tree patch.
|
#
0e1c71e4 |
| 27-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
CodeGen: Move getAddressSpaceForPseudoSourceKind into TargetMachine
Avoid the dependency on TargetInstrInfo, which depends on the subtarget and therefore the individual function.
Currently AMDGPU i
CodeGen: Move getAddressSpaceForPseudoSourceKind into TargetMachine
Avoid the dependency on TargetInstrInfo, which depends on the subtarget and therefore the individual function.
Currently AMDGPU is constructing PseudoSourceValue instances in MachineFunctionInfo. In order to facilitate copying MachineFunctionInfo, we need to stop allocating these there. Alternatively we could allow targets to subclass PseudoSourceValueManager, and allocate them similarly to MachineFunctionInfo.
show more ...
|
#
70306542 |
| 03-May-2022 |
serge-sans-paille <sguelton@redhat.com> |
[iwyu] Handle regressions in libLLVM header include
Running iwyu-diff on LLVM codebase since fa5a4e1b95c8f37796 detected a few regressions, fixing them.
Differential Revision: https://reviews.llvm.
[iwyu] Handle regressions in libLLVM header include
Running iwyu-diff on LLVM codebase since fa5a4e1b95c8f37796 detected a few regressions, fixing them.
Differential Revision: https://reviews.llvm.org/D124847
show more ...
|
#
5bd87350 |
| 21-Apr-2022 |
hsmahesha <mahesha.comp@gmail.com> |
[AMDGPU] On gfx908, reserve VGPR for AGPR copy based on register budget.
Based on available register budget, reserve highest available VGPR for AGPR copy before RA. After RA, shift it to lowest unus
[AMDGPU] On gfx908, reserve VGPR for AGPR copy based on register budget.
Based on available register budget, reserve highest available VGPR for AGPR copy before RA. After RA, shift it to lowest unused VGPR if the one exist.
Fixes SWDEV-330006.
Reviewed By: rampitec
Differential Revision: https://reviews.llvm.org/D123525
show more ...
|
#
987df725 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Serialize VGPRForAGPRCopy
|
#
b5ec1312 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Fix allocating GDS globals to LDS offsets
These don't seem to be very well used or tested, but try to make the behavior a bit more consistent with LDS globals.
I'm not sure what the definit
AMDGPU: Fix allocating GDS globals to LDS offsets
These don't seem to be very well used or tested, but try to make the behavior a bit more consistent with LDS globals.
I'm not sure what the definition for amdgpu-gds-size is supposed to mean. For now I assumed it's allocating a static size at the beginning of the allocation, and any known globals are allocated after it.
show more ...
|
#
378bb801 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Serialize a few more MachineFunctionInfo fields in MIR
|
#
f90f4884 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Serialize gds size in MIR
|
#
5cd17f9d |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Serialize WWM registers
|
#
e0d585d7 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Defer creation of WWM VGPR spill slots
There's no reason to create these immediately. They can be created in the prolog/epilog code like CSR spills. There's probably a cleaner way to do this
AMDGPU: Defer creation of WWM VGPR spill slots
There's no reason to create these immediately. They can be created in the prolog/epilog code like CSR spills. There's probably a cleaner way to do this by utilizing the CSR spill code.
This makes the frame index used transient state for PrologEpilogInserter, and thus makes serialization easier. Really this doesn't need to be saved here but there isn't really a better place for it.
show more ...
|
#
bc7902f1 |
| 16-Apr-2022 |
Matt Arsenault <Matthew.Arsenault@amd.com> |
AMDGPU: Remove unused MachineFunctionInfo fields
These were leftovers from a half-implement spill to LDS attempt.
|
#
ea47373a |
| 14-Apr-2022 |
hsmahesha <mahesha.comp@gmail.com> |
[AMDGPU][NFC] Organize code around reserving VGPR32 for AGPR copy.
This is an NFC patch in preparation to fix a bug related to always reserving VGPR32 for AGPR copy.
Reviewed By: rampitec
Differen
[AMDGPU][NFC] Organize code around reserving VGPR32 for AGPR copy.
This is an NFC patch in preparation to fix a bug related to always reserving VGPR32 for AGPR copy.
Reviewed By: rampitec
Differential Revision: https://reviews.llvm.org/D123651
show more ...
|
#
2c46d067 |
| 08-Apr-2022 |
Christudasan Devadasan <Christudasan.Devadasan@amd.com> |
[AMDGPU][SIMachineFunctionInfo] Code cleanup (NFC).
|
#
8384ced9 |
| 28-Mar-2022 |
Changpeng Fang <Changpeng.Fang@amd.com> |
[AMDGPU][NFC]: Remove unnecessary MFI functions
Summary: hasHostcallPtr() and hasHeapPtr() are only used in metadata emit. However, we can use the corresponding function attributes directly instea
[AMDGPU][NFC]: Remove unnecessary MFI functions
Summary: hasHostcallPtr() and hasHeapPtr() are only used in metadata emit. However, we can use the corresponding function attributes directly instead introducing the functions.
Reviewers: arsenm
Differential Revision: https://reviews.llvm.org/D122600
show more ...
|
#
ca62b1db |
| 25-Feb-2022 |
Changpeng Fang <Changpeng.Fang@amd.com> |
[AMDGPU][NFC]: Emit metadata for hidden_heap_v1 kernarg
Summary: Emit metadata for hidden_heap_v1 kernarg
Reviewers: sameerds, b-sumner
Fixes: SWDEV-307188
Differential Revision: https://
[AMDGPU][NFC]: Emit metadata for hidden_heap_v1 kernarg
Summary: Emit metadata for hidden_heap_v1 kernarg
Reviewers: sameerds, b-sumner
Fixes: SWDEV-307188
Differential Revision: https://reviews.llvm.org/D119027
show more ...
|