16 #ifndef LLVM_TRANSFORMS_INSTRUMENTATION_DEBUGIR_H
17 #define LLVM_TRANSFORMS_INSTRUMENTATION_DEBUGIR_H
26 bool WriteSourceToDisk;
30 bool HideDebugIntrinsics;
31 bool HideDebugMetadata;
34 std::string Directory;
50 DebugIR(
bool HideDebugIntrinsics,
bool HideDebugMetadata,
53 HideDebugIntrinsics(HideDebugIntrinsics),
54 HideDebugMetadata(HideDebugMetadata), Directory(Directory),
55 Filename(Filename), GeneratedPath(
false), ParsedPath(
false) {}
70 std::string getPath();
94 void writeDebugBitcode(
const llvm::Module *M,
int *fd = 0);
99 #endif // LLVM_TRANSFORMS_INSTRUMENTATION_DEBUGIR_H
const char * getPassName() const
The main container class for the LLVM Intermediate Representation.
bool runOnModule(llvm::Module &M, std::string &Path)
Run pass on M and set Path to the source file path in the output module.
DebugIR(bool HideDebugIntrinsics, bool HideDebugMetadata, llvm::StringRef Directory, llvm::StringRef Filename)