aboutsummaryrefslogtreecommitdiff
path: root/backend/lib
diff options
context:
space:
mode:
authorRichard-Qin-X <richard.qin.001@gmail.com>2026-08-12 00:11:19 +0800
committerRichard-Qin-X <richard.qin.001@gmail.com>2026-08-12 00:11:19 +0800
commita308176a15e60f04823ec5c05f4a164394f26d8f (patch)
tree5f180b0c369a5bf7046287242cdb1e861472f41b /backend/lib
parent9ae4dec7b8ce79587bde200fa8fadefe7f81d2bf (diff)
downloadrcc-project-a308176a15e60f04823ec5c05f4a164394f26d8f.tar.gz
rcc-project-a308176a15e60f04823ec5c05f4a164394f26d8f.tar.xz
[MIR] Accept unnamed stack objects
Diffstat (limited to 'backend/lib')
-rw-r--r--backend/lib/MIR/MIRFrameParser.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/backend/lib/MIR/MIRFrameParser.cpp b/backend/lib/MIR/MIRFrameParser.cpp
index 176bf25..4367fbd 100644
--- a/backend/lib/MIR/MIRFrameParser.cpp
+++ b/backend/lib/MIR/MIRFrameParser.cpp
@@ -108,9 +108,10 @@ bool MIRDocumentParser::parseStackObjects(const yaml::Node &Root, MachineFunctio
Description.Offset = 0;
if (const yaml::Node *NameNode = mappingValue(*Element, "name")) {
std::string_view Name;
- if (scalar(*NameNode, Name, "stack object name") || Name.empty())
- return fail(NameNode->range(), "stack object name cannot be empty");
- Description.AllocaName = std::string(Name);
+ if (scalar(*NameNode, Name, "stack object name"))
+ return true;
+ if (!Name.empty())
+ Description.AllocaName = std::string(Name);
}
if (const yaml::Node *TypeNode = mappingValue(*Element, "type")) {
std::string_view Type;