#include "llvm/Analysis/CFG.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/PassManager.h"
#include "llvm/Passes/PassBuilder.h"
#include "llvm/Passes/PassPlugin.h"
#include "llvm/Support/raw_ostream.h"
// only needed for printing
#include
using namespace llvm;
namespace {
struct FirstModulePass : public PassInfoMixin {
PreservedAnalyses run(Module &M, ModuleAnalysisManager &FAM) {
// What we intend do do in the pass starts here.
errs()