@@ -3839,7 +3839,7 @@ AMDGPUInstructionSelector::selectVOP3PModsImpl(
3839
3839
unsigned Mods = 0 ;
3840
3840
MachineInstr *MI = MRI.getVRegDef (Src);
3841
3841
3842
- if (MI && MI ->getOpcode () == AMDGPU::G_FNEG &&
3842
+ if (MI->getOpcode () == AMDGPU::G_FNEG &&
3843
3843
// It's possible to see an f32 fneg here, but unlikely.
3844
3844
// TODO: Treat f32 fneg as only high bit.
3845
3845
MRI.getType (Src) == LLT::fixed_vector (2 , 16 )) {
@@ -4662,24 +4662,24 @@ AMDGPUInstructionSelector::selectMUBUFScratchOffen(MachineOperand &Root) const {
4662
4662
// offsets.
4663
4663
std::optional<int > FI;
4664
4664
Register VAddr = Root.getReg ();
4665
- if (const MachineInstr *RootDef = MRI->getVRegDef (Root.getReg ())) {
4666
- Register PtrBase;
4667
- int64_t ConstOffset;
4668
- std::tie (PtrBase, ConstOffset) = getPtrBaseWithConstantOffset (VAddr, *MRI);
4669
- if (ConstOffset != 0 ) {
4670
- if (TII.isLegalMUBUFImmOffset (ConstOffset) &&
4671
- (!STI.privateMemoryResourceIsRangeChecked () ||
4672
- KB->signBitIsZero (PtrBase))) {
4673
- const MachineInstr *PtrBaseDef = MRI->getVRegDef (PtrBase);
4674
- if (PtrBaseDef->getOpcode () == AMDGPU::G_FRAME_INDEX)
4675
- FI = PtrBaseDef->getOperand (1 ).getIndex ();
4676
- else
4677
- VAddr = PtrBase;
4678
- Offset = ConstOffset;
4679
- }
4680
- } else if (RootDef->getOpcode () == AMDGPU::G_FRAME_INDEX) {
4681
- FI = RootDef->getOperand (1 ).getIndex ();
4665
+
4666
+ const MachineInstr *RootDef = MRI->getVRegDef (Root.getReg ());
4667
+ Register PtrBase;
4668
+ int64_t ConstOffset;
4669
+ std::tie (PtrBase, ConstOffset) = getPtrBaseWithConstantOffset (VAddr, *MRI);
4670
+ if (ConstOffset != 0 ) {
4671
+ if (TII.isLegalMUBUFImmOffset (ConstOffset) &&
4672
+ (!STI.privateMemoryResourceIsRangeChecked () ||
4673
+ KB->signBitIsZero (PtrBase))) {
4674
+ const MachineInstr *PtrBaseDef = MRI->getVRegDef (PtrBase);
4675
+ if (PtrBaseDef->getOpcode () == AMDGPU::G_FRAME_INDEX)
4676
+ FI = PtrBaseDef->getOperand (1 ).getIndex ();
4677
+ else
4678
+ VAddr = PtrBase;
4679
+ Offset = ConstOffset;
4682
4680
}
4681
+ } else if (RootDef->getOpcode () == AMDGPU::G_FRAME_INDEX) {
4682
+ FI = RootDef->getOperand (1 ).getIndex ();
4683
4683
}
4684
4684
4685
4685
return {{[=](MachineInstrBuilder &MIB) { // rsrc
@@ -4901,9 +4901,6 @@ AMDGPUInstructionSelector::selectMUBUFScratchOffset(
4901
4901
std::pair<Register, unsigned >
4902
4902
AMDGPUInstructionSelector::selectDS1Addr1OffsetImpl (MachineOperand &Root) const {
4903
4903
const MachineInstr *RootDef = MRI->getVRegDef (Root.getReg ());
4904
- if (!RootDef)
4905
- return std::pair (Root.getReg (), 0 );
4906
-
4907
4904
int64_t ConstAddr = 0 ;
4908
4905
4909
4906
Register PtrBase;
@@ -4966,9 +4963,6 @@ std::pair<Register, unsigned>
4966
4963
AMDGPUInstructionSelector::selectDSReadWrite2Impl (MachineOperand &Root,
4967
4964
unsigned Size) const {
4968
4965
const MachineInstr *RootDef = MRI->getVRegDef (Root.getReg ());
4969
- if (!RootDef)
4970
- return std::pair (Root.getReg (), 0 );
4971
-
4972
4966
int64_t ConstAddr = 0 ;
4973
4967
4974
4968
Register PtrBase;
0 commit comments