Debug.h 524 B

1234567891011121314151617181920212223242526272829303132333435
  1. #ifndef _DEB_H
  2. #define _DEB_H
  3. // Local includes
  4. #include "Ast.h"
  5. #include "Lexer.h"
  6. using namespace llvm;
  7. namespace debugger {
  8. struct DebugObjects {
  9. public:
  10. static std::unique_ptr<DIBuilder> DBuilder;
  11. };
  12. namespace {
  13. class PrototypeAST;
  14. class ExprAST;
  15. }
  16. struct DebugInfo {
  17. DICompileUnit *TheCU;
  18. DIType *DblTy;
  19. std::vector<DIScope *> LexicalBlocks;
  20. void emitLocation(ExprAST *AST);
  21. DIType *getDoubleTy();
  22. } KSDbgInfo;
  23. static DISubroutineType *CreateFunctionType(unsigned NumArgs, DIFile *Unit);
  24. }
  25. #endif