[llvm] [SystemZ][z/OS] yaml2obj for header and end records (PR #73859)
James Henderson via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 30 00:46:57 PST 2023
================
@@ -0,0 +1,46 @@
+//===-- GOFFYAML.cpp - GOFF YAMLIO implementation ---------------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This file defines classes for handling the YAML representation of GOFF.
+//
+//===----------------------------------------------------------------------===//
+
+#include "llvm/ObjectYAML/GOFFYAML.h"
+#include "llvm/BinaryFormat/GOFF.h"
+#include <string.h>
+
+namespace llvm {
+namespace GOFFYAML {
+
+Object::Object() { memset(&Header, 0, sizeof(Header)); }
+
+} // namespace GOFFYAML
+
+namespace yaml {
+
+void MappingTraits<GOFFYAML::FileHeader>::mapping(
+ IO &IO, GOFFYAML::FileHeader &FileHdr) {
+ IO.mapOptional("TargetEnvironment", FileHdr.TargetEnvironment, 0);
+ IO.mapOptional("TargetOperatingSystem", FileHdr.TargetOperatingSystem, 0);
+ IO.mapOptional("CCSID", FileHdr.CCSID, 0);
+ IO.mapOptional("CharacterSetName", FileHdr.CharacterSetName, "");
+ IO.mapOptional("LanguageProductIdentifier", FileHdr.LanguageProductIdentifier,
+ "");
+ IO.mapOptional("ArchitectureLevel", FileHdr.ArchitectureLevel, 1);
+ IO.mapOptional("InternalCCSID", FileHdr.InternalCCSID);
+ IO.mapOptional("TargetSoftwareEnvironment",
----------------
jh7370 wrote:
I'd expect testing for setting each of these fields.
https://github.com/llvm/llvm-project/pull/73859
More information about the llvm-commits
mailing list