Mercurial > hg > CbC > CbC_llvm
diff lld/MachO/MachOStructs.h @ 207:2e18cbf3894f
LLVM12
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 08 Jun 2021 06:07:14 +0900 |
parents | |
children | c4bab56944e8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lld/MachO/MachOStructs.h Tue Jun 08 06:07:14 2021 +0900 @@ -0,0 +1,51 @@ +//===- MachOStructs.h -------------------------------------------*- 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 structures used in the MachO object file format. Note that +// unlike llvm/BinaryFormat/MachO.h, the structs here are defined in terms of +// endian- and alignment-compatibility wrappers. +// +//===----------------------------------------------------------------------===// + +#ifndef LLD_MACHO_MACHO_STRUCTS_H +#define LLD_MACHO_MACHO_STRUCTS_H + +#include "llvm/Support/Endian.h" + +namespace lld { + +namespace structs { + +struct nlist_64 { + llvm::support::ulittle32_t n_strx; + uint8_t n_type; + uint8_t n_sect; + llvm::support::ulittle16_t n_desc; + llvm::support::ulittle64_t n_value; +}; + +struct nlist { + llvm::support::ulittle32_t n_strx; + uint8_t n_type; + uint8_t n_sect; + llvm::support::ulittle16_t n_desc; + llvm::support::ulittle32_t n_value; +}; + +struct entry_point_command { + llvm::support::ulittle32_t cmd; + llvm::support::ulittle32_t cmdsize; + llvm::support::ulittle64_t entryoff; + llvm::support::ulittle64_t stacksize; +}; + +} // namespace structs + +} // namespace lld + +#endif