LCOV - code coverage report
Current view: top level - lib/MC - MCInstrAnalysis.cpp (source / functions) Hit Total Coverage
Test: llvm-toolchain.info Lines: 6 6 100.0 %
Date: 2017-09-14 15:23:50 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : //===- MCInstrAnalysis.cpp - InstrDesc target hooks -----------------------===//
       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             : #include "llvm/MC/MCInstrAnalysis.h"
      11             : #include "llvm/MC/MCInst.h"
      12             : #include "llvm/MC/MCInstrDesc.h"
      13             : #include "llvm/MC/MCInstrInfo.h"
      14             : #include <cstdint>
      15             : 
      16             : using namespace llvm;
      17             : 
      18      243679 : bool MCInstrAnalysis::evaluateBranch(const MCInst &Inst, uint64_t Addr,
      19             :                                      uint64_t Size, uint64_t &Target) const {
      20      487358 :   if (Inst.getNumOperands() == 0 ||
      21      487358 :       Info->get(Inst.getOpcode()).OpInfo[0].OperandType != MCOI::OPERAND_PCREL)
      22             :     return false;
      23             : 
      24      233778 :   int64_t Imm = Inst.getOperand(0).getImm();
      25      233778 :   Target = Addr+Size+Imm;
      26      233778 :   return true;
      27             : }

Generated by: LCOV version 1.13