LLVM 24.0.0git
ResetMachineFunctionPass.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/// \file
10/// This file contains the declaration of the ResetMachineFunctionPass class.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_CODEGEN_RESETMACHINEFUNCTIONPASS_H
15#define LLVM_CODEGEN_RESETMACHINEFUNCTIONPASS_H
16
18
19namespace llvm {
20
22 : public RequiredPassInfoMixin<ResetMachineFunctionPass> {
23 /// Tells whether or not this pass should emit a fallback
24 /// diagnostic when it resets a function.
25 bool EmitFallbackDiag = false;
26 /// Whether we should abort immediately instead of resetting the function.
27 bool AbortOnFailedISel = false;
28
29public:
30 ResetMachineFunctionPass(bool EmitFallbackDiag = false,
31 bool AbortOnFailedISel = false)
32 : EmitFallbackDiag(EmitFallbackDiag),
33 AbortOnFailedISel(AbortOnFailedISel) {}
34
37};
38
39} // namespace llvm
40
41#endif // LLVM_CODEGEN_RESETMACHINEFUNCTIONPASS_H
#define LLVM_ABI
Definition Compiler.h:215
A set of analyses that are preserved following a run of a transformation pass.
Definition Analysis.h:112
LLVM_ABI PreservedAnalyses run(MachineFunction &MF, MachineFunctionAnalysisManager &)
ResetMachineFunctionPass(bool EmitFallbackDiag=false, bool AbortOnFailedISel=false)
This is an optimization pass for GlobalISel generic memory operations.
AnalysisManager< MachineFunction > MachineFunctionAnalysisManager
A CRTP mix-in for passes that should not be skipped.