xref: /llvm-project/bolt/include/bolt/Rewrite/MetadataRewriters.h (revision 8ea59ec6077e85c457b27b406a679ab9d5827387)
1 //===- bolt/Rewrite/MetadataRewriters.h -------------------------*- 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 #ifndef BOLT_REWRITE_METADATA_REWRITERS_H
10 #define BOLT_REWRITE_METADATA_REWRITERS_H
11 
12 #include <memory>
13 
14 namespace llvm {
15 namespace bolt {
16 
17 class MetadataRewriter;
18 class BinaryContext;
19 
20 // The list of rewriter build functions.
21 
22 std::unique_ptr<MetadataRewriter> createLinuxKernelRewriter(BinaryContext &);
23 
24 std::unique_ptr<MetadataRewriter> createBuildIDRewriter(BinaryContext &);
25 
26 std::unique_ptr<MetadataRewriter> createPseudoProbeRewriter(BinaryContext &);
27 
28 std::unique_ptr<MetadataRewriter> createSDTRewriter(BinaryContext &);
29 
30 } // namespace bolt
31 } // namespace llvm
32 
33 #endif // BOLT_REWRITE_METADATA_REWRITERS_H
34