From 307fc0961972ac5264d6f3459978fbec95cad3a9 Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Wed, 19 Aug 2026 04:27:41 +0800 Subject: [RISCV][GlobalISel] Select and expand global addresses --- backend/lib/Target/RISCV/RISCVPipeline.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'backend/lib/Target/RISCV/RISCVPipeline.cpp') diff --git a/backend/lib/Target/RISCV/RISCVPipeline.cpp b/backend/lib/Target/RISCV/RISCVPipeline.cpp index f1de092..00a4398 100644 --- a/backend/lib/Target/RISCV/RISCVPipeline.cpp +++ b/backend/lib/Target/RISCV/RISCVPipeline.cpp @@ -12,6 +12,7 @@ #include "rcc/CodeGen/MachineCombiner.h" #include "rcc/CodeGen/MachineFunction.h" #include "rcc/CodeGen/MachineOptimizationPipeline.h" +#include "rcc/CodeGen/MachinePseudoExpansion.h" #include "rcc/CodeGen/PHIElimination.h" #include "rcc/CodeGen/RegAllocPBQP.h" #include "rcc/CodeGen/TargetDescription.h" @@ -65,7 +66,10 @@ template } [[nodiscard]] Expected addRegisterAllocationPipeline(MachineFunctionPassManager &Pipeline) { - auto Added = addPreRegisterAllocationOptimizationPipeline(Pipeline, optimizationPipelineInfo()); + auto Added = addPass(Pipeline, pseudoExpansionInfo()); + if (!Added) + return std::unexpected(Added.error()); + Added = addPreRegisterAllocationOptimizationPipeline(Pipeline, optimizationPipelineInfo()); if (!Added) return std::unexpected(Added.error()); return addPass(Pipeline, registerAllocationInfo()); -- cgit v1.2.3