From adf3e4f02e330e052dbb75e9601bae5273ccfe6c Mon Sep 17 00:00:00 2001 From: Richard-Qin-X Date: Wed, 12 Aug 2026 00:16:18 +0800 Subject: [MIR] Accept physical-only function live-ins --- backend/lib/MIR/MIRFunctionParser.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'backend/lib') diff --git a/backend/lib/MIR/MIRFunctionParser.cpp b/backend/lib/MIR/MIRFunctionParser.cpp index 68bc0aa..c8bba70 100644 --- a/backend/lib/MIR/MIRFunctionParser.cpp +++ b/backend/lib/MIR/MIRFunctionParser.cpp @@ -344,12 +344,14 @@ bool MIRDocumentParser::parseRegisters(const yaml::Node &Root, MachineFunction & std::optional Initial; if (const yaml::Node *VirtualNode = mappingValue(*Element, "virtual-reg")) { std::string_view Text; - Register Virtual; - if (scalar(*VirtualNode, Text, "virtual register") || - virtualRegister(Text, VirtualNode->range(), Context, Virtual)) { + if (scalar(*VirtualNode, Text, "virtual register")) return true; + if (!trim(Text).empty()) { + Register Virtual; + if (virtualRegister(Text, VirtualNode->range(), Context, Virtual)) + return true; + Initial = Virtual; } - Initial = Virtual; } auto AddResult = Function.registerInfo().addLiveIn(Reg, Initial); if (!AddResult) -- cgit v1.2.3