Skip to content

Commit 287f6cd

Browse files
committed
[AMDGPU] Remove the support for non-True16 copies between different register sizes.
Differential Revision: https://reviews.llvm.org/D156985
1 parent 9971aef commit 287f6cd

File tree

2 files changed

+5
-48
lines changed

2 files changed

+5
-48
lines changed

llvm/lib/Target/AMDGPU/SIInstrInfo.cpp

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -733,18 +733,11 @@ void SIInstrInfo::copyPhysReg(MachineBasicBlock &MBB,
733733
// we remove Fix16BitCopies and this code block?
734734
if (Fix16BitCopies) {
735735
if (((Size == 16) != (SrcSize == 16))) {
736-
if (ST.hasTrue16BitInsts()) {
737-
// Non-VGPR Src and Dst will later be expanded back to 32 bits.
738-
MCRegister &RegToFix = (Size == 32) ? DestReg : SrcReg;
739-
MCRegister SubReg = RI.getSubReg(RegToFix, AMDGPU::lo16);
740-
RegToFix = SubReg;
741-
} else {
742-
MCRegister &RegToFix = (Size == 16) ? DestReg : SrcReg;
743-
MCRegister Super = RI.get32BitRegister(RegToFix);
744-
assert(RI.getSubReg(Super, AMDGPU::lo16) == RegToFix ||
745-
RI.getSubReg(Super, AMDGPU::hi16) == RegToFix);
746-
RegToFix = Super;
747-
}
736+
// Non-VGPR Src and Dst will later be expanded back to 32 bits.
737+
assert(ST.hasTrue16BitInsts());
738+
MCRegister &RegToFix = (Size == 32) ? DestReg : SrcReg;
739+
MCRegister SubReg = RI.getSubReg(RegToFix, AMDGPU::lo16);
740+
RegToFix = SubReg;
748741

749742
if (DestReg == SrcReg) {
750743
// Identity copy. Insert empty bundle since ExpandPostRA expects an

llvm/test/CodeGen/AMDGPU/lo16-32bit-physreg-copy.mir

Lines changed: 0 additions & 36 deletions
This file was deleted.

0 commit comments

Comments
 (0)