File indexing completed on 2026-05-10 08:44:45
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef LLVM_TRANSFORMS_OBJCARC_H
0015 #define LLVM_TRANSFORMS_OBJCARC_H
0016
0017 #include "llvm/IR/PassManager.h"
0018
0019 namespace llvm {
0020
0021 class Pass;
0022
0023
0024
0025
0026
0027 Pass *createObjCARCContractPass();
0028
0029 struct ObjCARCOptPass : public PassInfoMixin<ObjCARCOptPass> {
0030 PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
0031 };
0032
0033 struct ObjCARCContractPass : public PassInfoMixin<ObjCARCContractPass> {
0034 PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
0035 };
0036
0037 struct ObjCARCAPElimPass : public PassInfoMixin<ObjCARCAPElimPass> {
0038 PreservedAnalyses run(Module &M, ModuleAnalysisManager &AM);
0039 };
0040
0041 struct ObjCARCExpandPass : public PassInfoMixin<ObjCARCExpandPass> {
0042 PreservedAnalyses run(Function &M, FunctionAnalysisManager &AM);
0043 };
0044
0045 struct PAEvalPass : public PassInfoMixin<PAEvalPass> {
0046 PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM);
0047 };
0048
0049 }
0050
0051 #endif