LLVM 20.0.0git
MachOObjectFormat.h
Go to the documentation of this file.
1//===---- MachOObjectFormat.h - MachO format details for ORC ----*- C++ -*-===//
2//
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
6//
7//===----------------------------------------------------------------------===//
8//
9// ORC-specific MachO object format details.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_EXECUTIONENGINE_ORC_SHARED_MACHOOBJECTFORMAT_H
14#define LLVM_EXECUTIONENGINE_ORC_SHARED_MACHOOBJECTFORMAT_H
15
16#include "llvm/ADT/StringRef.h"
17
18namespace llvm {
19namespace orc {
20
21// FIXME: Move these to BinaryFormat?
22
23// MachO section names.
24
25extern StringRef MachODataCommonSectionName;
26extern StringRef MachODataDataSectionName;
27extern StringRef MachOEHFrameSectionName;
29extern StringRef MachOCStringSectionName;
30extern StringRef MachOModInitFuncSectionName;
31extern StringRef MachOObjCCatListSectionName;
32extern StringRef MachOObjCCatList2SectionName;
33extern StringRef MachOObjCClassListSectionName;
34extern StringRef MachOObjCClassNameSectionName;
35extern StringRef MachOObjCClassRefsSectionName;
36extern StringRef MachOObjCConstSectionName;
37extern StringRef MachOObjCDataSectionName;
38extern StringRef MachOObjCImageInfoSectionName;
39extern StringRef MachOObjCMethNameSectionName;
40extern StringRef MachOObjCMethTypeSectionName;
41extern StringRef MachOObjCNLCatListSectionName;
42extern StringRef MachOObjCNLClassListSectionName;
43extern StringRef MachOObjCProtoListSectionName;
44extern StringRef MachOObjCProtoRefsSectionName;
45extern StringRef MachOObjCSelRefsSectionName;
46extern StringRef MachOSwift5ProtoSectionName;
47extern StringRef MachOSwift5ProtosSectionName;
48extern StringRef MachOSwift5TypesSectionName;
49extern StringRef MachOSwift5TypeRefSectionName;
51extern StringRef MachOSwift5EntrySectionName;
52extern StringRef MachOTextTextSectionName;
53extern StringRef MachOThreadBSSSectionName;
54extern StringRef MachOThreadDataSectionName;
55extern StringRef MachOThreadVarsSectionName;
56
57extern StringRef MachOInitSectionNames[22];
58
59bool isMachOInitializerSection(StringRef SegName, StringRef SecName);
61
62} // end namespace orc
63} // end namespace llvm
64
65#endif // LLVM_EXECUTIONENGINE_ORC_SHARED_MACHOOBJECTFORMAT_H
StringRef MachOSwift5EntrySectionName
StringRef MachOThreadBSSSectionName
StringRef MachOThreadVarsSectionName
StringRef MachOCompactUnwindInfoSectionName
StringRef MachOObjCProtoListSectionName
StringRef MachOSwift5ProtosSectionName
StringRef MachOEHFrameSectionName
StringRef MachOModInitFuncSectionName
StringRef MachOObjCConstSectionName
StringRef MachODataDataSectionName
StringRef MachOSwift5ProtoSectionName
bool isMachOInitializerSection(StringRef SegName, StringRef SecName)
StringRef MachOObjCCatListSectionName
StringRef MachOObjCClassRefsSectionName
StringRef MachOObjCDataSectionName
StringRef MachOObjCClassNameSectionName
StringRef MachOObjCMethNameSectionName
StringRef MachOInitSectionNames[22]
StringRef MachOObjCClassListSectionName
StringRef MachOObjCSelRefsSectionName
StringRef MachOTextTextSectionName
StringRef MachOSwift5FieldMetadataSectionName
StringRef MachOCStringSectionName
StringRef MachOObjCMethTypeSectionName
StringRef MachOSwift5TypesSectionName
StringRef MachOObjCNLCatListSectionName
StringRef MachOObjCNLClassListSectionName
StringRef MachOObjCImageInfoSectionName
StringRef MachOThreadDataSectionName
StringRef MachODataCommonSectionName
StringRef MachOObjCProtoRefsSectionName
StringRef MachOSwift5TypeRefSectionName
StringRef MachOObjCCatList2SectionName
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18