Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/IR/OperandTraits.h
Line
Count
Source
1
//===-- llvm/OperandTraits.h - OperandTraits class definition ---*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
// This file defines the traits classes that are handy for enforcing the correct
10
// layout of various User subclasses. It also provides the means for accessing
11
// the operands in the most efficient manner.
12
//
13
14
#ifndef LLVM_IR_OPERANDTRAITS_H
15
#define LLVM_IR_OPERANDTRAITS_H
16
17
#include "llvm/IR/User.h"
18
19
namespace llvm {
20
21
//===----------------------------------------------------------------------===//
22
//                          FixedNumOperand Trait Class
23
//===----------------------------------------------------------------------===//
24
25
/// FixedNumOperandTraits - determine the allocation regime of the Use array
26
/// when it is a prefix to the User object, and the number of Use objects is
27
/// known at compile time.
28
29
template <typename SubClass, unsigned ARITY>
30
struct FixedNumOperandTraits {
31
2.41G
  static Use *op_begin(SubClass* U) {
32
2.41G
    static_assert(
33
2.41G
        !std::is_polymorphic<SubClass>::value,
34
2.41G
        "adding virtual methods to subclasses of User breaks use lists");
35
2.41G
    return reinterpret_cast<Use*>(U) - ARITY;
36
2.41G
  }
llvm::FixedNumOperandTraits<llvm::GlobalIndirectSymbol, 1u>::op_begin(llvm::GlobalIndirectSymbol*)
Line
Count
Source
31
32.6k
  static Use *op_begin(SubClass* U) {
32
32.6k
    static_assert(
33
32.6k
        !std::is_polymorphic<SubClass>::value,
34
32.6k
        "adding virtual methods to subclasses of User breaks use lists");
35
32.6k
    return reinterpret_cast<Use*>(U) - ARITY;
36
32.6k
  }
llvm::FixedNumOperandTraits<llvm::GlobalVariable, 1u>::op_begin(llvm::GlobalVariable*)
Line
Count
Source
31
7.70M
  static Use *op_begin(SubClass* U) {
32
7.70M
    static_assert(
33
7.70M
        !std::is_polymorphic<SubClass>::value,
34
7.70M
        "adding virtual methods to subclasses of User breaks use lists");
35
7.70M
    return reinterpret_cast<Use*>(U) - ARITY;
36
7.70M
  }
llvm::FixedNumOperandTraits<llvm::BlockAddress, 2u>::op_begin(llvm::BlockAddress*)
Line
Count
Source
31
9.23k
  static Use *op_begin(SubClass* U) {
32
9.23k
    static_assert(
33
9.23k
        !std::is_polymorphic<SubClass>::value,
34
9.23k
        "adding virtual methods to subclasses of User breaks use lists");
35
9.23k
    return reinterpret_cast<Use*>(U) - ARITY;
36
9.23k
  }
llvm::FixedNumOperandTraits<llvm::UnaryInstruction, 1u>::op_begin(llvm::UnaryInstruction*)
Line
Count
Source
31
371M
  static Use *op_begin(SubClass* U) {
32
371M
    static_assert(
33
371M
        !std::is_polymorphic<SubClass>::value,
34
371M
        "adding virtual methods to subclasses of User breaks use lists");
35
371M
    return reinterpret_cast<Use*>(U) - ARITY;
36
371M
  }
llvm::FixedNumOperandTraits<llvm::BinaryOperator, 2u>::op_begin(llvm::BinaryOperator*)
Line
Count
Source
31
636M
  static Use *op_begin(SubClass* U) {
32
636M
    static_assert(
33
636M
        !std::is_polymorphic<SubClass>::value,
34
636M
        "adding virtual methods to subclasses of User breaks use lists");
35
636M
    return reinterpret_cast<Use*>(U) - ARITY;
36
636M
  }
llvm::FixedNumOperandTraits<llvm::CmpInst, 2u>::op_begin(llvm::CmpInst*)
Line
Count
Source
31
915M
  static Use *op_begin(SubClass* U) {
32
915M
    static_assert(
33
915M
        !std::is_polymorphic<SubClass>::value,
34
915M
        "adding virtual methods to subclasses of User breaks use lists");
35
915M
    return reinterpret_cast<Use*>(U) - ARITY;
36
915M
  }
llvm::FixedNumOperandTraits<llvm::StoreInst, 2u>::op_begin(llvm::StoreInst*)
Line
Count
Source
31
301M
  static Use *op_begin(SubClass* U) {
32
301M
    static_assert(
33
301M
        !std::is_polymorphic<SubClass>::value,
34
301M
        "adding virtual methods to subclasses of User breaks use lists");
35
301M
    return reinterpret_cast<Use*>(U) - ARITY;
36
301M
  }
llvm::FixedNumOperandTraits<llvm::AtomicCmpXchgInst, 3u>::op_begin(llvm::AtomicCmpXchgInst*)
Line
Count
Source
31
128k
  static Use *op_begin(SubClass* U) {
32
128k
    static_assert(
33
128k
        !std::is_polymorphic<SubClass>::value,
34
128k
        "adding virtual methods to subclasses of User breaks use lists");
35
128k
    return reinterpret_cast<Use*>(U) - ARITY;
36
128k
  }
llvm::FixedNumOperandTraits<llvm::AtomicRMWInst, 2u>::op_begin(llvm::AtomicRMWInst*)
Line
Count
Source
31
1.33M
  static Use *op_begin(SubClass* U) {
32
1.33M
    static_assert(
33
1.33M
        !std::is_polymorphic<SubClass>::value,
34
1.33M
        "adding virtual methods to subclasses of User breaks use lists");
35
1.33M
    return reinterpret_cast<Use*>(U) - ARITY;
36
1.33M
  }
llvm::FixedNumOperandTraits<llvm::SelectInst, 3u>::op_begin(llvm::SelectInst*)
Line
Count
Source
31
126M
  static Use *op_begin(SubClass* U) {
32
126M
    static_assert(
33
126M
        !std::is_polymorphic<SubClass>::value,
34
126M
        "adding virtual methods to subclasses of User breaks use lists");
35
126M
    return reinterpret_cast<Use*>(U) - ARITY;
36
126M
  }
llvm::FixedNumOperandTraits<llvm::ExtractElementInst, 2u>::op_begin(llvm::ExtractElementInst*)
Line
Count
Source
31
1.34M
  static Use *op_begin(SubClass* U) {
32
1.34M
    static_assert(
33
1.34M
        !std::is_polymorphic<SubClass>::value,
34
1.34M
        "adding virtual methods to subclasses of User breaks use lists");
35
1.34M
    return reinterpret_cast<Use*>(U) - ARITY;
36
1.34M
  }
llvm::FixedNumOperandTraits<llvm::InsertElementInst, 3u>::op_begin(llvm::InsertElementInst*)
Line
Count
Source
31
2.69M
  static Use *op_begin(SubClass* U) {
32
2.69M
    static_assert(
33
2.69M
        !std::is_polymorphic<SubClass>::value,
34
2.69M
        "adding virtual methods to subclasses of User breaks use lists");
35
2.69M
    return reinterpret_cast<Use*>(U) - ARITY;
36
2.69M
  }
llvm::FixedNumOperandTraits<llvm::ShuffleVectorInst, 3u>::op_begin(llvm::ShuffleVectorInst*)
Line
Count
Source
31
8.78M
  static Use *op_begin(SubClass* U) {
32
8.78M
    static_assert(
33
8.78M
        !std::is_polymorphic<SubClass>::value,
34
8.78M
        "adding virtual methods to subclasses of User breaks use lists");
35
8.78M
    return reinterpret_cast<Use*>(U) - ARITY;
36
8.78M
  }
llvm::FixedNumOperandTraits<llvm::InsertValueInst, 2u>::op_begin(llvm::InsertValueInst*)
Line
Count
Source
31
740k
  static Use *op_begin(SubClass* U) {
32
740k
    static_assert(
33
740k
        !std::is_polymorphic<SubClass>::value,
34
740k
        "adding virtual methods to subclasses of User breaks use lists");
35
740k
    return reinterpret_cast<Use*>(U) - ARITY;
36
740k
  }
llvm::FixedNumOperandTraits<llvm::ResumeInst, 1u>::op_begin(llvm::ResumeInst*)
Line
Count
Source
31
109k
  static Use *op_begin(SubClass* U) {
32
109k
    static_assert(
33
109k
        !std::is_polymorphic<SubClass>::value,
34
109k
        "adding virtual methods to subclasses of User breaks use lists");
35
109k
    return reinterpret_cast<Use*>(U) - ARITY;
36
109k
  }
llvm::FixedNumOperandTraits<llvm::CatchReturnInst, 2u>::op_begin(llvm::CatchReturnInst*)
Line
Count
Source
31
10.2k
  static Use *op_begin(SubClass* U) {
32
10.2k
    static_assert(
33
10.2k
        !std::is_polymorphic<SubClass>::value,
34
10.2k
        "adding virtual methods to subclasses of User breaks use lists");
35
10.2k
    return reinterpret_cast<Use*>(U) - ARITY;
36
10.2k
  }
llvm::FixedNumOperandTraits<llvm::MemoryUse, 1u>::op_begin(llvm::MemoryUse*)
Line
Count
Source
31
17.9M
  static Use *op_begin(SubClass* U) {
32
17.9M
    static_assert(
33
17.9M
        !std::is_polymorphic<SubClass>::value,
34
17.9M
        "adding virtual methods to subclasses of User breaks use lists");
35
17.9M
    return reinterpret_cast<Use*>(U) - ARITY;
36
17.9M
  }
llvm::FixedNumOperandTraits<llvm::MemoryDef, 2u>::op_begin(llvm::MemoryDef*)
Line
Count
Source
31
19.9M
  static Use *op_begin(SubClass* U) {
32
19.9M
    static_assert(
33
19.9M
        !std::is_polymorphic<SubClass>::value,
34
19.9M
        "adding virtual methods to subclasses of User breaks use lists");
35
19.9M
    return reinterpret_cast<Use*>(U) - ARITY;
36
19.9M
  }
llvm::FixedNumOperandTraits<llvm::UnaryConstantExpr, 1u>::op_begin(llvm::UnaryConstantExpr*)
Line
Count
Source
31
367k
  static Use *op_begin(SubClass* U) {
32
367k
    static_assert(
33
367k
        !std::is_polymorphic<SubClass>::value,
34
367k
        "adding virtual methods to subclasses of User breaks use lists");
35
367k
    return reinterpret_cast<Use*>(U) - ARITY;
36
367k
  }
llvm::FixedNumOperandTraits<llvm::BinaryConstantExpr, 2u>::op_begin(llvm::BinaryConstantExpr*)
Line
Count
Source
31
19.1k
  static Use *op_begin(SubClass* U) {
32
19.1k
    static_assert(
33
19.1k
        !std::is_polymorphic<SubClass>::value,
34
19.1k
        "adding virtual methods to subclasses of User breaks use lists");
35
19.1k
    return reinterpret_cast<Use*>(U) - ARITY;
36
19.1k
  }
llvm::FixedNumOperandTraits<llvm::SelectConstantExpr, 3u>::op_begin(llvm::SelectConstantExpr*)
Line
Count
Source
31
376
  static Use *op_begin(SubClass* U) {
32
376
    static_assert(
33
376
        !std::is_polymorphic<SubClass>::value,
34
376
        "adding virtual methods to subclasses of User breaks use lists");
35
376
    return reinterpret_cast<Use*>(U) - ARITY;
36
376
  }
llvm::FixedNumOperandTraits<llvm::ExtractElementConstantExpr, 2u>::op_begin(llvm::ExtractElementConstantExpr*)
Line
Count
Source
31
297
  static Use *op_begin(SubClass* U) {
32
297
    static_assert(
33
297
        !std::is_polymorphic<SubClass>::value,
34
297
        "adding virtual methods to subclasses of User breaks use lists");
35
297
    return reinterpret_cast<Use*>(U) - ARITY;
36
297
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertElementConstantExpr, 3u>::op_begin(llvm::InsertElementConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ShuffleVectorConstantExpr, 3u>::op_begin(llvm::ShuffleVectorConstantExpr*)
llvm::FixedNumOperandTraits<llvm::ExtractValueConstantExpr, 1u>::op_begin(llvm::ExtractValueConstantExpr*)
Line
Count
Source
31
10
  static Use *op_begin(SubClass* U) {
32
10
    static_assert(
33
10
        !std::is_polymorphic<SubClass>::value,
34
10
        "adding virtual methods to subclasses of User breaks use lists");
35
10
    return reinterpret_cast<Use*>(U) - ARITY;
36
10
  }
llvm::FixedNumOperandTraits<llvm::InsertValueConstantExpr, 2u>::op_begin(llvm::InsertValueConstantExpr*)
Line
Count
Source
31
3
  static Use *op_begin(SubClass* U) {
32
3
    static_assert(
33
3
        !std::is_polymorphic<SubClass>::value,
34
3
        "adding virtual methods to subclasses of User breaks use lists");
35
3
    return reinterpret_cast<Use*>(U) - ARITY;
36
3
  }
llvm::FixedNumOperandTraits<llvm::CompareConstantExpr, 2u>::op_begin(llvm::CompareConstantExpr*)
Line
Count
Source
31
2.28k
  static Use *op_begin(SubClass* U) {
32
2.28k
    static_assert(
33
2.28k
        !std::is_polymorphic<SubClass>::value,
34
2.28k
        "adding virtual methods to subclasses of User breaks use lists");
35
2.28k
    return reinterpret_cast<Use*>(U) - ARITY;
36
2.28k
  }
ValueList.cpp:llvm::FixedNumOperandTraits<llvm::(anonymous namespace)::ConstantPlaceHolder, 1u>::op_begin(llvm::(anonymous namespace)::ConstantPlaceHolder*)
Line
Count
Source
31
5.80k
  static Use *op_begin(SubClass* U) {
32
5.80k
    static_assert(
33
5.80k
        !std::is_polymorphic<SubClass>::value,
34
5.80k
        "adding virtual methods to subclasses of User breaks use lists");
35
5.80k
    return reinterpret_cast<Use*>(U) - ARITY;
36
5.80k
  }
37
70.7k
  static Use *op_end(SubClass* U) {
38
70.7k
    return reinterpret_cast<Use*>(U);
39
70.7k
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::GlobalIndirectSymbol, 1u>::op_end(llvm::GlobalIndirectSymbol*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::GlobalVariable, 1u>::op_end(llvm::GlobalVariable*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::BlockAddress, 2u>::op_end(llvm::BlockAddress*)
llvm::FixedNumOperandTraits<llvm::UnaryInstruction, 1u>::op_end(llvm::UnaryInstruction*)
Line
Count
Source
37
70.7k
  static Use *op_end(SubClass* U) {
38
70.7k
    return reinterpret_cast<Use*>(U);
39
70.7k
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::BinaryOperator, 2u>::op_end(llvm::BinaryOperator*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::CmpInst, 2u>::op_end(llvm::CmpInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::StoreInst, 2u>::op_end(llvm::StoreInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::AtomicCmpXchgInst, 3u>::op_end(llvm::AtomicCmpXchgInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::AtomicRMWInst, 2u>::op_end(llvm::AtomicRMWInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::SelectInst, 3u>::op_end(llvm::SelectInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractElementInst, 2u>::op_end(llvm::ExtractElementInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertElementInst, 3u>::op_end(llvm::InsertElementInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ShuffleVectorInst, 3u>::op_end(llvm::ShuffleVectorInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertValueInst, 2u>::op_end(llvm::InsertValueInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ResumeInst, 1u>::op_end(llvm::ResumeInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::CatchReturnInst, 2u>::op_end(llvm::CatchReturnInst*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::MemoryUse, 1u>::op_end(llvm::MemoryUse*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::MemoryDef, 2u>::op_end(llvm::MemoryDef*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::UnaryConstantExpr, 1u>::op_end(llvm::UnaryConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::BinaryConstantExpr, 2u>::op_end(llvm::BinaryConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::SelectConstantExpr, 3u>::op_end(llvm::SelectConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractElementConstantExpr, 2u>::op_end(llvm::ExtractElementConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertElementConstantExpr, 3u>::op_end(llvm::InsertElementConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ShuffleVectorConstantExpr, 3u>::op_end(llvm::ShuffleVectorConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractValueConstantExpr, 1u>::op_end(llvm::ExtractValueConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertValueConstantExpr, 2u>::op_end(llvm::InsertValueConstantExpr*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::CompareConstantExpr, 2u>::op_end(llvm::CompareConstantExpr*)
Unexecuted instantiation: ValueList.cpp:llvm::FixedNumOperandTraits<llvm::(anonymous namespace)::ConstantPlaceHolder, 1u>::op_end(llvm::(anonymous namespace)::ConstantPlaceHolder*)
40
10.8M
  static unsigned operands(const User*) {
41
10.8M
    return ARITY;
42
10.8M
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::GlobalIndirectSymbol, 1u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::BlockAddress, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::UnaryInstruction, 1u>::operands(llvm::User const*)
llvm::FixedNumOperandTraits<llvm::BinaryOperator, 2u>::operands(llvm::User const*)
Line
Count
Source
40
3.09M
  static unsigned operands(const User*) {
41
3.09M
    return ARITY;
42
3.09M
  }
llvm::FixedNumOperandTraits<llvm::CmpInst, 2u>::operands(llvm::User const*)
Line
Count
Source
40
2.55M
  static unsigned operands(const User*) {
41
2.55M
    return ARITY;
42
2.55M
  }
llvm::FixedNumOperandTraits<llvm::StoreInst, 2u>::operands(llvm::User const*)
Line
Count
Source
40
5.03M
  static unsigned operands(const User*) {
41
5.03M
    return ARITY;
42
5.03M
  }
llvm::FixedNumOperandTraits<llvm::AtomicCmpXchgInst, 3u>::operands(llvm::User const*)
Line
Count
Source
40
9.25k
  static unsigned operands(const User*) {
41
9.25k
    return ARITY;
42
9.25k
  }
llvm::FixedNumOperandTraits<llvm::AtomicRMWInst, 2u>::operands(llvm::User const*)
Line
Count
Source
40
35.9k
  static unsigned operands(const User*) {
41
35.9k
    return ARITY;
42
35.9k
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::SelectInst, 3u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractElementInst, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertElementInst, 3u>::operands(llvm::User const*)
llvm::FixedNumOperandTraits<llvm::ShuffleVectorInst, 3u>::operands(llvm::User const*)
Line
Count
Source
40
125k
  static unsigned operands(const User*) {
41
125k
    return ARITY;
42
125k
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertValueInst, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ResumeInst, 1u>::operands(llvm::User const*)
llvm::FixedNumOperandTraits<llvm::CatchReturnInst, 2u>::operands(llvm::User const*)
Line
Count
Source
40
10
  static unsigned operands(const User*) {
41
10
    return ARITY;
42
10
  }
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::MemoryUse, 1u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::MemoryDef, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::UnaryConstantExpr, 1u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::BinaryConstantExpr, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::SelectConstantExpr, 3u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractElementConstantExpr, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertElementConstantExpr, 3u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ShuffleVectorConstantExpr, 3u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::ExtractValueConstantExpr, 1u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::InsertValueConstantExpr, 2u>::operands(llvm::User const*)
Unexecuted instantiation: llvm::FixedNumOperandTraits<llvm::CompareConstantExpr, 2u>::operands(llvm::User const*)
Unexecuted instantiation: ValueList.cpp:llvm::FixedNumOperandTraits<llvm::(anonymous namespace)::ConstantPlaceHolder, 1u>::operands(llvm::User const*)
43
};
44
45
//===----------------------------------------------------------------------===//
46
//                          OptionalOperand Trait Class
47
//===----------------------------------------------------------------------===//
48
49
/// OptionalOperandTraits - when the number of operands may change at runtime.
50
/// Naturally it may only decrease, because the allocations may not change.
51
52
template <typename SubClass, unsigned ARITY = 1>
53
struct OptionalOperandTraits : public FixedNumOperandTraits<SubClass, ARITY> {
54
25.6M
  static unsigned operands(const User *U) {
55
25.6M
    return U->getNumOperands();
56
25.6M
  }
57
};
58
59
//===----------------------------------------------------------------------===//
60
//                          VariadicOperand Trait Class
61
//===----------------------------------------------------------------------===//
62
63
/// VariadicOperandTraits - determine the allocation regime of the Use array
64
/// when it is a prefix to the User object, and the number of Use objects is
65
/// only known at allocation time.
66
67
template <typename SubClass, unsigned MINARITY = 0>
68
struct VariadicOperandTraits {
69
665M
  static Use *op_begin(SubClass* U) {
70
665M
    static_assert(
71
665M
        !std::is_polymorphic<SubClass>::value,
72
665M
        "adding virtual methods to subclasses of User breaks use lists");
73
665M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
665M
  }
llvm::VariadicOperandTraits<llvm::ConstantAggregate, 0u>::op_begin(llvm::ConstantAggregate*)
Line
Count
Source
69
5.53M
  static Use *op_begin(SubClass* U) {
70
5.53M
    static_assert(
71
5.53M
        !std::is_polymorphic<SubClass>::value,
72
5.53M
        "adding virtual methods to subclasses of User breaks use lists");
73
5.53M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
5.53M
  }
llvm::VariadicOperandTraits<llvm::ConstantExpr, 1u>::op_begin(llvm::ConstantExpr*)
Line
Count
Source
69
67.1M
  static Use *op_begin(SubClass* U) {
70
67.1M
    static_assert(
71
67.1M
        !std::is_polymorphic<SubClass>::value,
72
67.1M
        "adding virtual methods to subclasses of User breaks use lists");
73
67.1M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
67.1M
  }
llvm::VariadicOperandTraits<llvm::CallBase, 1u>::op_begin(llvm::CallBase*)
Line
Count
Source
69
273M
  static Use *op_begin(SubClass* U) {
70
273M
    static_assert(
71
273M
        !std::is_polymorphic<SubClass>::value,
72
273M
        "adding virtual methods to subclasses of User breaks use lists");
73
273M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
273M
  }
llvm::VariadicOperandTraits<llvm::FuncletPadInst, 1u>::op_begin(llvm::FuncletPadInst*)
Line
Count
Source
69
2.35k
  static Use *op_begin(SubClass* U) {
70
2.35k
    static_assert(
71
2.35k
        !std::is_polymorphic<SubClass>::value,
72
2.35k
        "adding virtual methods to subclasses of User breaks use lists");
73
2.35k
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
2.35k
  }
llvm::VariadicOperandTraits<llvm::GetElementPtrInst, 1u>::op_begin(llvm::GetElementPtrInst*)
Line
Count
Source
69
306M
  static Use *op_begin(SubClass* U) {
70
306M
    static_assert(
71
306M
        !std::is_polymorphic<SubClass>::value,
72
306M
        "adding virtual methods to subclasses of User breaks use lists");
73
306M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
306M
  }
llvm::VariadicOperandTraits<llvm::ReturnInst, 0u>::op_begin(llvm::ReturnInst*)
Line
Count
Source
69
11.8M
  static Use *op_begin(SubClass* U) {
70
11.8M
    static_assert(
71
11.8M
        !std::is_polymorphic<SubClass>::value,
72
11.8M
        "adding virtual methods to subclasses of User breaks use lists");
73
11.8M
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
11.8M
  }
llvm::VariadicOperandTraits<llvm::CleanupReturnInst, 1u>::op_begin(llvm::CleanupReturnInst*)
Line
Count
Source
69
4.16k
  static Use *op_begin(SubClass* U) {
70
4.16k
    static_assert(
71
4.16k
        !std::is_polymorphic<SubClass>::value,
72
4.16k
        "adding virtual methods to subclasses of User breaks use lists");
73
4.16k
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
4.16k
  }
llvm::VariadicOperandTraits<llvm::GetElementPtrConstantExpr, 1u>::op_begin(llvm::GetElementPtrConstantExpr*)
Line
Count
Source
69
614k
  static Use *op_begin(SubClass* U) {
70
614k
    static_assert(
71
614k
        !std::is_polymorphic<SubClass>::value,
72
614k
        "adding virtual methods to subclasses of User breaks use lists");
73
614k
    return reinterpret_cast<Use*>(U) - static_cast<User*>(U)->getNumOperands();
74
614k
  }
75
3.93G
  static Use *op_end(SubClass* U) {
76
3.93G
    return reinterpret_cast<Use*>(U);
77
3.93G
  }
llvm::VariadicOperandTraits<llvm::ConstantAggregate, 0u>::op_end(llvm::ConstantAggregate*)
Line
Count
Source
75
244k
  static Use *op_end(SubClass* U) {
76
244k
    return reinterpret_cast<Use*>(U);
77
244k
  }
llvm::VariadicOperandTraits<llvm::ConstantExpr, 1u>::op_end(llvm::ConstantExpr*)
Line
Count
Source
75
728k
  static Use *op_end(SubClass* U) {
76
728k
    return reinterpret_cast<Use*>(U);
77
728k
  }
llvm::VariadicOperandTraits<llvm::CallBase, 1u>::op_end(llvm::CallBase*)
Line
Count
Source
75
2.17G
  static Use *op_end(SubClass* U) {
76
2.17G
    return reinterpret_cast<Use*>(U);
77
2.17G
  }
llvm::VariadicOperandTraits<llvm::FuncletPadInst, 1u>::op_end(llvm::FuncletPadInst*)
Line
Count
Source
75
12.0k
  static Use *op_end(SubClass* U) {
76
12.0k
    return reinterpret_cast<Use*>(U);
77
12.0k
  }
llvm::VariadicOperandTraits<llvm::GetElementPtrInst, 1u>::op_end(llvm::GetElementPtrInst*)
Line
Count
Source
75
62.7M
  static Use *op_end(SubClass* U) {
76
62.7M
    return reinterpret_cast<Use*>(U);
77
62.7M
  }
llvm::VariadicOperandTraits<llvm::ReturnInst, 0u>::op_end(llvm::ReturnInst*)
Line
Count
Source
75
1.69M
  static Use *op_end(SubClass* U) {
76
1.69M
    return reinterpret_cast<Use*>(U);
77
1.69M
  }
llvm::VariadicOperandTraits<llvm::BranchInst, 1u>::op_end(llvm::BranchInst*)
Line
Count
Source
75
1.70G
  static Use *op_end(SubClass* U) {
76
1.70G
    return reinterpret_cast<Use*>(U);
77
1.70G
  }
llvm::VariadicOperandTraits<llvm::CleanupReturnInst, 1u>::op_end(llvm::CleanupReturnInst*)
Line
Count
Source
75
491
  static Use *op_end(SubClass* U) {
76
491
    return reinterpret_cast<Use*>(U);
77
491
  }
llvm::VariadicOperandTraits<llvm::GetElementPtrConstantExpr, 1u>::op_end(llvm::GetElementPtrConstantExpr*)
Line
Count
Source
75
614k
  static Use *op_end(SubClass* U) {
76
614k
    return reinterpret_cast<Use*>(U);
77
614k
  }
78
1.44G
  static unsigned operands(const User *U) {
79
1.44G
    return U->getNumOperands();
80
1.44G
  }
llvm::VariadicOperandTraits<llvm::ConstantAggregate, 0u>::operands(llvm::User const*)
Line
Count
Source
78
3.26M
  static unsigned operands(const User *U) {
79
3.26M
    return U->getNumOperands();
80
3.26M
  }
llvm::VariadicOperandTraits<llvm::ConstantExpr, 1u>::operands(llvm::User const*)
Line
Count
Source
78
22.4M
  static unsigned operands(const User *U) {
79
22.4M
    return U->getNumOperands();
80
22.4M
  }
llvm::VariadicOperandTraits<llvm::CallBase, 1u>::operands(llvm::User const*)
Line
Count
Source
78
1.46M
  static unsigned operands(const User *U) {
79
1.46M
    return U->getNumOperands();
80
1.46M
  }
llvm::VariadicOperandTraits<llvm::FuncletPadInst, 1u>::operands(llvm::User const*)
Line
Count
Source
78
1.37k
  static unsigned operands(const User *U) {
79
1.37k
    return U->getNumOperands();
80
1.37k
  }
llvm::VariadicOperandTraits<llvm::GetElementPtrInst, 1u>::operands(llvm::User const*)
Line
Count
Source
78
125M
  static unsigned operands(const User *U) {
79
125M
    return U->getNumOperands();
80
125M
  }
llvm::VariadicOperandTraits<llvm::ReturnInst, 0u>::operands(llvm::User const*)
Line
Count
Source
78
14.6M
  static unsigned operands(const User *U) {
79
14.6M
    return U->getNumOperands();
80
14.6M
  }
llvm::VariadicOperandTraits<llvm::BranchInst, 1u>::operands(llvm::User const*)
Line
Count
Source
78
1.28G
  static unsigned operands(const User *U) {
79
1.28G
    return U->getNumOperands();
80
1.28G
  }
llvm::VariadicOperandTraits<llvm::CleanupReturnInst, 1u>::operands(llvm::User const*)
Line
Count
Source
78
180
  static unsigned operands(const User *U) {
79
180
    return U->getNumOperands();
80
180
  }
Unexecuted instantiation: llvm::VariadicOperandTraits<llvm::GetElementPtrConstantExpr, 1u>::operands(llvm::User const*)
81
};
82
83
//===----------------------------------------------------------------------===//
84
//                          HungoffOperand Trait Class
85
//===----------------------------------------------------------------------===//
86
87
/// HungoffOperandTraits - determine the allocation regime of the Use array
88
/// when it is not a prefix to the User object, but allocated at an unrelated
89
/// heap address.
90
///
91
/// This is the traits class that is needed when the Use array must be
92
/// resizable.
93
94
template <unsigned MINARITY = 1>
95
struct HungoffOperandTraits {
96
783M
  static Use *op_begin(User* U) {
97
783M
    return U->getOperandList();
98
783M
  }
llvm::HungoffOperandTraits<3u>::op_begin(llvm::User*)
Line
Count
Source
96
2.77M
  static Use *op_begin(User* U) {
97
2.77M
    return U->getOperandList();
98
2.77M
  }
llvm::HungoffOperandTraits<2u>::op_begin(llvm::User*)
Line
Count
Source
96
780M
  static Use *op_begin(User* U) {
97
780M
    return U->getOperandList();
98
780M
  }
llvm::HungoffOperandTraits<1u>::op_begin(llvm::User*)
Line
Count
Source
96
30.9k
  static Use *op_begin(User* U) {
97
30.9k
    return U->getOperandList();
98
30.9k
  }
99
6.77M
  static Use *op_end(User* U) {
100
6.77M
    return U->getOperandList() + U->getNumOperands();
101
6.77M
  }
Unexecuted instantiation: llvm::HungoffOperandTraits<3u>::op_end(llvm::User*)
llvm::HungoffOperandTraits<2u>::op_end(llvm::User*)
Line
Count
Source
99
6.77M
  static Use *op_end(User* U) {
100
6.77M
    return U->getOperandList() + U->getNumOperands();
101
6.77M
  }
Unexecuted instantiation: llvm::HungoffOperandTraits<1u>::op_end(llvm::User*)
102
392M
  static unsigned operands(const User *U) {
103
392M
    return U->getNumOperands();
104
392M
  }
llvm::HungoffOperandTraits<3u>::operands(llvm::User const*)
Line
Count
Source
102
3.50M
  static unsigned operands(const User *U) {
103
3.50M
    return U->getNumOperands();
104
3.50M
  }
llvm::HungoffOperandTraits<2u>::operands(llvm::User const*)
Line
Count
Source
102
388M
  static unsigned operands(const User *U) {
103
388M
    return U->getNumOperands();
104
388M
  }
llvm::HungoffOperandTraits<1u>::operands(llvm::User const*)
Line
Count
Source
102
352k
  static unsigned operands(const User *U) {
103
352k
    return U->getNumOperands();
104
352k
  }
105
};
106
107
/// Macro for generating in-class operand accessor declarations.
108
/// It should only be called in the public section of the interface.
109
///
110
#define DECLARE_TRANSPARENT_OPERAND_ACCESSORS(VALUECLASS) \
111
  public: \
112
  inline VALUECLASS *getOperand(unsigned) const; \
113
  inline void setOperand(unsigned, VALUECLASS*); \
114
  inline op_iterator op_begin(); \
115
  inline const_op_iterator op_begin() const; \
116
  inline op_iterator op_end(); \
117
  inline const_op_iterator op_end() const; \
118
  protected: \
119
  template <int> inline Use &Op(); \
120
  template <int> inline const Use &Op() const; \
121
  public: \
122
  inline unsigned getNumOperands() const
123
124
/// Macro for generating out-of-class operand accessor definitions
125
#define DEFINE_TRANSPARENT_OPERAND_ACCESSORS(CLASS, VALUECLASS) \
126
225M
CLASS::op_iterator CLASS::op_begin() { \
127
225M
  return OperandTraits<CLASS>::op_begin(this); \
128
225M
} \
Unexecuted instantiation: llvm::Function::op_begin()
Unexecuted instantiation: llvm::GlobalIndirectSymbol::op_begin()
Unexecuted instantiation: llvm::GlobalVariable::op_begin()
llvm::ConstantAggregate::op_begin()
Line
Count
Source
126
244k
CLASS::op_iterator CLASS::op_begin() { \
127
244k
  return OperandTraits<CLASS>::op_begin(this); \
128
244k
} \
Unexecuted instantiation: llvm::BlockAddress::op_begin()
llvm::ConstantExpr::op_begin()
Line
Count
Source
126
27.0k
CLASS::op_iterator CLASS::op_begin() { \
127
27.0k
  return OperandTraits<CLASS>::op_begin(this); \
128
27.0k
} \
llvm::UnaryInstruction::op_begin()
Line
Count
Source
126
70.7k
CLASS::op_iterator CLASS::op_begin() { \
127
70.7k
  return OperandTraits<CLASS>::op_begin(this); \
128
70.7k
} \
Unexecuted instantiation: llvm::BinaryOperator::op_begin()
Unexecuted instantiation: llvm::CmpInst::op_begin()
llvm::CallBase::op_begin()
Line
Count
Source
126
108M
CLASS::op_iterator CLASS::op_begin() { \
127
108M
  return OperandTraits<CLASS>::op_begin(this); \
128
108M
} \
llvm::FuncletPadInst::op_begin()
Line
Count
Source
126
1.20k
CLASS::op_iterator CLASS::op_begin() { \
127
1.20k
  return OperandTraits<CLASS>::op_begin(this); \
128
1.20k
} \
Unexecuted instantiation: llvm::StoreInst::op_begin()
Unexecuted instantiation: llvm::AtomicCmpXchgInst::op_begin()
Unexecuted instantiation: llvm::AtomicRMWInst::op_begin()
llvm::GetElementPtrInst::op_begin()
Line
Count
Source
126
70.9M
CLASS::op_iterator CLASS::op_begin() { \
127
70.9M
  return OperandTraits<CLASS>::op_begin(this); \
128
70.9M
} \
Unexecuted instantiation: llvm::SelectInst::op_begin()
Unexecuted instantiation: llvm::ExtractElementInst::op_begin()
Unexecuted instantiation: llvm::InsertElementInst::op_begin()
Unexecuted instantiation: llvm::ShuffleVectorInst::op_begin()
Unexecuted instantiation: llvm::InsertValueInst::op_begin()
llvm::PHINode::op_begin()
Line
Count
Source
126
42.8M
CLASS::op_iterator CLASS::op_begin() { \
127
42.8M
  return OperandTraits<CLASS>::op_begin(this); \
128
42.8M
} \
Unexecuted instantiation: llvm::LandingPadInst::op_begin()
Unexecuted instantiation: llvm::ReturnInst::op_begin()
Unexecuted instantiation: llvm::SwitchInst::op_begin()
Unexecuted instantiation: llvm::IndirectBrInst::op_begin()
Unexecuted instantiation: llvm::ResumeInst::op_begin()
llvm::CatchSwitchInst::op_begin()
Line
Count
Source
126
1.45k
CLASS::op_iterator CLASS::op_begin() { \
127
1.45k
  return OperandTraits<CLASS>::op_begin(this); \
128
1.45k
} \
Unexecuted instantiation: llvm::CatchReturnInst::op_begin()
Unexecuted instantiation: llvm::CleanupReturnInst::op_begin()
Unexecuted instantiation: llvm::MemoryUse::op_begin()
Unexecuted instantiation: llvm::MemoryDef::op_begin()
Unexecuted instantiation: llvm::MemoryUseOrDef::op_begin()
llvm::MemoryPhi::op_begin()
Line
Count
Source
126
3.16M
CLASS::op_iterator CLASS::op_begin() { \
127
3.16M
  return OperandTraits<CLASS>::op_begin(this); \
128
3.16M
} \
Unexecuted instantiation: llvm::UnaryConstantExpr::op_begin()
Unexecuted instantiation: llvm::BinaryConstantExpr::op_begin()
Unexecuted instantiation: llvm::SelectConstantExpr::op_begin()
Unexecuted instantiation: llvm::ExtractElementConstantExpr::op_begin()
Unexecuted instantiation: llvm::InsertElementConstantExpr::op_begin()
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::op_begin()
Unexecuted instantiation: llvm::ExtractValueConstantExpr::op_begin()
Unexecuted instantiation: llvm::InsertValueConstantExpr::op_begin()
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::op_begin()
Unexecuted instantiation: llvm::CompareConstantExpr::op_begin()
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::op_begin()
129
152M
CLASS::const_op_iterator CLASS::op_begin() const { \
130
152M
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
152M
} \
Unexecuted instantiation: llvm::Function::op_begin() const
Unexecuted instantiation: llvm::GlobalIndirectSymbol::op_begin() const
Unexecuted instantiation: llvm::GlobalVariable::op_begin() const
Unexecuted instantiation: llvm::ConstantAggregate::op_begin() const
Unexecuted instantiation: llvm::BlockAddress::op_begin() const
llvm::ConstantExpr::op_begin() const
Line
Count
Source
129
195k
CLASS::const_op_iterator CLASS::op_begin() const { \
130
195k
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
195k
} \
Unexecuted instantiation: llvm::UnaryInstruction::op_begin() const
Unexecuted instantiation: llvm::BinaryOperator::op_begin() const
Unexecuted instantiation: llvm::CmpInst::op_begin() const
llvm::CallBase::op_begin() const
Line
Count
Source
129
499k
CLASS::const_op_iterator CLASS::op_begin() const { \
130
499k
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
499k
} \
llvm::FuncletPadInst::op_begin() const
Line
Count
Source
129
120
CLASS::const_op_iterator CLASS::op_begin() const { \
130
120
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
120
} \
Unexecuted instantiation: llvm::StoreInst::op_begin() const
Unexecuted instantiation: llvm::AtomicCmpXchgInst::op_begin() const
Unexecuted instantiation: llvm::AtomicRMWInst::op_begin() const
llvm::GetElementPtrInst::op_begin() const
Line
Count
Source
129
1.45M
CLASS::const_op_iterator CLASS::op_begin() const { \
130
1.45M
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
1.45M
} \
Unexecuted instantiation: llvm::SelectInst::op_begin() const
Unexecuted instantiation: llvm::ExtractElementInst::op_begin() const
Unexecuted instantiation: llvm::InsertElementInst::op_begin() const
Unexecuted instantiation: llvm::ShuffleVectorInst::op_begin() const
Unexecuted instantiation: llvm::InsertValueInst::op_begin() const
llvm::PHINode::op_begin() const
Line
Count
Source
129
144M
CLASS::const_op_iterator CLASS::op_begin() const { \
130
144M
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
144M
} \
Unexecuted instantiation: llvm::LandingPadInst::op_begin() const
Unexecuted instantiation: llvm::SwitchInst::op_begin() const
Unexecuted instantiation: llvm::IndirectBrInst::op_begin() const
Unexecuted instantiation: llvm::ResumeInst::op_begin() const
llvm::CatchSwitchInst::op_begin() const
Line
Count
Source
129
683
CLASS::const_op_iterator CLASS::op_begin() const { \
130
683
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
683
} \
Unexecuted instantiation: llvm::CatchReturnInst::op_begin() const
Unexecuted instantiation: llvm::CleanupReturnInst::op_begin() const
Unexecuted instantiation: llvm::MemoryUse::op_begin() const
Unexecuted instantiation: llvm::MemoryDef::op_begin() const
Unexecuted instantiation: llvm::MemoryUseOrDef::op_begin() const
llvm::MemoryPhi::op_begin() const
Line
Count
Source
129
6.20M
CLASS::const_op_iterator CLASS::op_begin() const { \
130
6.20M
  return OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this)); \
131
6.20M
} \
Unexecuted instantiation: llvm::UnaryConstantExpr::op_begin() const
Unexecuted instantiation: llvm::BinaryConstantExpr::op_begin() const
Unexecuted instantiation: llvm::SelectConstantExpr::op_begin() const
Unexecuted instantiation: llvm::ExtractElementConstantExpr::op_begin() const
Unexecuted instantiation: llvm::InsertElementConstantExpr::op_begin() const
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::op_begin() const
Unexecuted instantiation: llvm::ExtractValueConstantExpr::op_begin() const
Unexecuted instantiation: llvm::InsertValueConstantExpr::op_begin() const
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::op_begin() const
Unexecuted instantiation: llvm::CompareConstantExpr::op_begin() const
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::op_begin() const
132
179M
CLASS::op_iterator CLASS::op_end() { \
133
179M
  return OperandTraits<CLASS>::op_end(this); \
134
179M
} \
Unexecuted instantiation: llvm::Function::op_end()
Unexecuted instantiation: llvm::GlobalIndirectSymbol::op_end()
Unexecuted instantiation: llvm::GlobalVariable::op_end()
llvm::ConstantAggregate::op_end()
Line
Count
Source
132
3
CLASS::op_iterator CLASS::op_end() { \
133
3
  return OperandTraits<CLASS>::op_end(this); \
134
3
} \
Unexecuted instantiation: llvm::BlockAddress::op_end()
llvm::ConstantExpr::op_end()
Line
Count
Source
132
23.8k
CLASS::op_iterator CLASS::op_end() { \
133
23.8k
  return OperandTraits<CLASS>::op_end(this); \
134
23.8k
} \
llvm::UnaryInstruction::op_end()
Line
Count
Source
132
70.7k
CLASS::op_iterator CLASS::op_end() { \
133
70.7k
  return OperandTraits<CLASS>::op_end(this); \
134
70.7k
} \
Unexecuted instantiation: llvm::BinaryOperator::op_end()
Unexecuted instantiation: llvm::CmpInst::op_end()
llvm::CallBase::op_end()
Line
Count
Source
132
121M
CLASS::op_iterator CLASS::op_end() { \
133
121M
  return OperandTraits<CLASS>::op_end(this); \
134
121M
} \
Unexecuted instantiation: llvm::FuncletPadInst::op_end()
Unexecuted instantiation: llvm::StoreInst::op_end()
Unexecuted instantiation: llvm::AtomicCmpXchgInst::op_end()
Unexecuted instantiation: llvm::AtomicRMWInst::op_end()
llvm::GetElementPtrInst::op_end()
Line
Count
Source
132
55.3M
CLASS::op_iterator CLASS::op_end() { \
133
55.3M
  return OperandTraits<CLASS>::op_end(this); \
134
55.3M
} \
Unexecuted instantiation: llvm::SelectInst::op_end()
Unexecuted instantiation: llvm::ExtractElementInst::op_end()
Unexecuted instantiation: llvm::InsertElementInst::op_end()
Unexecuted instantiation: llvm::ShuffleVectorInst::op_end()
Unexecuted instantiation: llvm::InsertValueInst::op_end()
llvm::PHINode::op_end()
Line
Count
Source
132
3.35M
CLASS::op_iterator CLASS::op_end() { \
133
3.35M
  return OperandTraits<CLASS>::op_end(this); \
134
3.35M
} \
Unexecuted instantiation: llvm::LandingPadInst::op_end()
Unexecuted instantiation: llvm::ReturnInst::op_end()
Unexecuted instantiation: llvm::SwitchInst::op_end()
Unexecuted instantiation: llvm::IndirectBrInst::op_end()
Unexecuted instantiation: llvm::ResumeInst::op_end()
llvm::CatchSwitchInst::op_end()
Line
Count
Source
132
1.46k
CLASS::op_iterator CLASS::op_end() { \
133
1.46k
  return OperandTraits<CLASS>::op_end(this); \
134
1.46k
} \
Unexecuted instantiation: llvm::CatchReturnInst::op_end()
Unexecuted instantiation: llvm::CleanupReturnInst::op_end()
Unexecuted instantiation: llvm::MemoryUse::op_end()
Unexecuted instantiation: llvm::MemoryDef::op_end()
Unexecuted instantiation: llvm::MemoryUseOrDef::op_end()
Unexecuted instantiation: llvm::MemoryPhi::op_end()
Unexecuted instantiation: llvm::UnaryConstantExpr::op_end()
Unexecuted instantiation: llvm::BinaryConstantExpr::op_end()
Unexecuted instantiation: llvm::SelectConstantExpr::op_end()
Unexecuted instantiation: llvm::ExtractElementConstantExpr::op_end()
Unexecuted instantiation: llvm::InsertElementConstantExpr::op_end()
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::op_end()
Unexecuted instantiation: llvm::ExtractValueConstantExpr::op_end()
Unexecuted instantiation: llvm::InsertValueConstantExpr::op_end()
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::op_end()
Unexecuted instantiation: llvm::CompareConstantExpr::op_end()
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::op_end()
135
157M
CLASS::const_op_iterator CLASS::op_end() const { \
136
157M
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
157M
} \
Unexecuted instantiation: llvm::Function::op_end() const
Unexecuted instantiation: llvm::GlobalIndirectSymbol::op_end() const
Unexecuted instantiation: llvm::GlobalVariable::op_end() const
Unexecuted instantiation: llvm::ConstantAggregate::op_end() const
Unexecuted instantiation: llvm::BlockAddress::op_end() const
llvm::ConstantExpr::op_end() const
Line
Count
Source
135
704k
CLASS::const_op_iterator CLASS::op_end() const { \
136
704k
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
704k
} \
Unexecuted instantiation: llvm::UnaryInstruction::op_end() const
Unexecuted instantiation: llvm::BinaryOperator::op_end() const
Unexecuted instantiation: llvm::CmpInst::op_end() const
llvm::CallBase::op_end() const
Line
Count
Source
135
155M
CLASS::const_op_iterator CLASS::op_end() const { \
136
155M
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
155M
} \
llvm::FuncletPadInst::op_end() const
Line
Count
Source
135
120
CLASS::const_op_iterator CLASS::op_end() const { \
136
120
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
120
} \
Unexecuted instantiation: llvm::StoreInst::op_end() const
Unexecuted instantiation: llvm::AtomicCmpXchgInst::op_end() const
Unexecuted instantiation: llvm::AtomicRMWInst::op_end() const
llvm::GetElementPtrInst::op_end() const
Line
Count
Source
135
1.45M
CLASS::const_op_iterator CLASS::op_end() const { \
136
1.45M
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
1.45M
} \
Unexecuted instantiation: llvm::SelectInst::op_end() const
Unexecuted instantiation: llvm::ExtractElementInst::op_end() const
Unexecuted instantiation: llvm::InsertElementInst::op_end() const
Unexecuted instantiation: llvm::ShuffleVectorInst::op_end() const
Unexecuted instantiation: llvm::InsertValueInst::op_end() const
llvm::PHINode::op_end() const
Line
Count
Source
135
452k
CLASS::const_op_iterator CLASS::op_end() const { \
136
452k
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
452k
} \
Unexecuted instantiation: llvm::LandingPadInst::op_end() const
Unexecuted instantiation: llvm::SwitchInst::op_end() const
Unexecuted instantiation: llvm::IndirectBrInst::op_end() const
Unexecuted instantiation: llvm::ResumeInst::op_end() const
llvm::CatchSwitchInst::op_end() const
Line
Count
Source
135
630
CLASS::const_op_iterator CLASS::op_end() const { \
136
630
  return OperandTraits<CLASS>::op_end(const_cast<CLASS*>(this)); \
137
630
} \
Unexecuted instantiation: llvm::CatchReturnInst::op_end() const
Unexecuted instantiation: llvm::CleanupReturnInst::op_end() const
Unexecuted instantiation: llvm::MemoryUse::op_end() const
Unexecuted instantiation: llvm::MemoryDef::op_end() const
Unexecuted instantiation: llvm::MemoryUseOrDef::op_end() const
Unexecuted instantiation: llvm::MemoryPhi::op_end() const
Unexecuted instantiation: llvm::UnaryConstantExpr::op_end() const
Unexecuted instantiation: llvm::BinaryConstantExpr::op_end() const
Unexecuted instantiation: llvm::SelectConstantExpr::op_end() const
Unexecuted instantiation: llvm::ExtractElementConstantExpr::op_end() const
Unexecuted instantiation: llvm::InsertElementConstantExpr::op_end() const
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::op_end() const
Unexecuted instantiation: llvm::ExtractValueConstantExpr::op_end() const
Unexecuted instantiation: llvm::InsertValueConstantExpr::op_end() const
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::op_end() const
Unexecuted instantiation: llvm::CompareConstantExpr::op_end() const
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::op_end() const
138
3.23G
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
3.23G
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
3.23G
         && "getOperand() out of range!"); \
141
3.23G
  return cast_or_null<VALUECLASS>( \
142
3.23G
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
3.23G
} \
Unexecuted instantiation: llvm::Function::getOperand(unsigned int) const
llvm::GlobalIndirectSymbol::getOperand(unsigned int) const
Line
Count
Source
138
23.5k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
23.5k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
23.5k
         && "getOperand() out of range!"); \
141
23.5k
  return cast_or_null<VALUECLASS>( \
142
23.5k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
23.5k
} \
llvm::GlobalVariable::getOperand(unsigned int) const
Line
Count
Source
138
265k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
265k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
265k
         && "getOperand() out of range!"); \
141
265k
  return cast_or_null<VALUECLASS>( \
142
265k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
265k
} \
llvm::ConstantAggregate::getOperand(unsigned int) const
Line
Count
Source
138
5.29M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
5.29M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
5.29M
         && "getOperand() out of range!"); \
141
5.29M
  return cast_or_null<VALUECLASS>( \
142
5.29M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
5.29M
} \
Unexecuted instantiation: llvm::BlockAddress::getOperand(unsigned int) const
llvm::ConstantExpr::getOperand(unsigned int) const
Line
Count
Source
138
66.8M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
66.8M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
66.8M
         && "getOperand() out of range!"); \
141
66.8M
  return cast_or_null<VALUECLASS>( \
142
66.8M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
66.8M
} \
llvm::UnaryInstruction::getOperand(unsigned int) const
Line
Count
Source
138
337M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
337M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
337M
         && "getOperand() out of range!"); \
141
337M
  return cast_or_null<VALUECLASS>( \
142
337M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
337M
} \
llvm::BinaryOperator::getOperand(unsigned int) const
Line
Count
Source
138
624M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
624M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
624M
         && "getOperand() out of range!"); \
141
624M
  return cast_or_null<VALUECLASS>( \
142
624M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
624M
} \
llvm::CmpInst::getOperand(unsigned int) const
Line
Count
Source
138
905M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
905M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
905M
         && "getOperand() out of range!"); \
141
905M
  return cast_or_null<VALUECLASS>( \
142
905M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
905M
} \
llvm::CallBase::getOperand(unsigned int) const
Line
Count
Source
138
164M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
164M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
164M
         && "getOperand() out of range!"); \
141
164M
  return cast_or_null<VALUECLASS>( \
142
164M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
164M
} \
llvm::FuncletPadInst::getOperand(unsigned int) const
Line
Count
Source
138
1.01k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
1.01k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
1.01k
         && "getOperand() out of range!"); \
141
1.01k
  return cast_or_null<VALUECLASS>( \
142
1.01k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
1.01k
} \
llvm::StoreInst::getOperand(unsigned int) const
Line
Count
Source
138
286M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
286M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
286M
         && "getOperand() out of range!"); \
141
286M
  return cast_or_null<VALUECLASS>( \
142
286M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
286M
} \
llvm::AtomicCmpXchgInst::getOperand(unsigned int) const
Line
Count
Source
138
91.9k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
91.9k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
91.9k
         && "getOperand() out of range!"); \
141
91.9k
  return cast_or_null<VALUECLASS>( \
142
91.9k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
91.9k
} \
llvm::AtomicRMWInst::getOperand(unsigned int) const
Line
Count
Source
138
1.22M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
1.22M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
1.22M
         && "getOperand() out of range!"); \
141
1.22M
  return cast_or_null<VALUECLASS>( \
142
1.22M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
1.22M
} \
llvm::GetElementPtrInst::getOperand(unsigned int) const
Line
Count
Source
138
229M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
229M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
229M
         && "getOperand() out of range!"); \
141
229M
  return cast_or_null<VALUECLASS>( \
142
229M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
229M
} \
llvm::SelectInst::getOperand(unsigned int) const
Line
Count
Source
138
1.07M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
1.07M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
1.07M
         && "getOperand() out of range!"); \
141
1.07M
  return cast_or_null<VALUECLASS>( \
142
1.07M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
1.07M
} \
llvm::ExtractElementInst::getOperand(unsigned int) const
Line
Count
Source
138
341k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
341k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
341k
         && "getOperand() out of range!"); \
141
341k
  return cast_or_null<VALUECLASS>( \
142
341k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
341k
} \
llvm::InsertElementInst::getOperand(unsigned int) const
Line
Count
Source
138
2.28M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
2.28M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
2.28M
         && "getOperand() out of range!"); \
141
2.28M
  return cast_or_null<VALUECLASS>( \
142
2.28M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
2.28M
} \
llvm::ShuffleVectorInst::getOperand(unsigned int) const
Line
Count
Source
138
7.65M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
7.65M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
7.65M
         && "getOperand() out of range!"); \
141
7.65M
  return cast_or_null<VALUECLASS>( \
142
7.65M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
7.65M
} \
llvm::InsertValueInst::getOperand(unsigned int) const
Line
Count
Source
138
581k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
581k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
581k
         && "getOperand() out of range!"); \
141
581k
  return cast_or_null<VALUECLASS>( \
142
581k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
581k
} \
llvm::PHINode::getOperand(unsigned int) const
Line
Count
Source
138
526M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
526M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
526M
         && "getOperand() out of range!"); \
141
526M
  return cast_or_null<VALUECLASS>( \
142
526M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
526M
} \
Unexecuted instantiation: llvm::LandingPadInst::getOperand(unsigned int) const
llvm::ReturnInst::getOperand(unsigned int) const
Line
Count
Source
138
9.74M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
9.74M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
9.74M
         && "getOperand() out of range!"); \
141
9.74M
  return cast_or_null<VALUECLASS>( \
142
9.74M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
9.74M
} \
llvm::SwitchInst::getOperand(unsigned int) const
Line
Count
Source
138
41.0M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
41.0M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
41.0M
         && "getOperand() out of range!"); \
141
41.0M
  return cast_or_null<VALUECLASS>( \
142
41.0M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
41.0M
} \
llvm::IndirectBrInst::getOperand(unsigned int) const
Line
Count
Source
138
30.4k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
30.4k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
30.4k
         && "getOperand() out of range!"); \
141
30.4k
  return cast_or_null<VALUECLASS>( \
142
30.4k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
30.4k
} \
llvm::ResumeInst::getOperand(unsigned int) const
Line
Count
Source
138
7.72k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
7.72k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
7.72k
         && "getOperand() out of range!"); \
141
7.72k
  return cast_or_null<VALUECLASS>( \
142
7.72k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
7.72k
} \
llvm::CatchSwitchInst::getOperand(unsigned int) const
Line
Count
Source
138
13.5k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
13.5k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
13.5k
         && "getOperand() out of range!"); \
141
13.5k
  return cast_or_null<VALUECLASS>( \
142
13.5k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
13.5k
} \
llvm::CatchReturnInst::getOperand(unsigned int) const
Line
Count
Source
138
1.35k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
1.35k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
1.35k
         && "getOperand() out of range!"); \
141
1.35k
  return cast_or_null<VALUECLASS>( \
142
1.35k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
1.35k
} \
llvm::CleanupReturnInst::getOperand(unsigned int) const
Line
Count
Source
138
1.45k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
1.45k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
1.45k
         && "getOperand() out of range!"); \
141
1.45k
  return cast_or_null<VALUECLASS>( \
142
1.45k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
1.45k
} \
Unexecuted instantiation: llvm::MemoryUse::getOperand(unsigned int) const
llvm::MemoryDef::getOperand(unsigned int) const
Line
Count
Source
138
6.59k
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
6.59k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
6.59k
         && "getOperand() out of range!"); \
141
6.59k
  return cast_or_null<VALUECLASS>( \
142
6.59k
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
6.59k
} \
llvm::MemoryUseOrDef::getOperand(unsigned int) const
Line
Count
Source
138
15.7M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
15.7M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
15.7M
         && "getOperand() out of range!"); \
141
15.7M
  return cast_or_null<VALUECLASS>( \
142
15.7M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
15.7M
} \
llvm::MemoryPhi::getOperand(unsigned int) const
Line
Count
Source
138
6.23M
VALUECLASS *CLASS::getOperand(unsigned i_nocapture) const { \
139
6.23M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
140
6.23M
         && "getOperand() out of range!"); \
141
6.23M
  return cast_or_null<VALUECLASS>( \
142
6.23M
    OperandTraits<CLASS>::op_begin(const_cast<CLASS*>(this))[i_nocapture].get()); \
143
6.23M
} \
Unexecuted instantiation: llvm::UnaryConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::BinaryConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::SelectConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::ExtractElementConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::InsertElementConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::ExtractValueConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::InsertValueConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: llvm::CompareConstantExpr::getOperand(unsigned int) const
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::getOperand(unsigned int) const
144
33.5M
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
33.5M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
33.5M
         && "setOperand() out of range!"); \
147
33.5M
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
33.5M
} \
Unexecuted instantiation: llvm::Function::setOperand(unsigned int, llvm::Value*)
llvm::GlobalIndirectSymbol::setOperand(unsigned int, llvm::Constant*)
Line
Count
Source
144
1.04k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
1.04k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
1.04k
         && "setOperand() out of range!"); \
147
1.04k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
1.04k
} \
Unexecuted instantiation: llvm::GlobalVariable::setOperand(unsigned int, llvm::Value*)
llvm::ConstantAggregate::setOperand(unsigned int, llvm::Constant*)
Line
Count
Source
144
1.74k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
1.74k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
1.74k
         && "setOperand() out of range!"); \
147
1.74k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
1.74k
} \
llvm::BlockAddress::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
2.10k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
2.10k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
2.10k
         && "setOperand() out of range!"); \
147
2.10k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
2.10k
} \
llvm::ConstantExpr::setOperand(unsigned int, llvm::Constant*)
Line
Count
Source
144
4.66k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
4.66k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
4.66k
         && "setOperand() out of range!"); \
147
4.66k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
4.66k
} \
llvm::UnaryInstruction::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
48.4k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
48.4k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
48.4k
         && "setOperand() out of range!"); \
147
48.4k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
48.4k
} \
llvm::BinaryOperator::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
124k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
124k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
124k
         && "setOperand() out of range!"); \
147
124k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
124k
} \
llvm::CmpInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
93.5k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
93.5k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
93.5k
         && "setOperand() out of range!"); \
147
93.5k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
93.5k
} \
llvm::CallBase::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
5.59k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
5.59k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
5.59k
         && "setOperand() out of range!"); \
147
5.59k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
5.59k
} \
llvm::FuncletPadInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
19
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
19
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
19
         && "setOperand() out of range!"); \
147
19
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
19
} \
llvm::StoreInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
1.72k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
1.72k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
1.72k
         && "setOperand() out of range!"); \
147
1.72k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
1.72k
} \
Unexecuted instantiation: llvm::AtomicCmpXchgInst::setOperand(unsigned int, llvm::Value*)
llvm::AtomicRMWInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
14
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
14
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
14
         && "setOperand() out of range!"); \
147
14
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
14
} \
llvm::GetElementPtrInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
121k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
121k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
121k
         && "setOperand() out of range!"); \
147
121k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
121k
} \
llvm::SelectInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
10.7k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
10.7k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
10.7k
         && "setOperand() out of range!"); \
147
10.7k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
10.7k
} \
llvm::ExtractElementInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
6.38k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
6.38k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
6.38k
         && "setOperand() out of range!"); \
147
6.38k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
6.38k
} \
llvm::InsertElementInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
64
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
64
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
64
         && "setOperand() out of range!"); \
147
64
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
64
} \
llvm::ShuffleVectorInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
3.06k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
3.06k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
3.06k
         && "setOperand() out of range!"); \
147
3.06k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
3.06k
} \
Unexecuted instantiation: llvm::InsertValueInst::setOperand(unsigned int, llvm::Value*)
llvm::PHINode::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
7.10M
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
7.10M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
7.10M
         && "setOperand() out of range!"); \
147
7.10M
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
7.10M
} \
Unexecuted instantiation: llvm::LandingPadInst::setOperand(unsigned int, llvm::Value*)
llvm::ReturnInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
353k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
353k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
353k
         && "setOperand() out of range!"); \
147
353k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
353k
} \
llvm::SwitchInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
333k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
333k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
333k
         && "setOperand() out of range!"); \
147
333k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
333k
} \
llvm::IndirectBrInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
1
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
1
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
1
         && "setOperand() out of range!"); \
147
1
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
1
} \
Unexecuted instantiation: llvm::ResumeInst::setOperand(unsigned int, llvm::Value*)
llvm::CatchSwitchInst::setOperand(unsigned int, llvm::Value*)
Line
Count
Source
144
132
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
132
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
132
         && "setOperand() out of range!"); \
147
132
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
132
} \
Unexecuted instantiation: llvm::CatchReturnInst::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::CleanupReturnInst::setOperand(unsigned int, llvm::Value*)
llvm::MemoryUse::setOperand(unsigned int, llvm::MemoryAccess*)
Line
Count
Source
144
4.17M
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
4.17M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
4.17M
         && "setOperand() out of range!"); \
147
4.17M
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
4.17M
} \
llvm::MemoryDef::setOperand(unsigned int, llvm::MemoryAccess*)
Line
Count
Source
144
21.1k
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
21.1k
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
21.1k
         && "setOperand() out of range!"); \
147
21.1k
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
21.1k
} \
llvm::MemoryUseOrDef::setOperand(unsigned int, llvm::MemoryAccess*)
Line
Count
Source
144
17.9M
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
17.9M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
17.9M
         && "setOperand() out of range!"); \
147
17.9M
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
17.9M
} \
llvm::MemoryPhi::setOperand(unsigned int, llvm::MemoryAccess*)
Line
Count
Source
144
3.16M
void CLASS::setOperand(unsigned i_nocapture, VALUECLASS *Val_nocapture) { \
145
3.16M
  assert(i_nocapture < OperandTraits<CLASS>::operands(this) \
146
3.16M
         && "setOperand() out of range!"); \
147
3.16M
  OperandTraits<CLASS>::op_begin(this)[i_nocapture] = Val_nocapture; \
148
3.16M
} \
Unexecuted instantiation: llvm::UnaryConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::BinaryConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::SelectConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::ExtractElementConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::InsertElementConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::ExtractValueConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::InsertValueConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: llvm::CompareConstantExpr::setOperand(unsigned int, llvm::Value*)
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::setOperand(unsigned int, llvm::Value*)
149
1.86G
unsigned CLASS::getNumOperands() const { \
150
1.86G
  return OperandTraits<CLASS>::operands(this); \
151
1.86G
} \
llvm::Function::getNumOperands() const
Line
Count
Source
149
3.50M
unsigned CLASS::getNumOperands() const { \
150
3.50M
  return OperandTraits<CLASS>::operands(this); \
151
3.50M
} \
Unexecuted instantiation: llvm::GlobalIndirectSymbol::getNumOperands() const
llvm::GlobalVariable::getNumOperands() const
Line
Count
Source
149
25.6M
unsigned CLASS::getNumOperands() const { \
150
25.6M
  return OperandTraits<CLASS>::operands(this); \
151
25.6M
} \
llvm::ConstantAggregate::getNumOperands() const
Line
Count
Source
149
3.26M
unsigned CLASS::getNumOperands() const { \
150
3.26M
  return OperandTraits<CLASS>::operands(this); \
151
3.26M
} \
Unexecuted instantiation: llvm::BlockAddress::getNumOperands() const
llvm::ConstantExpr::getNumOperands() const
Line
Count
Source
149
22.4M
unsigned CLASS::getNumOperands() const { \
150
22.4M
  return OperandTraits<CLASS>::operands(this); \
151
22.4M
} \
Unexecuted instantiation: llvm::UnaryInstruction::getNumOperands() const
Unexecuted instantiation: llvm::BinaryOperator::getNumOperands() const
Unexecuted instantiation: llvm::CmpInst::getNumOperands() const
llvm::CallBase::getNumOperands() const
Line
Count
Source
149
1.46M
unsigned CLASS::getNumOperands() const { \
150
1.46M
  return OperandTraits<CLASS>::operands(this); \
151
1.46M
} \
llvm::FuncletPadInst::getNumOperands() const
Line
Count
Source
149
1.37k
unsigned CLASS::getNumOperands() const { \
150
1.37k
  return OperandTraits<CLASS>::operands(this); \
151
1.37k
} \
llvm::StoreInst::getNumOperands() const
Line
Count
Source
149
604
unsigned CLASS::getNumOperands() const { \
150
604
  return OperandTraits<CLASS>::operands(this); \
151
604
} \
Unexecuted instantiation: llvm::AtomicCmpXchgInst::getNumOperands() const
Unexecuted instantiation: llvm::AtomicRMWInst::getNumOperands() const
llvm::GetElementPtrInst::getNumOperands() const
Line
Count
Source
149
125M
unsigned CLASS::getNumOperands() const { \
150
125M
  return OperandTraits<CLASS>::operands(this); \
151
125M
} \
Unexecuted instantiation: llvm::SelectInst::getNumOperands() const
Unexecuted instantiation: llvm::ExtractElementInst::getNumOperands() const
Unexecuted instantiation: llvm::InsertElementInst::getNumOperands() const
Unexecuted instantiation: llvm::ShuffleVectorInst::getNumOperands() const
Unexecuted instantiation: llvm::InsertValueInst::getNumOperands() const
llvm::PHINode::getNumOperands() const
Line
Count
Source
149
351M
unsigned CLASS::getNumOperands() const { \
150
351M
  return OperandTraits<CLASS>::operands(this); \
151
351M
} \
llvm::LandingPadInst::getNumOperands() const
Line
Count
Source
149
333k
unsigned CLASS::getNumOperands() const { \
150
333k
  return OperandTraits<CLASS>::operands(this); \
151
333k
} \
llvm::ReturnInst::getNumOperands() const
Line
Count
Source
149
14.6M
unsigned CLASS::getNumOperands() const { \
150
14.6M
  return OperandTraits<CLASS>::operands(this); \
151
14.6M
} \
llvm::BranchInst::getNumOperands() const
Line
Count
Source
149
1.28G
unsigned CLASS::getNumOperands() const { \
150
1.28G
  return OperandTraits<CLASS>::operands(this); \
151
1.28G
} \
llvm::SwitchInst::getNumOperands() const
Line
Count
Source
149
16.3M
unsigned CLASS::getNumOperands() const { \
150
16.3M
  return OperandTraits<CLASS>::operands(this); \
151
16.3M
} \
llvm::IndirectBrInst::getNumOperands() const
Line
Count
Source
149
18.6k
unsigned CLASS::getNumOperands() const { \
150
18.6k
  return OperandTraits<CLASS>::operands(this); \
151
18.6k
} \
Unexecuted instantiation: llvm::ResumeInst::getNumOperands() const
llvm::CatchSwitchInst::getNumOperands() const
Line
Count
Source
149
14.5k
unsigned CLASS::getNumOperands() const { \
150
14.5k
  return OperandTraits<CLASS>::operands(this); \
151
14.5k
} \
llvm::CatchReturnInst::getNumOperands() const
Line
Count
Source
149
10
unsigned CLASS::getNumOperands() const { \
150
10
  return OperandTraits<CLASS>::operands(this); \
151
10
} \
llvm::CleanupReturnInst::getNumOperands() const
Line
Count
Source
149
180
unsigned CLASS::getNumOperands() const { \
150
180
  return OperandTraits<CLASS>::operands(this); \
151
180
} \
Unexecuted instantiation: llvm::MemoryUse::getNumOperands() const
Unexecuted instantiation: llvm::MemoryDef::getNumOperands() const
Unexecuted instantiation: llvm::MemoryUseOrDef::getNumOperands() const
llvm::MemoryPhi::getNumOperands() const
Line
Count
Source
149
20.5M
unsigned CLASS::getNumOperands() const { \
150
20.5M
  return OperandTraits<CLASS>::operands(this); \
151
20.5M
} \
Unexecuted instantiation: llvm::UnaryConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::BinaryConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::SelectConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::ExtractElementConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::InsertElementConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::ShuffleVectorConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::ExtractValueConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::InsertValueConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::GetElementPtrConstantExpr::getNumOperands() const
Unexecuted instantiation: llvm::CompareConstantExpr::getNumOperands() const
Unexecuted instantiation: ValueList.cpp:llvm::(anonymous namespace)::ConstantPlaceHolder::getNumOperands() const
152
210M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
210M
  return this->OpFrom<Idx_nocapture>(this); \
154
210M
} \
llvm::Use& llvm::GlobalVariable::Op<0>()
Line
Count
Source
152
3.52M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
3.52M
  return this->OpFrom<Idx_nocapture>(this); \
154
3.52M
} \
llvm::Use& llvm::UnaryInstruction::Op<0>()
Line
Count
Source
152
33.2M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
33.2M
  return this->OpFrom<Idx_nocapture>(this); \
154
33.2M
} \
llvm::Use& llvm::CallBase::Op<-1>()
Line
Count
Source
152
4.82M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
4.82M
  return this->OpFrom<Idx_nocapture>(this); \
154
4.82M
} \
llvm::Use& llvm::FuncletPadInst::Op<-1>()
Line
Count
Source
152
1.20k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1.20k
  return this->OpFrom<Idx_nocapture>(this); \
154
1.20k
} \
llvm::Use& llvm::CmpInst::Op<0>()
Line
Count
Source
152
2.61M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
2.61M
  return this->OpFrom<Idx_nocapture>(this); \
154
2.61M
} \
llvm::Use& llvm::CmpInst::Op<1>()
Line
Count
Source
152
2.61M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
2.61M
  return this->OpFrom<Idx_nocapture>(this); \
154
2.61M
} \
llvm::Use& llvm::SelectInst::Op<0>()
Line
Count
Source
152
42.4M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
42.4M
  return this->OpFrom<Idx_nocapture>(this); \
154
42.4M
} \
llvm::Use& llvm::SelectInst::Op<1>()
Line
Count
Source
152
42.0M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
42.0M
  return this->OpFrom<Idx_nocapture>(this); \
154
42.0M
} \
llvm::Use& llvm::SelectInst::Op<2>()
Line
Count
Source
152
39.2M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
39.2M
  return this->OpFrom<Idx_nocapture>(this); \
154
39.2M
} \
llvm::Use& llvm::ExtractElementInst::Op<0>()
Line
Count
Source
152
411k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
411k
  return this->OpFrom<Idx_nocapture>(this); \
154
411k
} \
llvm::Use& llvm::ExtractElementInst::Op<1>()
Line
Count
Source
152
337k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
337k
  return this->OpFrom<Idx_nocapture>(this); \
154
337k
} \
llvm::Use& llvm::BranchInst::Op<-3>()
Line
Count
Source
152
1.97M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1.97M
  return this->OpFrom<Idx_nocapture>(this); \
154
1.97M
} \
llvm::Use& llvm::BranchInst::Op<-1>()
Line
Count
Source
152
6.63M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
6.63M
  return this->OpFrom<Idx_nocapture>(this); \
154
6.63M
} \
llvm::Use& llvm::CallBase::Op<-3>()
Line
Count
Source
152
58.3k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
58.3k
  return this->OpFrom<Idx_nocapture>(this); \
154
58.3k
} \
llvm::Use& llvm::CallBase::Op<-2>()
Line
Count
Source
152
58.0k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
58.0k
  return this->OpFrom<Idx_nocapture>(this); \
154
58.0k
} \
llvm::Use& llvm::CatchReturnInst::Op<0>()
Line
Count
Source
152
433
template <int Idx_nocapture> Use &CLASS::Op() { \
153
433
  return this->OpFrom<Idx_nocapture>(this); \
154
433
} \
llvm::Use& llvm::CatchReturnInst::Op<1>()
Line
Count
Source
152
438
template <int Idx_nocapture> Use &CLASS::Op() { \
153
438
  return this->OpFrom<Idx_nocapture>(this); \
154
438
} \
llvm::Use& llvm::CleanupReturnInst::Op<0>()
Line
Count
Source
152
491
template <int Idx_nocapture> Use &CLASS::Op() { \
153
491
  return this->OpFrom<Idx_nocapture>(this); \
154
491
} \
llvm::Use& llvm::CleanupReturnInst::Op<1>()
Line
Count
Source
152
175
template <int Idx_nocapture> Use &CLASS::Op() { \
153
175
  return this->OpFrom<Idx_nocapture>(this); \
154
175
} \
llvm::Use& llvm::UnaryConstantExpr::Op<0>()
Line
Count
Source
152
367k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
367k
  return this->OpFrom<Idx_nocapture>(this); \
154
367k
} \
llvm::Use& llvm::BinaryConstantExpr::Op<0>()
Line
Count
Source
152
12.7k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
12.7k
  return this->OpFrom<Idx_nocapture>(this); \
154
12.7k
} \
llvm::Use& llvm::BinaryConstantExpr::Op<1>()
Line
Count
Source
152
6.38k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
6.38k
  return this->OpFrom<Idx_nocapture>(this); \
154
6.38k
} \
llvm::Use& llvm::SelectConstantExpr::Op<0>()
Line
Count
Source
152
188
template <int Idx_nocapture> Use &CLASS::Op() { \
153
188
  return this->OpFrom<Idx_nocapture>(this); \
154
188
} \
llvm::Use& llvm::SelectConstantExpr::Op<1>()
Line
Count
Source
152
94
template <int Idx_nocapture> Use &CLASS::Op() { \
153
94
  return this->OpFrom<Idx_nocapture>(this); \
154
94
} \
llvm::Use& llvm::SelectConstantExpr::Op<2>()
Line
Count
Source
152
94
template <int Idx_nocapture> Use &CLASS::Op() { \
153
94
  return this->OpFrom<Idx_nocapture>(this); \
154
94
} \
llvm::Use& llvm::ExtractElementConstantExpr::Op<0>()
Line
Count
Source
152
198
template <int Idx_nocapture> Use &CLASS::Op() { \
153
198
  return this->OpFrom<Idx_nocapture>(this); \
154
198
} \
llvm::Use& llvm::ExtractElementConstantExpr::Op<1>()
Line
Count
Source
152
99
template <int Idx_nocapture> Use &CLASS::Op() { \
153
99
  return this->OpFrom<Idx_nocapture>(this); \
154
99
} \
Unexecuted instantiation: llvm::Use& llvm::InsertElementConstantExpr::Op<0>()
Unexecuted instantiation: llvm::Use& llvm::InsertElementConstantExpr::Op<1>()
Unexecuted instantiation: llvm::Use& llvm::InsertElementConstantExpr::Op<2>()
Unexecuted instantiation: llvm::Use& llvm::ShuffleVectorConstantExpr::Op<0>()
Unexecuted instantiation: llvm::Use& llvm::ShuffleVectorConstantExpr::Op<1>()
Unexecuted instantiation: llvm::Use& llvm::ShuffleVectorConstantExpr::Op<2>()
llvm::Use& llvm::ExtractValueConstantExpr::Op<0>()
Line
Count
Source
152
10
template <int Idx_nocapture> Use &CLASS::Op() { \
153
10
  return this->OpFrom<Idx_nocapture>(this); \
154
10
} \
llvm::Use& llvm::InsertValueConstantExpr::Op<0>()
Line
Count
Source
152
2
template <int Idx_nocapture> Use &CLASS::Op() { \
153
2
  return this->OpFrom<Idx_nocapture>(this); \
154
2
} \
llvm::Use& llvm::InsertValueConstantExpr::Op<1>()
Line
Count
Source
152
1
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1
  return this->OpFrom<Idx_nocapture>(this); \
154
1
} \
llvm::Use& llvm::CompareConstantExpr::Op<0>()
Line
Count
Source
152
1.52k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1.52k
  return this->OpFrom<Idx_nocapture>(this); \
154
1.52k
} \
llvm::Use& llvm::CompareConstantExpr::Op<1>()
Line
Count
Source
152
761
template <int Idx_nocapture> Use &CLASS::Op() { \
153
761
  return this->OpFrom<Idx_nocapture>(this); \
154
761
} \
llvm::Use& llvm::BlockAddress::Op<0>()
Line
Count
Source
152
1.00k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1.00k
  return this->OpFrom<Idx_nocapture>(this); \
154
1.00k
} \
llvm::Use& llvm::GetElementPtrConstantExpr::Op<0>()
Line
Count
Source
152
614k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
614k
  return this->OpFrom<Idx_nocapture>(this); \
154
614k
} \
llvm::Use& llvm::Function::Op<0>()
Line
Count
Source
152
42.2k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
42.2k
  return this->OpFrom<Idx_nocapture>(this); \
154
42.2k
} \
llvm::Use& llvm::Function::Op<1>()
Line
Count
Source
152
22.5k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
22.5k
  return this->OpFrom<Idx_nocapture>(this); \
154
22.5k
} \
llvm::Use& llvm::Function::Op<2>()
Line
Count
Source
152
22.6k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
22.6k
  return this->OpFrom<Idx_nocapture>(this); \
154
22.6k
} \
llvm::Use& llvm::GlobalIndirectSymbol::Op<0>()
Line
Count
Source
152
7.98k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
7.98k
  return this->OpFrom<Idx_nocapture>(this); \
154
7.98k
} \
llvm::Use& llvm::PHINode::Op<-1>()
Line
Count
Source
152
2.96M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
2.96M
  return this->OpFrom<Idx_nocapture>(this); \
154
2.96M
} \
llvm::Use& llvm::ReturnInst::Op<0>()
Line
Count
Source
152
1.20M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
1.20M
  return this->OpFrom<Idx_nocapture>(this); \
154
1.20M
} \
llvm::Use& llvm::ResumeInst::Op<0>()
Line
Count
Source
152
9.66k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
9.66k
  return this->OpFrom<Idx_nocapture>(this); \
154
9.66k
} \
llvm::Use& llvm::CatchSwitchInst::Op<0>()
Line
Count
Source
152
540
template <int Idx_nocapture> Use &CLASS::Op() { \
153
540
  return this->OpFrom<Idx_nocapture>(this); \
154
540
} \
llvm::Use& llvm::BranchInst::Op<-2>()
Line
Count
Source
152
2.13M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
2.13M
  return this->OpFrom<Idx_nocapture>(this); \
154
2.13M
} \
llvm::Use& llvm::StoreInst::Op<0>()
Line
Count
Source
152
5.03M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
5.03M
  return this->OpFrom<Idx_nocapture>(this); \
154
5.03M
} \
llvm::Use& llvm::StoreInst::Op<1>()
Line
Count
Source
152
5.03M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
5.03M
  return this->OpFrom<Idx_nocapture>(this); \
154
5.03M
} \
llvm::Use& llvm::AtomicCmpXchgInst::Op<0>()
Line
Count
Source
152
9.25k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
9.25k
  return this->OpFrom<Idx_nocapture>(this); \
154
9.25k
} \
llvm::Use& llvm::AtomicCmpXchgInst::Op<1>()
Line
Count
Source
152
9.25k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
9.25k
  return this->OpFrom<Idx_nocapture>(this); \
154
9.25k
} \
llvm::Use& llvm::AtomicCmpXchgInst::Op<2>()
Line
Count
Source
152
9.25k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
9.25k
  return this->OpFrom<Idx_nocapture>(this); \
154
9.25k
} \
llvm::Use& llvm::AtomicRMWInst::Op<0>()
Line
Count
Source
152
35.9k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
35.9k
  return this->OpFrom<Idx_nocapture>(this); \
154
35.9k
} \
llvm::Use& llvm::AtomicRMWInst::Op<1>()
Line
Count
Source
152
35.9k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
35.9k
  return this->OpFrom<Idx_nocapture>(this); \
154
35.9k
} \
llvm::Use& llvm::GetElementPtrInst::Op<0>()
Line
Count
Source
152
4.49M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
4.49M
  return this->OpFrom<Idx_nocapture>(this); \
154
4.49M
} \
llvm::Use& llvm::InsertElementInst::Op<0>()
Line
Count
Source
152
101k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
101k
  return this->OpFrom<Idx_nocapture>(this); \
154
101k
} \
llvm::Use& llvm::InsertElementInst::Op<1>()
Line
Count
Source
152
101k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
101k
  return this->OpFrom<Idx_nocapture>(this); \
154
101k
} \
llvm::Use& llvm::InsertElementInst::Op<2>()
Line
Count
Source
152
101k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
101k
  return this->OpFrom<Idx_nocapture>(this); \
154
101k
} \
llvm::Use& llvm::ShuffleVectorInst::Op<0>()
Line
Count
Source
152
125k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
125k
  return this->OpFrom<Idx_nocapture>(this); \
154
125k
} \
llvm::Use& llvm::ShuffleVectorInst::Op<1>()
Line
Count
Source
152
125k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
125k
  return this->OpFrom<Idx_nocapture>(this); \
154
125k
} \
llvm::Use& llvm::ShuffleVectorInst::Op<2>()
Line
Count
Source
152
125k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
125k
  return this->OpFrom<Idx_nocapture>(this); \
154
125k
} \
llvm::Use& llvm::InsertValueInst::Op<0>()
Line
Count
Source
152
52.9k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
52.9k
  return this->OpFrom<Idx_nocapture>(this); \
154
52.9k
} \
llvm::Use& llvm::InsertValueInst::Op<1>()
Line
Count
Source
152
52.9k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
52.9k
  return this->OpFrom<Idx_nocapture>(this); \
154
52.9k
} \
llvm::Use& llvm::BinaryOperator::Op<0>()
Line
Count
Source
152
3.55M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
3.55M
  return this->OpFrom<Idx_nocapture>(this); \
154
3.55M
} \
llvm::Use& llvm::BinaryOperator::Op<1>()
Line
Count
Source
152
3.55M
template <int Idx_nocapture> Use &CLASS::Op() { \
153
3.55M
  return this->OpFrom<Idx_nocapture>(this); \
154
3.55M
} \
llvm::Use& llvm::SwitchInst::Op<0>()
Line
Count
Source
152
46.7k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
46.7k
  return this->OpFrom<Idx_nocapture>(this); \
154
46.7k
} \
llvm::Use& llvm::SwitchInst::Op<1>()
Line
Count
Source
152
46.7k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
46.7k
  return this->OpFrom<Idx_nocapture>(this); \
154
46.7k
} \
llvm::Use& llvm::IndirectBrInst::Op<0>()
Line
Count
Source
152
430
template <int Idx_nocapture> Use &CLASS::Op() { \
153
430
  return this->OpFrom<Idx_nocapture>(this); \
154
430
} \
ValueList.cpp:llvm::Use& llvm::(anonymous namespace)::ConstantPlaceHolder::Op<0>()
Line
Count
Source
152
5.80k
template <int Idx_nocapture> Use &CLASS::Op() { \
153
5.80k
  return this->OpFrom<Idx_nocapture>(this); \
154
5.80k
} \
155
3.57G
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
3.57G
  return this->OpFrom<Idx_nocapture>(this); \
157
3.57G
}
llvm::Use const& llvm::GlobalVariable::Op<0>() const
Line
Count
Source
155
3.30M
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
3.30M
  return this->OpFrom<Idx_nocapture>(this); \
157
3.30M
}
llvm::Use const& llvm::BlockAddress::Op<0>() const
Line
Count
Source
155
3.00k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
3.00k
  return this->OpFrom<Idx_nocapture>(this); \
157
3.00k
}
llvm::Use const& llvm::BlockAddress::Op<1>() const
Line
Count
Source
155
3.11k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
3.11k
  return this->OpFrom<Idx_nocapture>(this); \
157
3.11k
}
llvm::Use const& llvm::CallBase::Op<-1>() const
Line
Count
Source
155
1.86G
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
1.86G
  return this->OpFrom<Idx_nocapture>(this); \
157
1.86G
}
llvm::Use const& llvm::FuncletPadInst::Op<-1>() const
Line
Count
Source
155
9.52k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
9.52k
  return this->OpFrom<Idx_nocapture>(this); \
157
9.52k
}
llvm::Use const& llvm::SelectInst::Op<0>() const
Line
Count
Source
155
114k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
114k
  return this->OpFrom<Idx_nocapture>(this); \
157
114k
}
llvm::Use const& llvm::SelectInst::Op<1>() const
Line
Count
Source
155
831k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
831k
  return this->OpFrom<Idx_nocapture>(this); \
157
831k
}
llvm::Use const& llvm::SelectInst::Op<2>() const
Line
Count
Source
155
350k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
350k
  return this->OpFrom<Idx_nocapture>(this); \
157
350k
}
llvm::Use const& llvm::ExtractElementInst::Op<0>() const
Line
Count
Source
155
129k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
129k
  return this->OpFrom<Idx_nocapture>(this); \
157
129k
}
Unexecuted instantiation: llvm::Use const& llvm::ExtractElementInst::Op<1>() const
llvm::Use const& llvm::ShuffleVectorInst::Op<0>() const
Line
Count
Source
155
620k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
620k
  return this->OpFrom<Idx_nocapture>(this); \
157
620k
}
llvm::Use const& llvm::BranchInst::Op<-3>() const
Line
Count
Source
155
370M
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
370M
  return this->OpFrom<Idx_nocapture>(this); \
157
370M
}
llvm::Use const& llvm::BranchInst::Op<-1>() const
Line
Count
Source
155
1.31G
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
1.31G
  return this->OpFrom<Idx_nocapture>(this); \
157
1.31G
}
llvm::Use const& llvm::CallBase::Op<-3>() const
Line
Count
Source
155
9.77M
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
9.77M
  return this->OpFrom<Idx_nocapture>(this); \
157
9.77M
}
llvm::Use const& llvm::CallBase::Op<-2>() const
Line
Count
Source
155
7.24M
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
7.24M
  return this->OpFrom<Idx_nocapture>(this); \
157
7.24M
}
llvm::Use const& llvm::ResumeInst::Op<0>() const
Line
Count
Source
155
82.1k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
82.1k
  return this->OpFrom<Idx_nocapture>(this); \
157
82.1k
}
llvm::Use const& llvm::CatchReturnInst::Op<0>() const
Line
Count
Source
155
718
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
718
  return this->OpFrom<Idx_nocapture>(this); \
157
718
}
llvm::Use const& llvm::CatchReturnInst::Op<1>() const
Line
Count
Source
155
6.92k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
6.92k
  return this->OpFrom<Idx_nocapture>(this); \
157
6.92k
}
llvm::Use const& llvm::CleanupReturnInst::Op<0>() const
Line
Count
Source
155
245
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
245
  return this->OpFrom<Idx_nocapture>(this); \
157
245
}
llvm::Use const& llvm::CleanupReturnInst::Op<1>() const
Line
Count
Source
155
1.79k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
1.79k
  return this->OpFrom<Idx_nocapture>(this); \
157
1.79k
}
llvm::Use const& llvm::Function::Op<0>() const
Line
Count
Source
155
498k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
498k
  return this->OpFrom<Idx_nocapture>(this); \
157
498k
}
llvm::Use const& llvm::Function::Op<1>() const
Line
Count
Source
155
78
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
78
  return this->OpFrom<Idx_nocapture>(this); \
157
78
}
llvm::Use const& llvm::Function::Op<2>() const
Line
Count
Source
155
198
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
198
  return this->OpFrom<Idx_nocapture>(this); \
157
198
}
llvm::Use const& llvm::ReturnInst::Op<0>() const
Line
Count
Source
155
510k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
510k
  return this->OpFrom<Idx_nocapture>(this); \
157
510k
}
llvm::Use const& llvm::BranchInst::Op<-2>() const
Line
Count
Source
155
676k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
676k
  return this->OpFrom<Idx_nocapture>(this); \
157
676k
}
llvm::Use const& llvm::ShuffleVectorInst::Op<1>() const
Line
Count
Source
155
1.17k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
1.17k
  return this->OpFrom<Idx_nocapture>(this); \
157
1.17k
}
llvm::Use const& llvm::UnaryInstruction::Op<0>() const
Line
Count
Source
155
2
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
2
  return this->OpFrom<Idx_nocapture>(this); \
157
2
}
llvm::Use const& llvm::BinaryOperator::Op<0>() const
Line
Count
Source
155
968k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
968k
  return this->OpFrom<Idx_nocapture>(this); \
157
968k
}
llvm::Use const& llvm::BinaryOperator::Op<1>() const
Line
Count
Source
155
968k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
968k
  return this->OpFrom<Idx_nocapture>(this); \
157
968k
}
llvm::Use const& llvm::CmpInst::Op<0>() const
Line
Count
Source
155
838k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
838k
  return this->OpFrom<Idx_nocapture>(this); \
157
838k
}
llvm::Use const& llvm::CmpInst::Op<1>() const
Line
Count
Source
155
838k
template <int Idx_nocapture> const Use &CLASS::Op() const { \
156
838k
  return this->OpFrom<Idx_nocapture>(this); \
157
838k
}
158
159
160
} // End llvm namespace
161
162
#endif