[llvm-branch-commits] [llvm] 88c69e5 - [Object][GOFF] Recognize RLD and LEN records (#207118)
Douglas Yung via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Thu Jul 16 09:28:04 PDT 2026
Author: Amy Kwan
Date: 2026-07-16T16:27:50Z
New Revision: 88c69e55f3da48bcebdb425f54431f80ce457c8d
URL: https://github.com/llvm/llvm-project/commit/88c69e55f3da48bcebdb425f54431f80ce457c8d
DIFF: https://github.com/llvm/llvm-project/commit/88c69e55f3da48bcebdb425f54431f80ce457c8d.diff
LOG: [Object][GOFF] Recognize RLD and LEN records (#207118)
This patch adds explicit cases for RT_RLD and RT_LEN records when
parsing GOFF objects. These record types are not handled yet, but
recognizing them allows us to diagnose them and avoids teating them as
unexpected records.
(cherry picked from commit c40401dd8d28e88519433531c041b0b7e5ada8a9)
Added:
Modified:
llvm/lib/Object/GOFFObjectFile.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Object/GOFFObjectFile.cpp b/llvm/lib/Object/GOFFObjectFile.cpp
index 4ee51a61c14fa..057d3fc208c9b 100644
--- a/llvm/lib/Object/GOFFObjectFile.cpp
+++ b/llvm/lib/Object/GOFFObjectFile.cpp
@@ -170,6 +170,12 @@ GOFFObjectFile::GOFFObjectFile(MemoryBufferRef Object, Error &Err)
TextPtrs.emplace_back(I);
LLVM_DEBUG(dbgs() << " -- TXT\n");
break;
+ case GOFF::RT_RLD:
+ LLVM_DEBUG(dbgs() << " -- RLD (GOFF record type) unhandled\n");
+ break;
+ case GOFF::RT_LEN:
+ LLVM_DEBUG(dbgs() << " -- LEN (GOFF record type) unhandled\n");
+ break;
case GOFF::RT_END:
LLVM_DEBUG(dbgs() << " -- END (GOFF record type) unhandled\n");
break;
@@ -177,7 +183,10 @@ GOFFObjectFile::GOFFObjectFile(MemoryBufferRef Object, Error &Err)
LLVM_DEBUG(dbgs() << " -- HDR (GOFF record type) unhandled\n");
break;
default:
- llvm_unreachable("Unknown record type");
+ Err = createStringError(object_error::parse_failed,
+ "record %zu has unknown record type 0x%02" PRIX8,
+ RecordNum, RecordType);
+ return;
}
PrevRecordType = RecordType;
PrevContinuationBits = I[1] & 0x03;
More information about the llvm-branch-commits
mailing list