LLVM 19.0.0git
ObjectFormats.h
Go to the documentation of this file.
1//===------ ObjectFormats.h - Object 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 object format details.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_EXECUTIONENGINE_ORC_SHARED_OBJECTFORMATS_H
14#define LLVM_EXECUTIONENGINE_ORC_SHARED_OBJECTFORMATS_H
15
16#include "llvm/ADT/StringRef.h"
17
18namespace llvm {
19namespace orc {
20
21// MachO section names.
22
23extern StringRef MachODataCommonSectionName;
24extern StringRef MachODataDataSectionName;
25extern StringRef MachOEHFrameSectionName;
27extern StringRef MachOCStringSectionName;
28extern StringRef MachOModInitFuncSectionName;
29extern StringRef MachOObjCCatListSectionName;
30extern StringRef MachOObjCCatList2SectionName;
31extern StringRef MachOObjCClassListSectionName;
32extern StringRef MachOObjCClassNameSectionName;
33extern StringRef MachOObjCClassRefsSectionName;
34extern StringRef MachOObjCConstSectionName;
35extern StringRef MachOObjCDataSectionName;
36extern StringRef MachOObjCImageInfoSectionName;
37extern StringRef MachOObjCMethNameSectionName;
38extern StringRef MachOObjCMethTypeSectionName;
39extern StringRef MachOObjCNLCatListSectionName;
40extern StringRef MachOObjCSelRefsSectionName;
41extern StringRef MachOSwift5ProtoSectionName;
42extern StringRef MachOSwift5ProtosSectionName;
43extern StringRef MachOSwift5TypesSectionName;
44extern StringRef MachOSwift5TypeRefSectionName;
46extern StringRef MachOSwift5EntrySectionName;
47extern StringRef MachOThreadBSSSectionName;
48extern StringRef MachOThreadDataSectionName;
49extern StringRef MachOThreadVarsSectionName;
50
51extern StringRef MachOInitSectionNames[19];
52
53// ELF section names.
54extern StringRef ELFEHFrameSectionName;
55
56extern StringRef ELFInitArrayFuncSectionName;
57extern StringRef ELFInitFuncSectionName;
58extern StringRef ELFFiniArrayFuncSectionName;
59extern StringRef ELFFiniFuncSectionName;
60extern StringRef ELFCtorArrayFuncSectionName;
61extern StringRef ELFDtorArrayFuncSectionName;
62
63extern StringRef ELFInitSectionNames[3];
64
65extern StringRef ELFThreadBSSSectionName;
66extern StringRef ELFThreadDataSectionName;
67
68bool isMachOInitializerSection(StringRef SegName, StringRef SecName);
70
71bool isELFInitializerSection(StringRef SecName);
72
73bool isCOFFInitializerSection(StringRef Name);
74
75} // end namespace orc
76} // end namespace llvm
77
78#endif // LLVM_EXECUTIONENGINE_ORC_SHARED_MEMORYFLAGS_H
std::string Name
StringRef ELFThreadBSSSectionName
StringRef MachOSwift5EntrySectionName
StringRef MachOThreadBSSSectionName
StringRef MachOThreadVarsSectionName
StringRef ELFCtorArrayFuncSectionName
StringRef ELFFiniFuncSectionName
StringRef ELFInitSectionNames[3]
StringRef MachOCompactUnwindInfoSectionName
StringRef ELFEHFrameSectionName
StringRef MachOSwift5ProtosSectionName
StringRef MachOEHFrameSectionName
StringRef MachOModInitFuncSectionName
StringRef MachOInitSectionNames[19]
StringRef MachOObjCConstSectionName
StringRef MachODataDataSectionName
StringRef MachOSwift5ProtoSectionName
bool isMachOInitializerSection(StringRef SegName, StringRef SecName)
StringRef MachOObjCCatListSectionName
StringRef MachOObjCClassRefsSectionName
StringRef ELFFiniArrayFuncSectionName
StringRef MachOObjCDataSectionName
StringRef MachOObjCClassNameSectionName
StringRef MachOObjCMethNameSectionName
StringRef MachOObjCClassListSectionName
StringRef MachOObjCSelRefsSectionName
StringRef MachOSwift5FieldMetadataSectionName
StringRef MachOCStringSectionName
StringRef MachOObjCMethTypeSectionName
StringRef MachOSwift5TypesSectionName
StringRef MachOObjCNLCatListSectionName
StringRef ELFThreadDataSectionName
StringRef ELFInitArrayFuncSectionName
StringRef MachOObjCImageInfoSectionName
StringRef MachOThreadDataSectionName
StringRef MachODataCommonSectionName
bool isCOFFInitializerSection(StringRef Name)
StringRef MachOSwift5TypeRefSectionName
bool isELFInitializerSection(StringRef SecName)
StringRef ELFInitFuncSectionName
StringRef MachOObjCCatList2SectionName
StringRef ELFDtorArrayFuncSectionName
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18