LLVM 20.0.0git
CFIFixup.h
Go to the documentation of this file.
1//===-- CFIFixup.h - Insert CFI remember/restore instructions ---*- 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/// \file
10/// Contains definition of the base CFIFixup pass.
11///
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_CODEGEN_CFIFIXUP_H
15#define LLVM_CODEGEN_CFIFIXUP_H
16
19
20namespace llvm {
22public:
23 static char ID;
24
27 }
28
29 void getAnalysisUsage(AnalysisUsage &AU) const override {
30 AU.setPreservesAll();
32 }
33
34 bool runOnMachineFunction(MachineFunction &MF) override;
35};
36} // namespace llvm
37
38#endif // LLVM_CODEGEN_CFIFIXUP_H
Represent the analysis usage information of a pass.
void setPreservesAll()
Set by analyses that do not transform their input at all.
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - This function should be overriden by passes that need analysis information to do t...
Definition: CFIFixup.h:29
bool runOnMachineFunction(MachineFunction &MF) override
runOnMachineFunction - This method must be overloaded to perform the desired machine code transformat...
Definition: CFIFixup.cpp:184
static char ID
Definition: CFIFixup.h:23
MachineFunctionPass - This class adapts the FunctionPass interface to allow convenient creation of pa...
void getAnalysisUsage(AnalysisUsage &AU) const override
getAnalysisUsage - Subclasses that override getAnalysisUsage must call this.
static PassRegistry * getPassRegistry()
getPassRegistry - Access the global registry object, which is automatically initialized at applicatio...
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
void initializeCFIFixupPass(PassRegistry &)