[all-commits] [llvm/llvm-project] f4e8cf: [AMDGPU] Select no-return ds_* atomic ops in tblgen.
Abinav Puthan Purayil via All-commits
all-commits at lists.llvm.org
Wed Feb 9 19:57:30 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: f4e8cf25af3a4969619f4482339115aeda5abbce
https://github.com/llvm/llvm-project/commit/f4e8cf25af3a4969619f4482339115aeda5abbce
Author: Abinav Puthan Purayil <abinav.puthanpurayil at amd.com>
Date: 2022-02-10 (Thu, 10 Feb 2022)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
Log Message:
-----------
[AMDGPU] Select no-return ds_* atomic ops in tblgen.
SelectionDAG relies on MachineInstr's HasPostISelHook for selecting the
no-return atomic ops. GlobalISel, at the moment, doesn't handle
HasPostISelHook.
This change adds the selection for no-return ds_* atomic ops in tblgen
so that it can work with both GlobalISel and SelectionDAG. I couldn't
add the predicates for GlobalISel in this change since there's a
restriction in GlobalISelEmitter that disallows selecting generic
atomics ops that return with instructions that doesn't return.
We can't remove the HasPostISelHook code that selects the no return
atomic ops in SelectionDAG yet since we still need to cover selections
in FLATInstructions.td, BUFInstructions.td.
Differential Revision: https://reviews.llvm.org/D115881
More information about the All-commits
mailing list