1 //===- XCOFFObject.h --------------------------------------------*- C++ -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 #ifndef LLVM_LIB_OBJCOPY_XCOFF_XCOFFOBJECT_H
10 #define LLVM_LIB_OBJCOPY_XCOFF_XCOFFOBJECT_H
12 #include "llvm/ADT/ArrayRef.h"
13 #include "llvm/ADT/StringRef.h"
14 #include "llvm/Object/XCOFFObjectFile.h"
21 using namespace object
;
24 XCOFFSectionHeader32 SectionHeader
;
25 ArrayRef
<uint8_t> Contents
;
26 std::vector
<XCOFFRelocation32
> Relocations
;
30 XCOFFSymbolEntry32 Sym
;
31 // For now, each auxiliary symbol is only an opaque binary blob with no
33 StringRef AuxSymbolEntries
;
37 XCOFFFileHeader32 FileHeader
;
38 XCOFFAuxiliaryHeader32 OptionalFileHeader
;
39 std::vector
<Section
> Sections
;
40 std::vector
<Symbol
> Symbols
;
41 StringRef StringTable
;
44 } // end namespace xcoff
45 } // end namespace objcopy
46 } // end namespace llvm
48 #endif // LLVM_LIB_OBJCOPY_XCOFF_XCOFFOBJECT_H