aboutsummaryrefslogtreecommitdiff
path: root/backend/include
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-13 19:03:08 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-13 19:03:08 +0800
commit1ecaa5028a39cdfd9b9590053d802e8049d346d5 (patch)
tree48729f14d438c7bf9b8c764a0807b3fbd3fe1a8b /backend/include
parent5794302adc3ce94c69318965b1bbef7a895d5d41 (diff)
downloadrcc-project-1ecaa5028a39cdfd9b9590053d802e8049d346d5.tar.gz
rcc-project-1ecaa5028a39cdfd9b9590053d802e8049d346d5.tar.xz
[MIR] Omit predictable successors in simplified output
Diffstat (limited to 'backend/include')
-rw-r--r--backend/include/rcc/CodeGen/MIRPrinter.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/backend/include/rcc/CodeGen/MIRPrinter.h b/backend/include/rcc/CodeGen/MIRPrinter.h
index bb87509..4c20bed 100644
--- a/backend/include/rcc/CodeGen/MIRPrinter.h
+++ b/backend/include/rcc/CodeGen/MIRPrinter.h
@@ -7,10 +7,12 @@
#include "rcc/Support/Error.h"
#include <string>
+#include <vector>
namespace rcc {
class MachineFunction;
+class MachineBasicBlock;
class TargetDescription;
namespace mir {
@@ -24,6 +26,11 @@ struct MIPrinterOptions final {
MIPrintMode Mode = MIPrintMode::Complete;
};
+[[nodiscard]] Expected<void> guessSuccessors(const MachineBasicBlock &Block,
+ const TargetDescription &Target,
+ std::vector<MachineBasicBlock *> &Result,
+ bool &IsFallthrough);
+
[[nodiscard]] Expected<std::string> printMachineFunctionBody(const MachineFunction &Function,
const TargetDescription &Target,
const MIParserContext &Context = {},