1 //===- lib/ReaderWriter/MachO/MachOPasses.h -------------------------------===//
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 #ifndef LLD_READER_WRITER_MACHO_PASSES_H
10 #define LLD_READER_WRITER_MACHO_PASSES_H
11 
12 #include "lld/Core/PassManager.h"
13 #include "lld/ReaderWriter/MachOLinkingContext.h"
14 
15 namespace lld {
16 namespace mach_o {
17 
18 void addLayoutPass(PassManager &pm, const MachOLinkingContext &ctx);
19 void addStubsPass(PassManager &pm, const MachOLinkingContext &ctx);
20 void addGOTPass(PassManager &pm, const MachOLinkingContext &ctx);
21 void addTLVPass(PassManager &pm, const MachOLinkingContext &ctx);
22 void addCompactUnwindPass(PassManager &pm, const MachOLinkingContext &ctx);
23 void addObjCPass(PassManager &pm, const MachOLinkingContext &ctx);
24 void addShimPass(PassManager &pm, const MachOLinkingContext &ctx);
25 
26 } // namespace mach_o
27 } // namespace lld
28 
29 #endif // LLD_READER_WRITER_MACHO_PASSES_H
30