[llvm] [GOFF] Refactor writing GOFF records (PR #93855)
Kai Nacke via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 7 10:18:48 PDT 2024
================
@@ -62,119 +63,90 @@ ZerosImpl zeros(const size_t NumBytes) { return ZerosImpl{NumBytes}; }
// The GOFFOstream is responsible to write the data into the fixed physical
// records of the format. A user of this class announces the start of a new
-// logical record and the size of its payload. While writing the payload, the
-// physical records are created for the data. Possible fill bytes at the end of
-// a physical record are written automatically.
-class GOFFOstream : public raw_ostream {
+// logical record, and writes the full logical block. The physical records are
+// created while the content is written to the underlying stream. Possible fill
+// bytes at the end of a physical record are written automatically.
+// The implementation aims at simplicity, not speed.
+class GOFFOStream {
public:
- explicit GOFFOstream(raw_ostream &OS)
- : OS(OS), LogicalRecords(0), RemainingSize(0), NewLogicalRecord(false) {
- SetBufferSize(GOFF::PayloadLength);
- }
-
- ~GOFFOstream() { finalize(); }
+ explicit GOFFOStream(raw_ostream &OS)
+ : OS(OS), CurrentType(GOFF::RecordType(-1)) {}
----------------
redstar wrote:
Removed, since there is no need for a special magic number.
https://github.com/llvm/llvm-project/pull/93855
More information about the llvm-commits
mailing list