diff options
| author | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-12 03:22:55 +0800 |
|---|---|---|
| committer | Richard-Qin-X <richard.qin.001@gmail.com> | 2026-08-12 03:22:55 +0800 |
| commit | 59f948dbb4fcbbb2456db92a55d307cdfbfd8307 (patch) | |
| tree | daf0517cf840091eb92bed0096c5b3ee110c29d7 /backend/lib/MIR/MIParser.cpp | |
| parent | 888e9b5bb57a79f4eee88a7926cb859e04823361 (diff) | |
| download | rcc-project-59f948dbb4fcbbb2456db92a55d307cdfbfd8307.tar.gz rcc-project-59f948dbb4fcbbb2456db92a55d307cdfbfd8307.tar.xz | |
[MIR] Remove alternate layout and float APIs
Diffstat (limited to 'backend/lib/MIR/MIParser.cpp')
| -rw-r--r-- | backend/lib/MIR/MIParser.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/backend/lib/MIR/MIParser.cpp b/backend/lib/MIR/MIParser.cpp index f634119..3748187 100644 --- a/backend/lib/MIR/MIParser.cpp +++ b/backend/lib/MIR/MIParser.cpp @@ -621,16 +621,12 @@ bool MIParser::Impl::parseScalarLowLevelType(const MIToken &TypeToken, LLT &Resu Created = LLT::makeFloat(FloatSemantics::BFloat); break; case ScalarKind::Pointer: - if (Context.PointerSizeInBits) { - auto PointerSize = Context.PointerSizeInBits(static_cast<std::uint32_t>(Value)); - if (!PointerSize) - return importError(TypeToken, PointerSize.error()); - Created = LLT::makePointer(Value, *PointerSize); - break; - } - if (Context.DefaultPointerSizeInBits == 0) + if (!Context.PointerSizeInBits) return fail(TypeToken, "pointer low-level type requires an explicit pointer size"); - Created = LLT::makePointer(Value, Context.DefaultPointerSizeInBits); + if (auto PointerSize = Context.PointerSizeInBits(static_cast<std::uint32_t>(Value))) + Created = LLT::makePointer(Value, *PointerSize); + else + return importError(TypeToken, PointerSize.error()); break; } if (!Created) @@ -1722,9 +1718,7 @@ bool MIParser::Impl::parseMemoryBase(MemoryBase &Result, std::int64_t &Offset) { advance(); break; case MITokenKind::QuotedIRValue: { - LLVMConstantSyntaxOptions ConstantOptions; - ConstantOptions.DefaultPointerSizeInBits = Context.DefaultPointerSizeInBits; - auto Constant = parseLLVMConstant(BaseToken.stringValue(), ConstantOptions); + auto Constant = parseLLVMConstant(BaseToken.stringValue()); if (!Constant) return importError(BaseToken, Constant.error()); auto Base = MemoryBase::irConstant(std::move(*Constant)); |
