[llvm] [RISCV] Add Stackmap/Statepoint/Patchpoint support with targets (PR #77337)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 12 09:53:09 PST 2024


================
@@ -1524,9 +1524,14 @@ unsigned RISCVInstrInfo::getInstSizeInBytes(const MachineInstr &MI) const {
   case TargetOpcode::PATCHPOINT:
     // The size of the patchpoint intrinsic is the number of bytes requested
     return PatchPointOpers(&MI).getNumPatchBytes();
-  case TargetOpcode::STATEPOINT:
+  case TargetOpcode::STATEPOINT: {
     // The size of the statepoint intrinsic is the number of bytes requested
-    return StatepointOpers(&MI).getNumPatchBytes();
+    unsigned NumBytes = StatepointOpers(&MI).getNumPatchBytes();
+    // A statepoint is at least a PseudoCALL
+    if (NumBytes < 8)
----------------
topperc wrote:

`return std::max(NumBytes, 8U)`?

https://github.com/llvm/llvm-project/pull/77337


More information about the llvm-commits mailing list