File tree Expand file tree Collapse file tree 3 files changed +231
-217
lines changed Expand file tree Collapse file tree 3 files changed +231
-217
lines changed Original file line number Diff line number Diff line change @@ -4329,3 +4329,15 @@ RISCVInstrInfo::analyzeLoopForPipelining(MachineBasicBlock *LoopBB) const {
43294329
43304330 return std::make_unique<RISCVPipelinerLoopInfo>(LHS, RHS, Cond);
43314331}
4332+
4333+ bool RISCVInstrInfo::isSchedulingBoundary (const MachineInstr &MI,
4334+ const MachineBasicBlock *MBB,
4335+ const MachineFunction &MF) const {
4336+ if (MI.getOpcode () == RISCV::ESP_VST_128_IP ||
4337+ MI.getOpcode () == RISCV::ESP_VST_L_64_IP ||
4338+ MI.getOpcode () == RISCV::ESP_VST_H_64_IP ||
4339+ MI.getOpcode () == RISCV::ESP_VLDBC_8_IP ||
4340+ MI.getOpcode () == RISCV::ESP_ZERO_Q)
4341+ return true ;
4342+ return TargetInstrInfo::isSchedulingBoundary (MI, MBB, MF);
4343+ }
Original file line number Diff line number Diff line change @@ -141,6 +141,10 @@ class RISCVInstrInfo : public RISCVGenInstrInfo {
141141 bool
142142 reverseBranchCondition (SmallVectorImpl<MachineOperand> &Cond) const override ;
143143
144+ bool isSchedulingBoundary (const MachineInstr &MI,
145+ const MachineBasicBlock *MBB,
146+ const MachineFunction &MF) const override ;
147+
144148 bool optimizeCondBranch (MachineInstr &MI) const override ;
145149
146150 MachineBasicBlock *getBranchDestBlock (const MachineInstr &MI) const override ;
You can’t perform that action at this time.
0 commit comments