Coverage Report

Created: 2023-10-30 17:15

/builds/2mk6rsew/0/parcoach/parcoach/src/aSSA/Instrumentation.h
Line
Count
Source
1
#pragma once
2
3
#include "parcoach/CollListFunctionAnalysis.h"
4
5
#include "llvm/Passes/PassBuilder.h"
6
7
namespace llvm {
8
class Function;
9
}
10
11
namespace parcoach {
12
13
struct ParcoachInstrumentationPass
14
    : public llvm::PassInfoMixin<ParcoachInstrumentationPass> {
15
  static llvm::PreservedAnalyses run(llvm::Module &M,
16
                                     llvm::ModuleAnalysisManager &AM);
17
5
  static bool isRequired() { return true; }
18
};
19
20
struct CollectiveInstrumentation {
21
  CollectiveInstrumentation(WarningCollection const &);
22
  bool run(llvm::Function &F);
23
24
private:
25
  WarningCollection const &Warnings;
26
};
27
} // namespace parcoach