LLVM 22.0.0git
RegisterTargetPassConfigCallback.h
Go to the documentation of this file.
1//===----------------------------------------------------------------------===//
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/// This file contains the registry for PassConfigCallbacks that enable changes
10/// to the TargetPassConfig during the initialization of TargetMachine.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_TARGET_REGISTERTARGETPASSCONFIGCALLBACK_H
15#define LLVM_TARGET_REGISTERTARGETPASSCONFIGCALLBACK_H
16
17#include "TargetMachine.h"
19
20namespace llvm {
21
23 std::function<void(TargetMachine &, PassManagerBase &, TargetPassConfig *)>;
24
32
33LLVM_ABI void
35 TargetPassConfig *PassConfig);
36} // namespace llvm
37
38#endif // LLVM_TARGET_REGISTERTARGETPASSCONFIGCALLBACK_H
#define LLVM_ABI
Definition Compiler.h:213
LLVM_ABI RegisterTargetPassConfigCallback(PassConfigCallback &&C)
Primary interface to the complete machine description for the target machine.
Target-Independent Code Generator Pass Configuration Options.
PassManagerBase - An abstract interface to allow code to add passes to a pass manager without having ...
@ C
The default llvm calling convention, compatible with C.
Definition CallingConv.h:34
This is an optimization pass for GlobalISel generic memory operations.
std::function< void(TargetMachine &, PassManagerBase &, TargetPassConfig *)> PassConfigCallback
LLVM_ABI void invokeGlobalTargetPassConfigCallbacks(TargetMachine &TM, PassManagerBase &PM, TargetPassConfig *PassConfig)