LCOV - code coverage report
Current view: top level - lib/CodeGen/AsmPrinter - WinCFGuard.h (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 3 5 60.0 %
Date: 2018-10-20 13:21:21 Functions: 3 5 60.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : //===-- WinCFGuard.h - Windows Control Flow Guard Handling ----*- C++ -*--===//
       2             : //
       3             : //                     The LLVM Compiler Infrastructure
       4             : //
       5             : // This file is distributed under the University of Illinois Open Source
       6             : // License. See LICENSE.TXT for details.
       7             : //
       8             : //===----------------------------------------------------------------------===//
       9             : //
      10             : // This file contains support for writing windows exception info into asm files.
      11             : //
      12             : //===----------------------------------------------------------------------===//
      13             : 
      14             : #ifndef LLVM_LIB_CODEGEN_ASMPRINTER_WINCFGUARD_H
      15             : #define LLVM_LIB_CODEGEN_ASMPRINTER_WINCFGUARD_H
      16             : 
      17             : #include "AsmPrinterHandler.h"
      18             : #include "llvm/Support/Compiler.h"
      19             : 
      20             : namespace llvm {
      21             : 
      22             : class LLVM_LIBRARY_VISIBILITY WinCFGuard : public AsmPrinterHandler {
      23             :   /// Target of directive emission.
      24             :   AsmPrinter *Asm;
      25             : 
      26             : public:
      27             :   WinCFGuard(AsmPrinter *A);
      28             :   ~WinCFGuard() override;
      29             : 
      30          13 :   void setSymbolSize(const MCSymbol *Sym, uint64_t Size) override {}
      31             : 
      32             :   /// Emit the Control Flow Guard function ID table
      33             :   void endModule() override;
      34             : 
      35             :   /// Gather pre-function debug information.
      36             :   /// Every beginFunction(MF) call should be followed by an endFunction(MF)
      37             :   /// call.
      38           7 :   void beginFunction(const MachineFunction *MF) override {}
      39             : 
      40             :   /// Gather post-function debug information.
      41             :   /// Please note that some AsmPrinter implementations may not call
      42             :   /// beginFunction at all.
      43           7 :   void endFunction(const MachineFunction *MF) override {}
      44             : 
      45             :   /// Process beginning of an instruction.
      46           0 :   void beginInstruction(const MachineInstr *MI) override {}
      47             : 
      48             :   /// Process end of an instruction.
      49           0 :   void endInstruction() override {}
      50             : };
      51             : 
      52             : } // namespace llvm
      53             : 
      54             : #endif

Generated by: LCOV version 1.13