From 71988f9818677df0d90b19d4bb770ac8a6116e62 Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Tue, 25 Aug 2026 02:21:25 +0800 Subject: [CodeGen] Implement RISC-V machine outlining --- backend/include/rcc/MIR/EmbeddedIR.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'backend/include/rcc/MIR/EmbeddedIR.h') diff --git a/backend/include/rcc/MIR/EmbeddedIR.h b/backend/include/rcc/MIR/EmbeddedIR.h index 022f121..80e512a 100644 --- a/backend/include/rcc/MIR/EmbeddedIR.h +++ b/backend/include/rcc/MIR/EmbeddedIR.h @@ -58,6 +58,22 @@ public: return IsUnnamed; } + [[nodiscard]] bool hasLinkOnceODRLinkage() const noexcept { + return HasLinkOnceODRLinkage; + } + + [[nodiscard]] bool hasSection() const noexcept { + return HasSection; + } + + [[nodiscard]] bool hasComdat() const noexcept { + return HasComdat; + } + + [[nodiscard]] bool hasSectionPrefix() const noexcept { + return HasSectionPrefix; + } + [[nodiscard]] std::span blocks() const noexcept { return Blocks; } @@ -87,6 +103,10 @@ private: TextRange NameRange; bool IsDefinition = false; bool IsUnnamed = false; + bool HasLinkOnceODRLinkage = false; + bool HasSection = false; + bool HasComdat = false; + bool HasSectionPrefix = false; std::uint64_t NextUnnamedSlot = 0; std::vector Blocks; std::vector Allocas; -- cgit v1.2.3