LCOV - code coverage report
Current view: top level - include/llvm/MC - MCWasmObjectWriter.h (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 3 3 100.0 %
Date: 2018-10-20 13:21:21 Functions: 2 3 66.7 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : //===-- llvm/MC/MCWasmObjectWriter.h - Wasm Object Writer -------*- 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             : #ifndef LLVM_MC_MCWASMOBJECTWRITER_H
      11             : #define LLVM_MC_MCWASMOBJECTWRITER_H
      12             : 
      13             : #include "llvm/MC/MCObjectWriter.h"
      14             : #include <memory>
      15             : 
      16             : namespace llvm {
      17             : 
      18             : class MCFixup;
      19             : class MCValue;
      20             : class raw_pwrite_stream;
      21             : 
      22         302 : class MCWasmObjectTargetWriter : public MCObjectTargetWriter {
      23             :   const unsigned Is64Bit : 1;
      24             : 
      25             : protected:
      26             :   explicit MCWasmObjectTargetWriter(bool Is64Bit_);
      27             : 
      28             : public:
      29             :   virtual ~MCWasmObjectTargetWriter();
      30             : 
      31         307 :   virtual Triple::ObjectFormatType getFormat() const { return Triple::Wasm; }
      32             :   static bool classof(const MCObjectTargetWriter *W) {
      33             :     return W->getFormat() == Triple::Wasm;
      34             :   }
      35             : 
      36             :   virtual unsigned getRelocType(const MCValue &Target,
      37             :                                 const MCFixup &Fixup) const = 0;
      38             : 
      39             :   /// \name Accessors
      40             :   /// @{
      41           8 :   bool is64Bit() const { return Is64Bit; }
      42             :   /// @}
      43             : };
      44             : 
      45             : /// Construct a new Wasm writer instance.
      46             : ///
      47             : /// \param MOTW - The target specific Wasm writer subclass.
      48             : /// \param OS - The stream to write to.
      49             : /// \returns The constructed object writer.
      50             : std::unique_ptr<MCObjectWriter>
      51             : createWasmObjectWriter(std::unique_ptr<MCWasmObjectTargetWriter> MOTW,
      52             :                        raw_pwrite_stream &OS);
      53             : 
      54             : } // namespace llvm
      55             : 
      56             : #endif

Generated by: LCOV version 1.13