[llvm] [Hexagon] Do not co-packetize scalar FP/mpy def with a consuming transfer of control (PR #227178)
Brian Cain via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 29 19:50:12 PDT 2026
================
@@ -474,6 +474,15 @@ class HexagonInstrInfo : public HexagonGenInstrInfo {
short getEquivalentHWInstr(const MachineInstr &MI) const;
unsigned getInstrTimingClassLatency(const InstrItineraryData *ItinData,
const MachineInstr &MI) const;
+ /// Return true if \p DefMI defines \p Reg (or a super-register of it) with
+ /// a scheduling class whose per-operand write latency prevents packetizing
+ /// the def with a consumer that reads \p Reg in the same packet (currently
+ /// scalar floating-point TC4x classes, whose writes commit after the point
+ /// at which a co-packetized call transfers control). \p UseMI is retained
----------------
androm3da wrote:
> currently scalar floating-point TC4x classes, whose writes commit after the point at which a co-packetized call transfers control
does this comment agree with the implementation?
```c++
return is_TC3x(SchedClass) || is_TC4x(SchedClass);
```
https://github.com/llvm/llvm-project/pull/227178
More information about the llvm-commits
mailing list