Coverage Report

Created: 2018-12-11 17:59

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/include/llvm/Analysis/TargetTransformInfo.h
Line
Count
Source (jump to first uncovered line)
1
//===- TargetTransformInfo.h ------------------------------------*- C++ -*-===//
2
//
3
//                     The LLVM Compiler Infrastructure
4
//
5
// This file is distributed under the University of Illinois Open Source
6
// License. See LICENSE.TXT for details.
7
//
8
//===----------------------------------------------------------------------===//
9
/// \file
10
/// This pass exposes codegen information to IR-level passes. Every
11
/// transformation that uses codegen information is broken into three parts:
12
/// 1. The IR-level analysis pass.
13
/// 2. The IR-level transformation interface which provides the needed
14
///    information.
15
/// 3. Codegen-level implementation which uses target-specific hooks.
16
///
17
/// This file defines #2, which is the interface that IR-level transformations
18
/// use for querying the codegen.
19
///
20
//===----------------------------------------------------------------------===//
21
22
#ifndef LLVM_ANALYSIS_TARGETTRANSFORMINFO_H
23
#define LLVM_ANALYSIS_TARGETTRANSFORMINFO_H
24
25
#include "llvm/ADT/Optional.h"
26
#include "llvm/IR/Operator.h"
27
#include "llvm/IR/PassManager.h"
28
#include "llvm/Pass.h"
29
#include "llvm/Support/AtomicOrdering.h"
30
#include "llvm/Support/DataTypes.h"
31
#include <functional>
32
33
namespace llvm {
34
35
namespace Intrinsic {
36
enum ID : unsigned;
37
}
38
39
class Function;
40
class GlobalValue;
41
class IntrinsicInst;
42
class LoadInst;
43
class Loop;
44
class SCEV;
45
class ScalarEvolution;
46
class StoreInst;
47
class SwitchInst;
48
class Type;
49
class User;
50
class Value;
51
52
/// Information about a load/store intrinsic defined by the target.
53
struct MemIntrinsicInfo {
54
  /// This is the pointer that the intrinsic is loading from or storing to.
55
  /// If this is non-null, then analysis/optimization passes can assume that
56
  /// this intrinsic is functionally equivalent to a load/store from this
57
  /// pointer.
58
  Value *PtrVal = nullptr;
59
60
  // Ordering for atomic operations.
61
  AtomicOrdering Ordering = AtomicOrdering::NotAtomic;
62
63
  // Same Id is set by the target for corresponding load/store intrinsics.
64
  unsigned short MatchingId = 0;
65
66
  bool ReadMem = false;
67
  bool WriteMem = false;
68
  bool IsVolatile = false;
69
70
1.97k
  bool isUnordered() const {
71
1.97k
    return (Ordering == AtomicOrdering::NotAtomic ||
72
1.97k
            
Ordering == AtomicOrdering::Unordered0
) && !IsVolatile;
73
1.97k
  }
74
};
75
76
/// This pass provides access to the codegen interfaces that are needed
77
/// for IR-level transformations.
78
class TargetTransformInfo {
79
public:
80
  /// Construct a TTI object using a type implementing the \c Concept
81
  /// API below.
82
  ///
83
  /// This is used by targets to construct a TTI wrapping their target-specific
84
  /// implementaion that encodes appropriate costs for their target.
85
  template <typename T> TargetTransformInfo(T Impl);
86
87
  /// Construct a baseline TTI object using a minimal implementation of
88
  /// the \c Concept API below.
89
  ///
90
  /// The TTI implementation will reflect the information in the DataLayout
91
  /// provided if non-null.
92
  explicit TargetTransformInfo(const DataLayout &DL);
93
94
  // Provide move semantics.
95
  TargetTransformInfo(TargetTransformInfo &&Arg);
96
  TargetTransformInfo &operator=(TargetTransformInfo &&RHS);
97
98
  // We need to define the destructor out-of-line to define our sub-classes
99
  // out-of-line.
100
  ~TargetTransformInfo();
101
102
  /// Handle the invalidation of this information.
103
  ///
104
  /// When used as a result of \c TargetIRAnalysis this method will be called
105
  /// when the function this was computed for changes. When it returns false,
106
  /// the information is preserved across those changes.
107
  bool invalidate(Function &, const PreservedAnalyses &,
108
1.63k
                  FunctionAnalysisManager::Invalidator &) {
109
1.63k
    // FIXME: We should probably in some way ensure that the subtarget
110
1.63k
    // information for a function hasn't changed.
111
1.63k
    return false;
112
1.63k
  }
113
114
  /// \name Generic Target Information
115
  /// @{
116
117
  /// The kind of cost model.
118
  ///
119
  /// There are several different cost models that can be customized by the
120
  /// target. The normalization of each cost model may be target specific.
121
  enum TargetCostKind {
122
    TCK_RecipThroughput, ///< Reciprocal throughput.
123
    TCK_Latency,         ///< The latency of instruction.
124
    TCK_CodeSize         ///< Instruction code size.
125
  };
126
127
  /// Query the cost of a specified instruction.
128
  ///
129
  /// Clients should use this interface to query the cost of an existing
130
  /// instruction. The instruction must have a valid parent (basic block).
131
  ///
132
  /// Note, this method does not cache the cost calculation and it
133
  /// can be expensive in some cases.
134
854k
  int getInstructionCost(const Instruction *I, enum TargetCostKind kind) const {
135
854k
    switch (kind){
136
854k
    case TCK_RecipThroughput:
137
256k
      return getInstructionThroughput(I);
138
854k
139
854k
    case TCK_Latency:
140
119
      return getInstructionLatency(I);
141
854k
142
854k
    case TCK_CodeSize:
143
597k
      return getUserCost(I);
144
0
    }
145
0
    llvm_unreachable("Unknown instruction cost kind");
146
0
  }
147
148
  /// Underlying constants for 'cost' values in this interface.
149
  ///
150
  /// Many APIs in this interface return a cost. This enum defines the
151
  /// fundamental values that should be used to interpret (and produce) those
152
  /// costs. The costs are returned as an int rather than a member of this
153
  /// enumeration because it is expected that the cost of one IR instruction
154
  /// may have a multiplicative factor to it or otherwise won't fit directly
155
  /// into the enum. Moreover, it is common to sum or average costs which works
156
  /// better as simple integral values. Thus this enum only provides constants.
157
  /// Also note that the returned costs are signed integers to make it natural
158
  /// to add, subtract, and test with zero (a common boundary condition). It is
159
  /// not expected that 2^32 is a realistic cost to be modeling at any point.
160
  ///
161
  /// Note that these costs should usually reflect the intersection of code-size
162
  /// cost and execution cost. A free instruction is typically one that folds
163
  /// into another instruction. For example, reg-to-reg moves can often be
164
  /// skipped by renaming the registers in the CPU, but they still are encoded
165
  /// and thus wouldn't be considered 'free' here.
166
  enum TargetCostConstants {
167
    TCC_Free = 0,     ///< Expected to fold away in lowering.
168
    TCC_Basic = 1,    ///< The cost of a typical 'add' instruction.
169
    TCC_Expensive = 4 ///< The cost of a 'div' instruction on x86.
170
  };
171
172
  /// Estimate the cost of a specific operation when lowered.
173
  ///
174
  /// Note that this is designed to work on an arbitrary synthetic opcode, and
175
  /// thus work for hypothetical queries before an instruction has even been
176
  /// formed. However, this does *not* work for GEPs, and must not be called
177
  /// for a GEP instruction. Instead, use the dedicated getGEPCost interface as
178
  /// analyzing a GEP's cost required more information.
179
  ///
180
  /// Typically only the result type is required, and the operand type can be
181
  /// omitted. However, if the opcode is one of the cast instructions, the
182
  /// operand type is required.
183
  ///
184
  /// The returned cost is defined in terms of \c TargetCostConstants, see its
185
  /// comments for a detailed explanation of the cost values.
186
  int getOperationCost(unsigned Opcode, Type *Ty, Type *OpTy = nullptr) const;
187
188
  /// Estimate the cost of a GEP operation when lowered.
189
  ///
190
  /// The contract for this function is the same as \c getOperationCost except
191
  /// that it supports an interface that provides extra information specific to
192
  /// the GEP operation.
193
  int getGEPCost(Type *PointeeType, const Value *Ptr,
194
                 ArrayRef<const Value *> Operands) const;
195
196
  /// Estimate the cost of a EXT operation when lowered.
197
  ///
198
  /// The contract for this function is the same as \c getOperationCost except
199
  /// that it supports an interface that provides extra information specific to
200
  /// the EXT operation.
201
  int getExtCost(const Instruction *I, const Value *Src) const;
202
203
  /// Estimate the cost of a function call when lowered.
204
  ///
205
  /// The contract for this is the same as \c getOperationCost except that it
206
  /// supports an interface that provides extra information specific to call
207
  /// instructions.
208
  ///
209
  /// This is the most basic query for estimating call cost: it only knows the
210
  /// function type and (potentially) the number of arguments at the call site.
211
  /// The latter is only interesting for varargs function types.
212
  int getCallCost(FunctionType *FTy, int NumArgs = -1) const;
213
214
  /// Estimate the cost of calling a specific function when lowered.
215
  ///
216
  /// This overload adds the ability to reason about the particular function
217
  /// being called in the event it is a library call with special lowering.
218
  int getCallCost(const Function *F, int NumArgs = -1) const;
219
220
  /// Estimate the cost of calling a specific function when lowered.
221
  ///
222
  /// This overload allows specifying a set of candidate argument values.
223
  int getCallCost(const Function *F, ArrayRef<const Value *> Arguments) const;
224
225
  /// \returns A value by which our inlining threshold should be multiplied.
226
  /// This is primarily used to bump up the inlining threshold wholesale on
227
  /// targets where calls are unusually expensive.
228
  ///
229
  /// TODO: This is a rather blunt instrument.  Perhaps altering the costs of
230
  /// individual classes of instructions would be better.
231
  unsigned getInliningThresholdMultiplier() const;
232
233
  /// Estimate the cost of an intrinsic when lowered.
234
  ///
235
  /// Mirrors the \c getCallCost method but uses an intrinsic identifier.
236
  int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
237
                       ArrayRef<Type *> ParamTys) const;
238
239
  /// Estimate the cost of an intrinsic when lowered.
240
  ///
241
  /// Mirrors the \c getCallCost method but uses an intrinsic identifier.
242
  int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
243
                       ArrayRef<const Value *> Arguments) const;
244
245
  /// \return The estimated number of case clusters when lowering \p 'SI'.
246
  /// \p JTSize Set a jump table size only when \p SI is suitable for a jump
247
  /// table.
248
  unsigned getEstimatedNumberOfCaseClusters(const SwitchInst &SI,
249
                                            unsigned &JTSize) const;
250
251
  /// Estimate the cost of a given IR user when lowered.
252
  ///
253
  /// This can estimate the cost of either a ConstantExpr or Instruction when
254
  /// lowered. It has two primary advantages over the \c getOperationCost and
255
  /// \c getGEPCost above, and one significant disadvantage: it can only be
256
  /// used when the IR construct has already been formed.
257
  ///
258
  /// The advantages are that it can inspect the SSA use graph to reason more
259
  /// accurately about the cost. For example, all-constant-GEPs can often be
260
  /// folded into a load or other instruction, but if they are used in some
261
  /// other context they may not be folded. This routine can distinguish such
262
  /// cases.
263
  ///
264
  /// \p Operands is a list of operands which can be a result of transformations
265
  /// of the current operands. The number of the operands on the list must equal
266
  /// to the number of the current operands the IR user has. Their order on the
267
  /// list must be the same as the order of the current operands the IR user
268
  /// has.
269
  ///
270
  /// The returned cost is defined in terms of \c TargetCostConstants, see its
271
  /// comments for a detailed explanation of the cost values.
272
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) const;
273
274
  /// This is a helper function which calls the two-argument getUserCost
275
  /// with \p Operands which are the current operands U has.
276
50.7M
  int getUserCost(const User *U) const {
277
50.7M
    SmallVector<const Value *, 4> Operands(U->value_op_begin(),
278
50.7M
                                           U->value_op_end());
279
50.7M
    return getUserCost(U, Operands);
280
50.7M
  }
281
282
  /// Return true if branch divergence exists.
283
  ///
284
  /// Branch divergence has a significantly negative impact on GPU performance
285
  /// when threads in the same wavefront take different paths due to conditional
286
  /// branches.
287
  bool hasBranchDivergence() const;
288
289
  /// Returns whether V is a source of divergence.
290
  ///
291
  /// This function provides the target-dependent information for
292
  /// the target-independent LegacyDivergenceAnalysis. LegacyDivergenceAnalysis first
293
  /// builds the dependency graph, and then runs the reachability algorithm
294
  /// starting with the sources of divergence.
295
  bool isSourceOfDivergence(const Value *V) const;
296
297
  // Returns true for the target specific
298
  // set of operations which produce uniform result
299
  // even taking non-unform arguments
300
  bool isAlwaysUniform(const Value *V) const;
301
302
  /// Returns the address space ID for a target's 'flat' address space. Note
303
  /// this is not necessarily the same as addrspace(0), which LLVM sometimes
304
  /// refers to as the generic address space. The flat address space is a
305
  /// generic address space that can be used access multiple segments of memory
306
  /// with different address spaces. Access of a memory location through a
307
  /// pointer with this address space is expected to be legal but slower
308
  /// compared to the same memory location accessed through a pointer with a
309
  /// different address space.
310
  //
311
  /// This is for targets with different pointer representations which can
312
  /// be converted with the addrspacecast instruction. If a pointer is converted
313
  /// to this address space, optimizations should attempt to replace the access
314
  /// with the source address space.
315
  ///
316
  /// \returns ~0u if the target does not have such a flat address space to
317
  /// optimize away.
318
  unsigned getFlatAddressSpace() const;
319
320
  /// Test whether calls to a function lower to actual program function
321
  /// calls.
322
  ///
323
  /// The idea is to test whether the program is likely to require a 'call'
324
  /// instruction or equivalent in order to call the given function.
325
  ///
326
  /// FIXME: It's not clear that this is a good or useful query API. Client's
327
  /// should probably move to simpler cost metrics using the above.
328
  /// Alternatively, we could split the cost interface into distinct code-size
329
  /// and execution-speed costs. This would allow modelling the core of this
330
  /// query more accurately as a call is a single small instruction, but
331
  /// incurs significant execution cost.
332
  bool isLoweredToCall(const Function *F) const;
333
334
  struct LSRCost {
335
    /// TODO: Some of these could be merged. Also, a lexical ordering
336
    /// isn't always optimal.
337
    unsigned Insns;
338
    unsigned NumRegs;
339
    unsigned AddRecCost;
340
    unsigned NumIVMuls;
341
    unsigned NumBaseAdds;
342
    unsigned ImmCost;
343
    unsigned SetupCost;
344
    unsigned ScaleCost;
345
  };
346
347
  /// Parameters that control the generic loop unrolling transformation.
348
  struct UnrollingPreferences {
349
    /// The cost threshold for the unrolled loop. Should be relative to the
350
    /// getUserCost values returned by this API, and the expectation is that
351
    /// the unrolled loop's instructions when run through that interface should
352
    /// not exceed this cost. However, this is only an estimate. Also, specific
353
    /// loops may be unrolled even with a cost above this threshold if deemed
354
    /// profitable. Set this to UINT_MAX to disable the loop body cost
355
    /// restriction.
356
    unsigned Threshold;
357
    /// If complete unrolling will reduce the cost of the loop, we will boost
358
    /// the Threshold by a certain percent to allow more aggressive complete
359
    /// unrolling. This value provides the maximum boost percentage that we
360
    /// can apply to Threshold (The value should be no less than 100).
361
    /// BoostedThreshold = Threshold * min(RolledCost / UnrolledCost,
362
    ///                                    MaxPercentThresholdBoost / 100)
363
    /// E.g. if complete unrolling reduces the loop execution time by 50%
364
    /// then we boost the threshold by the factor of 2x. If unrolling is not
365
    /// expected to reduce the running time, then we do not increase the
366
    /// threshold.
367
    unsigned MaxPercentThresholdBoost;
368
    /// The cost threshold for the unrolled loop when optimizing for size (set
369
    /// to UINT_MAX to disable).
370
    unsigned OptSizeThreshold;
371
    /// The cost threshold for the unrolled loop, like Threshold, but used
372
    /// for partial/runtime unrolling (set to UINT_MAX to disable).
373
    unsigned PartialThreshold;
374
    /// The cost threshold for the unrolled loop when optimizing for size, like
375
    /// OptSizeThreshold, but used for partial/runtime unrolling (set to
376
    /// UINT_MAX to disable).
377
    unsigned PartialOptSizeThreshold;
378
    /// A forced unrolling factor (the number of concatenated bodies of the
379
    /// original loop in the unrolled loop body). When set to 0, the unrolling
380
    /// transformation will select an unrolling factor based on the current cost
381
    /// threshold and other factors.
382
    unsigned Count;
383
    /// A forced peeling factor (the number of bodied of the original loop
384
    /// that should be peeled off before the loop body). When set to 0, the
385
    /// unrolling transformation will select a peeling factor based on profile
386
    /// information and other factors.
387
    unsigned PeelCount;
388
    /// Default unroll count for loops with run-time trip count.
389
    unsigned DefaultUnrollRuntimeCount;
390
    // Set the maximum unrolling factor. The unrolling factor may be selected
391
    // using the appropriate cost threshold, but may not exceed this number
392
    // (set to UINT_MAX to disable). This does not apply in cases where the
393
    // loop is being fully unrolled.
394
    unsigned MaxCount;
395
    /// Set the maximum unrolling factor for full unrolling. Like MaxCount, but
396
    /// applies even if full unrolling is selected. This allows a target to fall
397
    /// back to Partial unrolling if full unrolling is above FullUnrollMaxCount.
398
    unsigned FullUnrollMaxCount;
399
    // Represents number of instructions optimized when "back edge"
400
    // becomes "fall through" in unrolled loop.
401
    // For now we count a conditional branch on a backedge and a comparison
402
    // feeding it.
403
    unsigned BEInsns;
404
    /// Allow partial unrolling (unrolling of loops to expand the size of the
405
    /// loop body, not only to eliminate small constant-trip-count loops).
406
    bool Partial;
407
    /// Allow runtime unrolling (unrolling of loops to expand the size of the
408
    /// loop body even when the number of loop iterations is not known at
409
    /// compile time).
410
    bool Runtime;
411
    /// Allow generation of a loop remainder (extra iterations after unroll).
412
    bool AllowRemainder;
413
    /// Allow emitting expensive instructions (such as divisions) when computing
414
    /// the trip count of a loop for runtime unrolling.
415
    bool AllowExpensiveTripCount;
416
    /// Apply loop unroll on any kind of loop
417
    /// (mainly to loops that fail runtime unrolling).
418
    bool Force;
419
    /// Allow using trip count upper bound to unroll loops.
420
    bool UpperBound;
421
    /// Allow peeling off loop iterations for loops with low dynamic tripcount.
422
    bool AllowPeeling;
423
    /// Allow unrolling of all the iterations of the runtime loop remainder.
424
    bool UnrollRemainder;
425
    /// Allow unroll and jam. Used to enable unroll and jam for the target.
426
    bool UnrollAndJam;
427
    /// Threshold for unroll and jam, for inner loop size. The 'Threshold'
428
    /// value above is used during unroll and jam for the outer loop size.
429
    /// This value is used in the same manner to limit the size of the inner
430
    /// loop.
431
    unsigned UnrollAndJamInnerLoopThreshold;
432
  };
433
434
  /// Get target-customized preferences for the generic loop unrolling
435
  /// transformation. The caller will initialize UP with the current
436
  /// target-independent defaults.
437
  void getUnrollingPreferences(Loop *L, ScalarEvolution &,
438
                               UnrollingPreferences &UP) const;
439
440
  /// @}
441
442
  /// \name Scalar Target Information
443
  /// @{
444
445
  /// Flags indicating the kind of support for population count.
446
  ///
447
  /// Compared to the SW implementation, HW support is supposed to
448
  /// significantly boost the performance when the population is dense, and it
449
  /// may or may not degrade performance if the population is sparse. A HW
450
  /// support is considered as "Fast" if it can outperform, or is on a par
451
  /// with, SW implementation when the population is sparse; otherwise, it is
452
  /// considered as "Slow".
453
  enum PopcntSupportKind { PSK_Software, PSK_SlowHardware, PSK_FastHardware };
454
455
  /// Return true if the specified immediate is legal add immediate, that
456
  /// is the target has add instructions which can add a register with the
457
  /// immediate without having to materialize the immediate into a register.
458
  bool isLegalAddImmediate(int64_t Imm) const;
459
460
  /// Return true if the specified immediate is legal icmp immediate,
461
  /// that is the target has icmp instructions which can compare a register
462
  /// against the immediate without having to materialize the immediate into a
463
  /// register.
464
  bool isLegalICmpImmediate(int64_t Imm) const;
465
466
  /// Return true if the addressing mode represented by AM is legal for
467
  /// this target, for a load/store of the specified type.
468
  /// The type may be VoidTy, in which case only return true if the addressing
469
  /// mode is legal for a load/store of any legal type.
470
  /// If target returns true in LSRWithInstrQueries(), I may be valid.
471
  /// TODO: Handle pre/postinc as well.
472
  bool isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset,
473
                             bool HasBaseReg, int64_t Scale,
474
                             unsigned AddrSpace = 0,
475
                             Instruction *I = nullptr) const;
476
477
  /// Return true if LSR cost of C1 is lower than C1.
478
  bool isLSRCostLess(TargetTransformInfo::LSRCost &C1,
479
                     TargetTransformInfo::LSRCost &C2) const;
480
481
  /// Return true if the target can fuse a compare and branch.
482
  /// Loop-strength-reduction (LSR) uses that knowledge to adjust its cost
483
  /// calculation for the instructions in a loop.
484
  bool canMacroFuseCmp() const;
485
486
  /// \return True is LSR should make efforts to create/preserve post-inc
487
  /// addressing mode expressions.
488
  bool shouldFavorPostInc() const;
489
490
  /// Return true if the target supports masked load/store
491
  /// AVX2 and AVX-512 targets allow masks for consecutive load and store
492
  bool isLegalMaskedStore(Type *DataType) const;
493
  bool isLegalMaskedLoad(Type *DataType) const;
494
495
  /// Return true if the target supports masked gather/scatter
496
  /// AVX-512 fully supports gather and scatter for vectors with 32 and 64
497
  /// bits scalar type.
498
  bool isLegalMaskedScatter(Type *DataType) const;
499
  bool isLegalMaskedGather(Type *DataType) const;
500
501
  /// Return true if the target has a unified operation to calculate division
502
  /// and remainder. If so, the additional implicit multiplication and
503
  /// subtraction required to calculate a remainder from division are free. This
504
  /// can enable more aggressive transformations for division and remainder than
505
  /// would typically be allowed using throughput or size cost models.
506
  bool hasDivRemOp(Type *DataType, bool IsSigned) const;
507
508
  /// Return true if the given instruction (assumed to be a memory access
509
  /// instruction) has a volatile variant. If that's the case then we can avoid
510
  /// addrspacecast to generic AS for volatile loads/stores. Default
511
  /// implementation returns false, which prevents address space inference for
512
  /// volatile loads/stores.
513
  bool hasVolatileVariant(Instruction *I, unsigned AddrSpace) const;
514
515
  /// Return true if target doesn't mind addresses in vectors.
516
  bool prefersVectorizedAddressing() const;
517
518
  /// Return the cost of the scaling factor used in the addressing
519
  /// mode represented by AM for this target, for a load/store
520
  /// of the specified type.
521
  /// If the AM is supported, the return value must be >= 0.
522
  /// If the AM is not supported, it returns a negative value.
523
  /// TODO: Handle pre/postinc as well.
524
  int getScalingFactorCost(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset,
525
                           bool HasBaseReg, int64_t Scale,
526
                           unsigned AddrSpace = 0) const;
527
528
  /// Return true if the loop strength reduce pass should make
529
  /// Instruction* based TTI queries to isLegalAddressingMode(). This is
530
  /// needed on SystemZ, where e.g. a memcpy can only have a 12 bit unsigned
531
  /// immediate offset and no index register.
532
  bool LSRWithInstrQueries() const;
533
534
  /// Return true if it's free to truncate a value of type Ty1 to type
535
  /// Ty2. e.g. On x86 it's free to truncate a i32 value in register EAX to i16
536
  /// by referencing its sub-register AX.
537
  bool isTruncateFree(Type *Ty1, Type *Ty2) const;
538
539
  /// Return true if it is profitable to hoist instruction in the
540
  /// then/else to before if.
541
  bool isProfitableToHoist(Instruction *I) const;
542
543
  bool useAA() const;
544
545
  /// Return true if this type is legal.
546
  bool isTypeLegal(Type *Ty) const;
547
548
  /// Returns the target's jmp_buf alignment in bytes.
549
  unsigned getJumpBufAlignment() const;
550
551
  /// Returns the target's jmp_buf size in bytes.
552
  unsigned getJumpBufSize() const;
553
554
  /// Return true if switches should be turned into lookup tables for the
555
  /// target.
556
  bool shouldBuildLookupTables() const;
557
558
  /// Return true if switches should be turned into lookup tables
559
  /// containing this constant value for the target.
560
  bool shouldBuildLookupTablesForConstant(Constant *C) const;
561
562
  /// Return true if the input function which is cold at all call sites,
563
  ///  should use coldcc calling convention.
564
  bool useColdCCForColdCall(Function &F) const;
565
566
  unsigned getScalarizationOverhead(Type *Ty, bool Insert, bool Extract) const;
567
568
  unsigned getOperandsScalarizationOverhead(ArrayRef<const Value *> Args,
569
                                            unsigned VF) const;
570
571
  /// If target has efficient vector element load/store instructions, it can
572
  /// return true here so that insertion/extraction costs are not added to
573
  /// the scalarization cost of a load/store.
574
  bool supportsEfficientVectorElementLoadStore() const;
575
576
  /// Don't restrict interleaved unrolling to small loops.
577
  bool enableAggressiveInterleaving(bool LoopHasReductions) const;
578
579
  /// If not nullptr, enable inline expansion of memcmp. IsZeroCmp is
580
  /// true if this is the expansion of memcmp(p1, p2, s) == 0.
581
  struct MemCmpExpansionOptions {
582
    // The list of available load sizes (in bytes), sorted in decreasing order.
583
    SmallVector<unsigned, 8> LoadSizes;
584
  };
585
  const MemCmpExpansionOptions *enableMemCmpExpansion(bool IsZeroCmp) const;
586
587
  /// Enable matching of interleaved access groups.
588
  bool enableInterleavedAccessVectorization() const;
589
590
  /// Enable matching of interleaved access groups that contain predicated 
591
  /// accesses or gaps and therefore vectorized using masked
592
  /// vector loads/stores.
593
  bool enableMaskedInterleavedAccessVectorization() const;
594
595
  /// Indicate that it is potentially unsafe to automatically vectorize
596
  /// floating-point operations because the semantics of vector and scalar
597
  /// floating-point semantics may differ. For example, ARM NEON v7 SIMD math
598
  /// does not support IEEE-754 denormal numbers, while depending on the
599
  /// platform, scalar floating-point math does.
600
  /// This applies to floating-point math operations and calls, not memory
601
  /// operations, shuffles, or casts.
602
  bool isFPVectorizationPotentiallyUnsafe() const;
603
604
  /// Determine if the target supports unaligned memory accesses.
605
  bool allowsMisalignedMemoryAccesses(LLVMContext &Context,
606
                                      unsigned BitWidth, unsigned AddressSpace = 0,
607
                                      unsigned Alignment = 1,
608
                                      bool *Fast = nullptr) const;
609
610
  /// Return hardware support for population count.
611
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) const;
612
613
  /// Return true if the hardware has a fast square-root instruction.
614
  bool haveFastSqrt(Type *Ty) const;
615
616
  /// Return true if it is faster to check if a floating-point value is NaN
617
  /// (or not-NaN) versus a comparison against a constant FP zero value.
618
  /// Targets should override this if materializing a 0.0 for comparison is
619
  /// generally as cheap as checking for ordered/unordered.
620
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) const;
621
622
  /// Return the expected cost of supporting the floating point operation
623
  /// of the specified type.
624
  int getFPOpCost(Type *Ty) const;
625
626
  /// Return the expected cost of materializing for the given integer
627
  /// immediate of the specified type.
628
  int getIntImmCost(const APInt &Imm, Type *Ty) const;
629
630
  /// Return the expected cost of materialization for the given integer
631
  /// immediate of the specified type for a given instruction. The cost can be
632
  /// zero if the immediate can be folded into the specified instruction.
633
  int getIntImmCost(unsigned Opc, unsigned Idx, const APInt &Imm,
634
                    Type *Ty) const;
635
  int getIntImmCost(Intrinsic::ID IID, unsigned Idx, const APInt &Imm,
636
                    Type *Ty) const;
637
638
  /// Return the expected cost for the given integer when optimising
639
  /// for size. This is different than the other integer immediate cost
640
  /// functions in that it is subtarget agnostic. This is useful when you e.g.
641
  /// target one ISA such as Aarch32 but smaller encodings could be possible
642
  /// with another such as Thumb. This return value is used as a penalty when
643
  /// the total costs for a constant is calculated (the bigger the cost, the
644
  /// more beneficial constant hoisting is).
645
  int getIntImmCodeSizeCost(unsigned Opc, unsigned Idx, const APInt &Imm,
646
                            Type *Ty) const;
647
  /// @}
648
649
  /// \name Vector Target Information
650
  /// @{
651
652
  /// The various kinds of shuffle patterns for vector queries.
653
  enum ShuffleKind {
654
    SK_Broadcast,       ///< Broadcast element 0 to all other elements.
655
    SK_Reverse,         ///< Reverse the order of the vector.
656
    SK_Select,          ///< Selects elements from the corresponding lane of
657
                        ///< either source operand. This is equivalent to a
658
                        ///< vector select with a constant condition operand.
659
    SK_Transpose,       ///< Transpose two vectors.
660
    SK_InsertSubvector, ///< InsertSubvector. Index indicates start offset.
661
    SK_ExtractSubvector,///< ExtractSubvector Index indicates start offset.
662
    SK_PermuteTwoSrc,   ///< Merge elements from two source vectors into one
663
                        ///< with any shuffle mask.
664
    SK_PermuteSingleSrc ///< Shuffle elements of single source vector with any
665
                        ///< shuffle mask.
666
  };
667
668
  /// Additional information about an operand's possible values.
669
  enum OperandValueKind {
670
    OK_AnyValue,               // Operand can have any value.
671
    OK_UniformValue,           // Operand is uniform (splat of a value).
672
    OK_UniformConstantValue,   // Operand is uniform constant.
673
    OK_NonUniformConstantValue // Operand is a non uniform constant value.
674
  };
675
676
  /// Additional properties of an operand's values.
677
  enum OperandValueProperties { OP_None = 0, OP_PowerOf2 = 1 };
678
679
  /// \return The number of scalar or vector registers that the target has.
680
  /// If 'Vectors' is true, it returns the number of vector registers. If it is
681
  /// set to false, it returns the number of scalar registers.
682
  unsigned getNumberOfRegisters(bool Vector) const;
683
684
  /// \return The width of the largest scalar or vector register type.
685
  unsigned getRegisterBitWidth(bool Vector) const;
686
687
  /// \return The width of the smallest vector register type.
688
  unsigned getMinVectorRegisterBitWidth() const;
689
690
  /// \return True if the vectorization factor should be chosen to
691
  /// make the vector of the smallest element type match the size of a
692
  /// vector register. For wider element types, this could result in
693
  /// creating vectors that span multiple vector registers.
694
  /// If false, the vectorization factor will be chosen based on the
695
  /// size of the widest element type.
696
  bool shouldMaximizeVectorBandwidth(bool OptSize) const;
697
698
  /// \return The minimum vectorization factor for types of given element
699
  /// bit width, or 0 if there is no mimimum VF. The returned value only
700
  /// applies when shouldMaximizeVectorBandwidth returns true.
701
  unsigned getMinimumVF(unsigned ElemWidth) const;
702
703
  /// \return True if it should be considered for address type promotion.
704
  /// \p AllowPromotionWithoutCommonHeader Set true if promoting \p I is
705
  /// profitable without finding other extensions fed by the same input.
706
  bool shouldConsiderAddressTypePromotion(
707
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) const;
708
709
  /// \return The size of a cache line in bytes.
710
  unsigned getCacheLineSize() const;
711
712
  /// The possible cache levels
713
  enum class CacheLevel {
714
    L1D,   // The L1 data cache
715
    L2D,   // The L2 data cache
716
717
    // We currently do not model L3 caches, as their sizes differ widely between
718
    // microarchitectures. Also, we currently do not have a use for L3 cache
719
    // size modeling yet.
720
  };
721
722
  /// \return The size of the cache level in bytes, if available.
723
  llvm::Optional<unsigned> getCacheSize(CacheLevel Level) const;
724
725
  /// \return The associativity of the cache level, if available.
726
  llvm::Optional<unsigned> getCacheAssociativity(CacheLevel Level) const;
727
728
  /// \return How much before a load we should place the prefetch instruction.
729
  /// This is currently measured in number of instructions.
730
  unsigned getPrefetchDistance() const;
731
732
  /// \return Some HW prefetchers can handle accesses up to a certain constant
733
  /// stride.  This is the minimum stride in bytes where it makes sense to start
734
  /// adding SW prefetches.  The default is 1, i.e. prefetch with any stride.
735
  unsigned getMinPrefetchStride() const;
736
737
  /// \return The maximum number of iterations to prefetch ahead.  If the
738
  /// required number of iterations is more than this number, no prefetching is
739
  /// performed.
740
  unsigned getMaxPrefetchIterationsAhead() const;
741
742
  /// \return The maximum interleave factor that any transform should try to
743
  /// perform for this target. This number depends on the level of parallelism
744
  /// and the number of execution units in the CPU.
745
  unsigned getMaxInterleaveFactor(unsigned VF) const;
746
747
  /// Collect properties of V used in cost analysis, e.g. OP_PowerOf2.
748
  static OperandValueKind getOperandInfo(Value *V,
749
                                         OperandValueProperties &OpProps);
750
751
  /// This is an approximation of reciprocal throughput of a math/logic op.
752
  /// A higher cost indicates less expected throughput.
753
  /// From Agner Fog's guides, reciprocal throughput is "the average number of
754
  /// clock cycles per instruction when the instructions are not part of a
755
  /// limiting dependency chain."
756
  /// Therefore, costs should be scaled to account for multiple execution units
757
  /// on the target that can process this type of instruction. For example, if
758
  /// there are 5 scalar integer units and 2 vector integer units that can
759
  /// calculate an 'add' in a single cycle, this model should indicate that the
760
  /// cost of the vector add instruction is 2.5 times the cost of the scalar
761
  /// add instruction.
762
  /// \p Args is an optional argument which holds the instruction operands
763
  /// values so the TTI can analyze those values searching for special
764
  /// cases or optimizations based on those values.
765
  int getArithmeticInstrCost(
766
      unsigned Opcode, Type *Ty, OperandValueKind Opd1Info = OK_AnyValue,
767
      OperandValueKind Opd2Info = OK_AnyValue,
768
      OperandValueProperties Opd1PropInfo = OP_None,
769
      OperandValueProperties Opd2PropInfo = OP_None,
770
      ArrayRef<const Value *> Args = ArrayRef<const Value *>()) const;
771
772
  /// \return The cost of a shuffle instruction of kind Kind and of type Tp.
773
  /// The index and subtype parameters are used by the subvector insertion and
774
  /// extraction shuffle kinds to show the insert/extract point and the type of
775
  /// the subvector being inserted/extracted. 
776
  /// NOTE: For subvector extractions Tp represents the source type.
777
  int getShuffleCost(ShuffleKind Kind, Type *Tp, int Index = 0,
778
                     Type *SubTp = nullptr) const;
779
780
  /// \return The expected cost of cast instructions, such as bitcast, trunc,
781
  /// zext, etc. If there is an existing instruction that holds Opcode, it
782
  /// may be passed in the 'I' parameter.
783
  int getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src,
784
                       const Instruction *I = nullptr) const;
785
786
  /// \return The expected cost of a sign- or zero-extended vector extract. Use
787
  /// -1 to indicate that there is no information about the index value.
788
  int getExtractWithExtendCost(unsigned Opcode, Type *Dst, VectorType *VecTy,
789
                               unsigned Index = -1) const;
790
791
  /// \return The expected cost of control-flow related instructions such as
792
  /// Phi, Ret, Br.
793
  int getCFInstrCost(unsigned Opcode) const;
794
795
  /// \returns The expected cost of compare and select instructions. If there
796
  /// is an existing instruction that holds Opcode, it may be passed in the
797
  /// 'I' parameter.
798
  int getCmpSelInstrCost(unsigned Opcode, Type *ValTy,
799
                 Type *CondTy = nullptr, const Instruction *I = nullptr) const;
800
801
  /// \return The expected cost of vector Insert and Extract.
802
  /// Use -1 to indicate that there is no information on the index value.
803
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index = -1) const;
804
805
  /// \return The cost of Load and Store instructions.
806
  int getMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment,
807
                      unsigned AddressSpace, const Instruction *I = nullptr) const;
808
809
  /// \return The cost of masked Load and Store instructions.
810
  int getMaskedMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment,
811
                            unsigned AddressSpace) const;
812
813
  /// \return The cost of Gather or Scatter operation
814
  /// \p Opcode - is a type of memory access Load or Store
815
  /// \p DataTy - a vector type of the data to be loaded or stored
816
  /// \p Ptr - pointer [or vector of pointers] - address[es] in memory
817
  /// \p VariableMask - true when the memory access is predicated with a mask
818
  ///                   that is not a compile-time constant
819
  /// \p Alignment - alignment of single element
820
  int getGatherScatterOpCost(unsigned Opcode, Type *DataTy, Value *Ptr,
821
                             bool VariableMask, unsigned Alignment) const;
822
823
  /// \return The cost of the interleaved memory operation.
824
  /// \p Opcode is the memory operation code
825
  /// \p VecTy is the vector type of the interleaved access.
826
  /// \p Factor is the interleave factor
827
  /// \p Indices is the indices for interleaved load members (as interleaved
828
  ///    load allows gaps)
829
  /// \p Alignment is the alignment of the memory operation
830
  /// \p AddressSpace is address space of the pointer.
831
  /// \p UseMaskForCond indicates if the memory access is predicated.
832
  /// \p UseMaskForGaps indicates if gaps should be masked.
833
  int getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor,
834
                                 ArrayRef<unsigned> Indices, unsigned Alignment,
835
                                 unsigned AddressSpace,
836
                                 bool UseMaskForCond = false,
837
                                 bool UseMaskForGaps = false) const;
838
839
  /// Calculate the cost of performing a vector reduction.
840
  ///
841
  /// This is the cost of reducing the vector value of type \p Ty to a scalar
842
  /// value using the operation denoted by \p Opcode. The form of the reduction
843
  /// can either be a pairwise reduction or a reduction that splits the vector
844
  /// at every reduction level.
845
  ///
846
  /// Pairwise:
847
  ///  (v0, v1, v2, v3)
848
  ///  ((v0+v1), (v2+v3), undef, undef)
849
  /// Split:
850
  ///  (v0, v1, v2, v3)
851
  ///  ((v0+v2), (v1+v3), undef, undef)
852
  int getArithmeticReductionCost(unsigned Opcode, Type *Ty,
853
                                 bool IsPairwiseForm) const;
854
  int getMinMaxReductionCost(Type *Ty, Type *CondTy, bool IsPairwiseForm,
855
                             bool IsUnsigned) const;
856
857
  /// \returns The cost of Intrinsic instructions. Analyses the real arguments.
858
  /// Three cases are handled: 1. scalar instruction 2. vector instruction
859
  /// 3. scalar instruction which is to be vectorized with VF.
860
  int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy,
861
                            ArrayRef<Value *> Args, FastMathFlags FMF,
862
                            unsigned VF = 1) const;
863
864
  /// \returns The cost of Intrinsic instructions. Types analysis only.
865
  /// If ScalarizationCostPassed is UINT_MAX, the cost of scalarizing the
866
  /// arguments and the return value will be computed based on types.
867
  int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy,
868
                            ArrayRef<Type *> Tys, FastMathFlags FMF,
869
                            unsigned ScalarizationCostPassed = UINT_MAX) const;
870
871
  /// \returns The cost of Call instructions.
872
  int getCallInstrCost(Function *F, Type *RetTy, ArrayRef<Type *> Tys) const;
873
874
  /// \returns The number of pieces into which the provided type must be
875
  /// split during legalization. Zero is returned when the answer is unknown.
876
  unsigned getNumberOfParts(Type *Tp) const;
877
878
  /// \returns The cost of the address computation. For most targets this can be
879
  /// merged into the instruction indexing mode. Some targets might want to
880
  /// distinguish between address computation for memory operations on vector
881
  /// types and scalar types. Such targets should override this function.
882
  /// The 'SE' parameter holds pointer for the scalar evolution object which
883
  /// is used in order to get the Ptr step value in case of constant stride.
884
  /// The 'Ptr' parameter holds SCEV of the access pointer.
885
  int getAddressComputationCost(Type *Ty, ScalarEvolution *SE = nullptr,
886
                                const SCEV *Ptr = nullptr) const;
887
888
  /// \returns The cost, if any, of keeping values of the given types alive
889
  /// over a callsite.
890
  ///
891
  /// Some types may require the use of register classes that do not have
892
  /// any callee-saved registers, so would require a spill and fill.
893
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) const;
894
895
  /// \returns True if the intrinsic is a supported memory intrinsic.  Info
896
  /// will contain additional information - whether the intrinsic may write
897
  /// or read to memory, volatility and the pointer.  Info is undefined
898
  /// if false is returned.
899
  bool getTgtMemIntrinsic(IntrinsicInst *Inst, MemIntrinsicInfo &Info) const;
900
901
  /// \returns The maximum element size, in bytes, for an element
902
  /// unordered-atomic memory intrinsic.
903
  unsigned getAtomicMemIntrinsicMaxElementSize() const;
904
905
  /// \returns A value which is the result of the given memory intrinsic.  New
906
  /// instructions may be created to extract the result from the given intrinsic
907
  /// memory operation.  Returns nullptr if the target cannot create a result
908
  /// from the given intrinsic.
909
  Value *getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst,
910
                                           Type *ExpectedType) const;
911
912
  /// \returns The type to use in a loop expansion of a memcpy call.
913
  Type *getMemcpyLoopLoweringType(LLVMContext &Context, Value *Length,
914
                                  unsigned SrcAlign, unsigned DestAlign) const;
915
916
  /// \param[out] OpsOut The operand types to copy RemainingBytes of memory.
917
  /// \param RemainingBytes The number of bytes to copy.
918
  ///
919
  /// Calculates the operand types to use when copying \p RemainingBytes of
920
  /// memory, where source and destination alignments are \p SrcAlign and
921
  /// \p DestAlign respectively.
922
  void getMemcpyLoopResidualLoweringType(SmallVectorImpl<Type *> &OpsOut,
923
                                         LLVMContext &Context,
924
                                         unsigned RemainingBytes,
925
                                         unsigned SrcAlign,
926
                                         unsigned DestAlign) const;
927
928
  /// \returns True if the two functions have compatible attributes for inlining
929
  /// purposes.
930
  bool areInlineCompatible(const Function *Caller,
931
                           const Function *Callee) const;
932
933
  /// The type of load/store indexing.
934
  enum MemIndexedMode {
935
    MIM_Unindexed,  ///< No indexing.
936
    MIM_PreInc,     ///< Pre-incrementing.
937
    MIM_PreDec,     ///< Pre-decrementing.
938
    MIM_PostInc,    ///< Post-incrementing.
939
    MIM_PostDec     ///< Post-decrementing.
940
  };
941
942
  /// \returns True if the specified indexed load for the given type is legal.
943
  bool isIndexedLoadLegal(enum MemIndexedMode Mode, Type *Ty) const;
944
945
  /// \returns True if the specified indexed store for the given type is legal.
946
  bool isIndexedStoreLegal(enum MemIndexedMode Mode, Type *Ty) const;
947
948
  /// \returns The bitwidth of the largest vector type that should be used to
949
  /// load/store in the given address space.
950
  unsigned getLoadStoreVecRegBitWidth(unsigned AddrSpace) const;
951
952
  /// \returns True if the load instruction is legal to vectorize.
953
  bool isLegalToVectorizeLoad(LoadInst *LI) const;
954
955
  /// \returns True if the store instruction is legal to vectorize.
956
  bool isLegalToVectorizeStore(StoreInst *SI) const;
957
958
  /// \returns True if it is legal to vectorize the given load chain.
959
  bool isLegalToVectorizeLoadChain(unsigned ChainSizeInBytes,
960
                                   unsigned Alignment,
961
                                   unsigned AddrSpace) const;
962
963
  /// \returns True if it is legal to vectorize the given store chain.
964
  bool isLegalToVectorizeStoreChain(unsigned ChainSizeInBytes,
965
                                    unsigned Alignment,
966
                                    unsigned AddrSpace) const;
967
968
  /// \returns The new vector factor value if the target doesn't support \p
969
  /// SizeInBytes loads or has a better vector factor.
970
  unsigned getLoadVectorFactor(unsigned VF, unsigned LoadSize,
971
                               unsigned ChainSizeInBytes,
972
                               VectorType *VecTy) const;
973
974
  /// \returns The new vector factor value if the target doesn't support \p
975
  /// SizeInBytes stores or has a better vector factor.
976
  unsigned getStoreVectorFactor(unsigned VF, unsigned StoreSize,
977
                                unsigned ChainSizeInBytes,
978
                                VectorType *VecTy) const;
979
980
  /// Flags describing the kind of vector reduction.
981
  struct ReductionFlags {
982
1.31k
    ReductionFlags() : IsMaxOp(false), IsSigned(false), NoNaN(false) {}
983
    bool IsMaxOp;  ///< If the op a min/max kind, true if it's a max operation.
984
    bool IsSigned; ///< Whether the operation is a signed int reduction.
985
    bool NoNaN;    ///< If op is an fp min/max, whether NaNs may be present.
986
  };
987
988
  /// \returns True if the target wants to handle the given reduction idiom in
989
  /// the intrinsics form instead of the shuffle form.
990
  bool useReductionIntrinsic(unsigned Opcode, Type *Ty,
991
                             ReductionFlags Flags) const;
992
993
  /// \returns True if the target wants to expand the given reduction intrinsic
994
  /// into a shuffle sequence.
995
  bool shouldExpandReduction(const IntrinsicInst *II) const;
996
  /// @}
997
998
private:
999
  /// Estimate the latency of specified instruction.
1000
  /// Returns 1 as the default value.
1001
  int getInstructionLatency(const Instruction *I) const;
1002
1003
  /// Returns the expected throughput cost of the instruction.
1004
  /// Returns -1 if the cost is unknown.
1005
  int getInstructionThroughput(const Instruction *I) const;
1006
1007
  /// The abstract base class used to type erase specific TTI
1008
  /// implementations.
1009
  class Concept;
1010
1011
  /// The template model for the base class which wraps a concrete
1012
  /// implementation in a type erased interface.
1013
  template <typename T> class Model;
1014
1015
  std::unique_ptr<Concept> TTIImpl;
1016
};
1017
1018
class TargetTransformInfo::Concept {
1019
public:
1020
  virtual ~Concept() = 0;
1021
  virtual const DataLayout &getDataLayout() const = 0;
1022
  virtual int getOperationCost(unsigned Opcode, Type *Ty, Type *OpTy) = 0;
1023
  virtual int getGEPCost(Type *PointeeType, const Value *Ptr,
1024
                         ArrayRef<const Value *> Operands) = 0;
1025
  virtual int getExtCost(const Instruction *I, const Value *Src) = 0;
1026
  virtual int getCallCost(FunctionType *FTy, int NumArgs) = 0;
1027
  virtual int getCallCost(const Function *F, int NumArgs) = 0;
1028
  virtual int getCallCost(const Function *F,
1029
                          ArrayRef<const Value *> Arguments) = 0;
1030
  virtual unsigned getInliningThresholdMultiplier() = 0;
1031
  virtual int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
1032
                               ArrayRef<Type *> ParamTys) = 0;
1033
  virtual int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
1034
                               ArrayRef<const Value *> Arguments) = 0;
1035
  virtual unsigned getEstimatedNumberOfCaseClusters(const SwitchInst &SI,
1036
                                                    unsigned &JTSize) = 0;
1037
  virtual int
1038
  getUserCost(const User *U, ArrayRef<const Value *> Operands) = 0;
1039
  virtual bool hasBranchDivergence() = 0;
1040
  virtual bool isSourceOfDivergence(const Value *V) = 0;
1041
  virtual bool isAlwaysUniform(const Value *V) = 0;
1042
  virtual unsigned getFlatAddressSpace() = 0;
1043
  virtual bool isLoweredToCall(const Function *F) = 0;
1044
  virtual void getUnrollingPreferences(Loop *L, ScalarEvolution &,
1045
                                       UnrollingPreferences &UP) = 0;
1046
  virtual bool isLegalAddImmediate(int64_t Imm) = 0;
1047
  virtual bool isLegalICmpImmediate(int64_t Imm) = 0;
1048
  virtual bool isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV,
1049
                                     int64_t BaseOffset, bool HasBaseReg,
1050
                                     int64_t Scale,
1051
                                     unsigned AddrSpace,
1052
                                     Instruction *I) = 0;
1053
  virtual bool isLSRCostLess(TargetTransformInfo::LSRCost &C1,
1054
                             TargetTransformInfo::LSRCost &C2) = 0;
1055
  virtual bool canMacroFuseCmp() = 0;
1056
  virtual bool shouldFavorPostInc() const = 0;
1057
  virtual bool isLegalMaskedStore(Type *DataType) = 0;
1058
  virtual bool isLegalMaskedLoad(Type *DataType) = 0;
1059
  virtual bool isLegalMaskedScatter(Type *DataType) = 0;
1060
  virtual bool isLegalMaskedGather(Type *DataType) = 0;
1061
  virtual bool hasDivRemOp(Type *DataType, bool IsSigned) = 0;
1062
  virtual bool hasVolatileVariant(Instruction *I, unsigned AddrSpace) = 0;
1063
  virtual bool prefersVectorizedAddressing() = 0;
1064
  virtual int getScalingFactorCost(Type *Ty, GlobalValue *BaseGV,
1065
                                   int64_t BaseOffset, bool HasBaseReg,
1066
                                   int64_t Scale, unsigned AddrSpace) = 0;
1067
  virtual bool LSRWithInstrQueries() = 0;
1068
  virtual bool isTruncateFree(Type *Ty1, Type *Ty2) = 0;
1069
  virtual bool isProfitableToHoist(Instruction *I) = 0;
1070
  virtual bool useAA() = 0;
1071
  virtual bool isTypeLegal(Type *Ty) = 0;
1072
  virtual unsigned getJumpBufAlignment() = 0;
1073
  virtual unsigned getJumpBufSize() = 0;
1074
  virtual bool shouldBuildLookupTables() = 0;
1075
  virtual bool shouldBuildLookupTablesForConstant(Constant *C) = 0;
1076
  virtual bool useColdCCForColdCall(Function &F) = 0;
1077
  virtual unsigned
1078
  getScalarizationOverhead(Type *Ty, bool Insert, bool Extract) = 0;
1079
  virtual unsigned getOperandsScalarizationOverhead(ArrayRef<const Value *> Args,
1080
                                                    unsigned VF) = 0;
1081
  virtual bool supportsEfficientVectorElementLoadStore() = 0;
1082
  virtual bool enableAggressiveInterleaving(bool LoopHasReductions) = 0;
1083
  virtual const MemCmpExpansionOptions *enableMemCmpExpansion(
1084
      bool IsZeroCmp) const = 0;
1085
  virtual bool enableInterleavedAccessVectorization() = 0;
1086
  virtual bool enableMaskedInterleavedAccessVectorization() = 0;
1087
  virtual bool isFPVectorizationPotentiallyUnsafe() = 0;
1088
  virtual bool allowsMisalignedMemoryAccesses(LLVMContext &Context,
1089
                                              unsigned BitWidth,
1090
                                              unsigned AddressSpace,
1091
                                              unsigned Alignment,
1092
                                              bool *Fast) = 0;
1093
  virtual PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) = 0;
1094
  virtual bool haveFastSqrt(Type *Ty) = 0;
1095
  virtual bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) = 0;
1096
  virtual int getFPOpCost(Type *Ty) = 0;
1097
  virtual int getIntImmCodeSizeCost(unsigned Opc, unsigned Idx, const APInt &Imm,
1098
                                    Type *Ty) = 0;
1099
  virtual int getIntImmCost(const APInt &Imm, Type *Ty) = 0;
1100
  virtual int getIntImmCost(unsigned Opc, unsigned Idx, const APInt &Imm,
1101
                            Type *Ty) = 0;
1102
  virtual int getIntImmCost(Intrinsic::ID IID, unsigned Idx, const APInt &Imm,
1103
                            Type *Ty) = 0;
1104
  virtual unsigned getNumberOfRegisters(bool Vector) = 0;
1105
  virtual unsigned getRegisterBitWidth(bool Vector) const = 0;
1106
  virtual unsigned getMinVectorRegisterBitWidth() = 0;
1107
  virtual bool shouldMaximizeVectorBandwidth(bool OptSize) const = 0;
1108
  virtual unsigned getMinimumVF(unsigned ElemWidth) const = 0;
1109
  virtual bool shouldConsiderAddressTypePromotion(
1110
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) = 0;
1111
  virtual unsigned getCacheLineSize() = 0;
1112
  virtual llvm::Optional<unsigned> getCacheSize(CacheLevel Level) = 0;
1113
  virtual llvm::Optional<unsigned> getCacheAssociativity(CacheLevel Level) = 0;
1114
  virtual unsigned getPrefetchDistance() = 0;
1115
  virtual unsigned getMinPrefetchStride() = 0;
1116
  virtual unsigned getMaxPrefetchIterationsAhead() = 0;
1117
  virtual unsigned getMaxInterleaveFactor(unsigned VF) = 0;
1118
  virtual unsigned
1119
  getArithmeticInstrCost(unsigned Opcode, Type *Ty, OperandValueKind Opd1Info,
1120
                         OperandValueKind Opd2Info,
1121
                         OperandValueProperties Opd1PropInfo,
1122
                         OperandValueProperties Opd2PropInfo,
1123
                         ArrayRef<const Value *> Args) = 0;
1124
  virtual int getShuffleCost(ShuffleKind Kind, Type *Tp, int Index,
1125
                             Type *SubTp) = 0;
1126
  virtual int getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src,
1127
                               const Instruction *I) = 0;
1128
  virtual int getExtractWithExtendCost(unsigned Opcode, Type *Dst,
1129
                                       VectorType *VecTy, unsigned Index) = 0;
1130
  virtual int getCFInstrCost(unsigned Opcode) = 0;
1131
  virtual int getCmpSelInstrCost(unsigned Opcode, Type *ValTy,
1132
                                Type *CondTy, const Instruction *I) = 0;
1133
  virtual int getVectorInstrCost(unsigned Opcode, Type *Val,
1134
                                 unsigned Index) = 0;
1135
  virtual int getMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment,
1136
                              unsigned AddressSpace, const Instruction *I) = 0;
1137
  virtual int getMaskedMemoryOpCost(unsigned Opcode, Type *Src,
1138
                                    unsigned Alignment,
1139
                                    unsigned AddressSpace) = 0;
1140
  virtual int getGatherScatterOpCost(unsigned Opcode, Type *DataTy,
1141
                                     Value *Ptr, bool VariableMask,
1142
                                     unsigned Alignment) = 0;
1143
  virtual int getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy,
1144
                                         unsigned Factor,
1145
                                         ArrayRef<unsigned> Indices,
1146
                                         unsigned Alignment,
1147
                                         unsigned AddressSpace,
1148
                                         bool UseMaskForCond = false,
1149
                                         bool UseMaskForGaps = false) = 0;
1150
  virtual int getArithmeticReductionCost(unsigned Opcode, Type *Ty,
1151
                                         bool IsPairwiseForm) = 0;
1152
  virtual int getMinMaxReductionCost(Type *Ty, Type *CondTy,
1153
                                     bool IsPairwiseForm, bool IsUnsigned) = 0;
1154
  virtual int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy,
1155
                      ArrayRef<Type *> Tys, FastMathFlags FMF,
1156
                      unsigned ScalarizationCostPassed) = 0;
1157
  virtual int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy,
1158
         ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) = 0;
1159
  virtual int getCallInstrCost(Function *F, Type *RetTy,
1160
                               ArrayRef<Type *> Tys) = 0;
1161
  virtual unsigned getNumberOfParts(Type *Tp) = 0;
1162
  virtual int getAddressComputationCost(Type *Ty, ScalarEvolution *SE,
1163
                                        const SCEV *Ptr) = 0;
1164
  virtual unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) = 0;
1165
  virtual bool getTgtMemIntrinsic(IntrinsicInst *Inst,
1166
                                  MemIntrinsicInfo &Info) = 0;
1167
  virtual unsigned getAtomicMemIntrinsicMaxElementSize() const = 0;
1168
  virtual Value *getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst,
1169
                                                   Type *ExpectedType) = 0;
1170
  virtual Type *getMemcpyLoopLoweringType(LLVMContext &Context, Value *Length,
1171
                                          unsigned SrcAlign,
1172
                                          unsigned DestAlign) const = 0;
1173
  virtual void getMemcpyLoopResidualLoweringType(
1174
      SmallVectorImpl<Type *> &OpsOut, LLVMContext &Context,
1175
      unsigned RemainingBytes, unsigned SrcAlign, unsigned DestAlign) const = 0;
1176
  virtual bool areInlineCompatible(const Function *Caller,
1177
                                   const Function *Callee) const = 0;
1178
  virtual bool isIndexedLoadLegal(MemIndexedMode Mode, Type *Ty) const = 0;
1179
  virtual bool isIndexedStoreLegal(MemIndexedMode Mode,Type *Ty) const = 0;
1180
  virtual unsigned getLoadStoreVecRegBitWidth(unsigned AddrSpace) const = 0;
1181
  virtual bool isLegalToVectorizeLoad(LoadInst *LI) const = 0;
1182
  virtual bool isLegalToVectorizeStore(StoreInst *SI) const = 0;
1183
  virtual bool isLegalToVectorizeLoadChain(unsigned ChainSizeInBytes,
1184
                                           unsigned Alignment,
1185
                                           unsigned AddrSpace) const = 0;
1186
  virtual bool isLegalToVectorizeStoreChain(unsigned ChainSizeInBytes,
1187
                                            unsigned Alignment,
1188
                                            unsigned AddrSpace) const = 0;
1189
  virtual unsigned getLoadVectorFactor(unsigned VF, unsigned LoadSize,
1190
                                       unsigned ChainSizeInBytes,
1191
                                       VectorType *VecTy) const = 0;
1192
  virtual unsigned getStoreVectorFactor(unsigned VF, unsigned StoreSize,
1193
                                        unsigned ChainSizeInBytes,
1194
                                        VectorType *VecTy) const = 0;
1195
  virtual bool useReductionIntrinsic(unsigned Opcode, Type *Ty,
1196
                                     ReductionFlags) const = 0;
1197
  virtual bool shouldExpandReduction(const IntrinsicInst *II) const = 0;
1198
  virtual int getInstructionLatency(const Instruction *I) = 0;
1199
};
1200
1201
template <typename T>
1202
class TargetTransformInfo::Model final : public TargetTransformInfo::Concept {
1203
  T Impl;
1204
1205
public:
1206
17.7M
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::Model(llvm::AArch64TTIImpl)
Line
Count
Source
1206
12.1M
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::Model(llvm::R600TTIImpl)
Line
Count
Source
1206
38.0k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::Model(llvm::GCNTTIImpl)
Line
Count
Source
1206
411k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::Model(llvm::ARMTTIImpl)
Line
Count
Source
1206
1.08M
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::Model(llvm::HexagonTTIImpl)
Line
Count
Source
1206
30.3k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::Model(llvm::LanaiTTIImpl)
Line
Count
Source
1206
627
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::Model(llvm::BasicTTIImpl)
Line
Count
Source
1206
92.7k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::Model(llvm::NVPTXTTIImpl)
Line
Count
Source
1206
18.9k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::Model(llvm::PPCTTIImpl)
Line
Count
Source
1206
87.4k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::Model(llvm::SystemZTTIImpl)
Line
Count
Source
1206
78.2k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::Model(llvm::WebAssemblyTTIImpl)
Line
Count
Source
1206
28.7k
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::Model(llvm::X86TTIImpl)
Line
Count
Source
1206
3.70M
  Model(T Impl) : Impl(std::move(Impl)) {}
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::Model(llvm::XCoreTTIImpl)
Line
Count
Source
1206
1.87k
  Model(T Impl) : Impl(std::move(Impl)) {}
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::Model((anonymous namespace)::NoTTIImpl)
Line
Count
Source
1206
17.3k
  Model(T Impl) : Impl(std::move(Impl)) {}
1207
17.7M
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::~Model()
Line
Count
Source
1207
12.1M
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::~Model()
Line
Count
Source
1207
38.0k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::~Model()
Line
Count
Source
1207
411k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::~Model()
Line
Count
Source
1207
1.08M
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::~Model()
Line
Count
Source
1207
30.3k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::~Model()
Line
Count
Source
1207
627
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::~Model()
Line
Count
Source
1207
92.7k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::~Model()
Line
Count
Source
1207
18.9k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::~Model()
Line
Count
Source
1207
87.4k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::~Model()
Line
Count
Source
1207
78.2k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::~Model()
Line
Count
Source
1207
28.7k
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::~Model()
Line
Count
Source
1207
3.70M
  ~Model() override {}
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::~Model()
Line
Count
Source
1207
1.87k
  ~Model() override {}
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::~Model()
Line
Count
Source
1207
17.3k
  ~Model() override {}
1208
1209
7.96k
  const DataLayout &getDataLayout() const override {
1210
7.96k
    return Impl.getDataLayout();
1211
7.96k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getDataLayout() const
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getDataLayout() const
Line
Count
Source
1209
7.96k
  const DataLayout &getDataLayout() const override {
1210
7.96k
    return Impl.getDataLayout();
1211
7.96k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getDataLayout() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getDataLayout() const
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getDataLayout() const
1212
1213
0
  int getOperationCost(unsigned Opcode, Type *Ty, Type *OpTy) override {
1214
0
    return Impl.getOperationCost(Opcode, Ty, OpTy);
1215
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getOperationCost(unsigned int, llvm::Type*, llvm::Type*)
1216
  int getGEPCost(Type *PointeeType, const Value *Ptr,
1217
34.7k
                 ArrayRef<const Value *> Operands) override {
1218
34.7k
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
34.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1217
1.82k
                 ArrayRef<const Value *> Operands) override {
1218
1.82k
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
1.82k
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1217
32.5k
                 ArrayRef<const Value *> Operands) override {
1218
32.5k
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
32.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1217
327
                 ArrayRef<const Value *> Operands) override {
1218
327
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
327
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1217
4
                 ArrayRef<const Value *> Operands) override {
1218
4
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getGEPCost(llvm::Type*, llvm::Value const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1217
38
                 ArrayRef<const Value *> Operands) override {
1218
38
    return Impl.getGEPCost(PointeeType, Ptr, Operands);
1219
38
  }
1220
0
  int getExtCost(const Instruction *I, const Value *Src) override {
1221
0
    return Impl.getExtCost(I, Src);
1222
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getExtCost(llvm::Instruction const*, llvm::Value const*)
1223
0
  int getCallCost(FunctionType *FTy, int NumArgs) override {
1224
0
    return Impl.getCallCost(FTy, NumArgs);
1225
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCallCost(llvm::FunctionType*, int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCallCost(llvm::FunctionType*, int)
1226
0
  int getCallCost(const Function *F, int NumArgs) override {
1227
0
    return Impl.getCallCost(F, NumArgs);
1228
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCallCost(llvm::Function const*, int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCallCost(llvm::Function const*, int)
1229
  int getCallCost(const Function *F,
1230
0
                  ArrayRef<const Value *> Arguments) override {
1231
0
    return Impl.getCallCost(F, Arguments);
1232
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCallCost(llvm::Function const*, llvm::ArrayRef<llvm::Value const*>)
1233
1.55M
  unsigned getInliningThresholdMultiplier() override {
1234
1.55M
    return Impl.getInliningThresholdMultiplier();
1235
1.55M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
879k
  unsigned getInliningThresholdMultiplier() override {
1234
879k
    return Impl.getInliningThresholdMultiplier();
1235
879k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getInliningThresholdMultiplier()
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
112
  unsigned getInliningThresholdMultiplier() override {
1234
112
    return Impl.getInliningThresholdMultiplier();
1235
112
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
154k
  unsigned getInliningThresholdMultiplier() override {
1234
154k
    return Impl.getInliningThresholdMultiplier();
1235
154k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getInliningThresholdMultiplier()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getInliningThresholdMultiplier()
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
8
  unsigned getInliningThresholdMultiplier() override {
1234
8
    return Impl.getInliningThresholdMultiplier();
1235
8
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getInliningThresholdMultiplier()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
17
  unsigned getInliningThresholdMultiplier() override {
1234
17
    return Impl.getInliningThresholdMultiplier();
1235
17
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getInliningThresholdMultiplier()
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
4
  unsigned getInliningThresholdMultiplier() override {
1234
4
    return Impl.getInliningThresholdMultiplier();
1235
4
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
516k
  unsigned getInliningThresholdMultiplier() override {
1234
516k
    return Impl.getInliningThresholdMultiplier();
1235
516k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getInliningThresholdMultiplier()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getInliningThresholdMultiplier()
Line
Count
Source
1233
845
  unsigned getInliningThresholdMultiplier() override {
1234
845
    return Impl.getInliningThresholdMultiplier();
1235
845
  }
1236
  int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
1237
0
                       ArrayRef<Type *> ParamTys) override {
1238
0
    return Impl.getIntrinsicCost(IID, RetTy, ParamTys);
1239
0
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
1240
  int getIntrinsicCost(Intrinsic::ID IID, Type *RetTy,
1241
4
                       ArrayRef<const Value *> Arguments) override {
1242
4
    return Impl.getIntrinsicCost(IID, RetTy, Arguments);
1243
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1241
2
                       ArrayRef<const Value *> Arguments) override {
1242
2
    return Impl.getIntrinsicCost(IID, RetTy, Arguments);
1243
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1241
2
                       ArrayRef<const Value *> Arguments) override {
1242
2
    return Impl.getIntrinsicCost(IID, RetTy, Arguments);
1243
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntrinsicCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value const*>)
1244
51.8M
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
51.8M
    return Impl.getUserCost(U, Operands);
1246
51.8M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
42.0M
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
42.0M
    return Impl.getUserCost(U, Operands);
1246
42.0M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
382
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
382
    return Impl.getUserCost(U, Operands);
1246
382
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
8.60k
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
8.60k
    return Impl.getUserCost(U, Operands);
1246
8.60k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
2.36M
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
2.36M
    return Impl.getUserCost(U, Operands);
1246
2.36M
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
288
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
288
    return Impl.getUserCost(U, Operands);
1246
288
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
6
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
6
    return Impl.getUserCost(U, Operands);
1246
6
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
134
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
134
    return Impl.getUserCost(U, Operands);
1246
134
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
7.18k
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
7.18k
    return Impl.getUserCost(U, Operands);
1246
7.18k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
1.27k
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
1.27k
    return Impl.getUserCost(U, Operands);
1246
1.27k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
7.30M
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
7.30M
    return Impl.getUserCost(U, Operands);
1246
7.30M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getUserCost(llvm::User const*, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1244
115k
  int getUserCost(const User *U, ArrayRef<const Value *> Operands) override {
1245
115k
    return Impl.getUserCost(U, Operands);
1246
115k
  }
1247
668k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
376k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
2.45k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
102k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
43.3k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
18
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::hasBranchDivergence()
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
45
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
38
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
74
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
1.60k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
167
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
140k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::hasBranchDivergence()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::hasBranchDivergence()
Line
Count
Source
1247
1.42k
  bool hasBranchDivergence() override { return Impl.hasBranchDivergence(); }
1248
1.48M
  bool isSourceOfDivergence(const Value *V) override {
1249
1.48M
    return Impl.isSourceOfDivergence(V);
1250
1.48M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isSourceOfDivergence(llvm::Value const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Line
Count
Source
1248
1.48M
  bool isSourceOfDivergence(const Value *V) override {
1249
1.48M
    return Impl.isSourceOfDivergence(V);
1250
1.48M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isSourceOfDivergence(llvm::Value const*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Line
Count
Source
1248
208
  bool isSourceOfDivergence(const Value *V) override {
1249
208
    return Impl.isSourceOfDivergence(V);
1250
208
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isSourceOfDivergence(llvm::Value const*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isSourceOfDivergence(llvm::Value const*)
1251
1252
265k
  bool isAlwaysUniform(const Value *V) override {
1253
265k
    return Impl.isAlwaysUniform(V);
1254
265k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isAlwaysUniform(llvm::Value const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isAlwaysUniform(llvm::Value const*)
Line
Count
Source
1252
265k
  bool isAlwaysUniform(const Value *V) override {
1253
265k
    return Impl.isAlwaysUniform(V);
1254
265k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isAlwaysUniform(llvm::Value const*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isAlwaysUniform(llvm::Value const*)
Line
Count
Source
1252
108
  bool isAlwaysUniform(const Value *V) override {
1253
108
    return Impl.isAlwaysUniform(V);
1254
108
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isAlwaysUniform(llvm::Value const*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isAlwaysUniform(llvm::Value const*)
1255
1256
24.0k
  unsigned getFlatAddressSpace() override {
1257
24.0k
    return Impl.getFlatAddressSpace();
1258
24.0k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getFlatAddressSpace()
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getFlatAddressSpace()
Line
Count
Source
1256
2.37k
  unsigned getFlatAddressSpace() override {
1257
2.37k
    return Impl.getFlatAddressSpace();
1258
2.37k
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getFlatAddressSpace()
Line
Count
Source
1256
20.5k
  unsigned getFlatAddressSpace() override {
1257
20.5k
    return Impl.getFlatAddressSpace();
1258
20.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getFlatAddressSpace()
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getFlatAddressSpace()
Line
Count
Source
1256
1.05k
  unsigned getFlatAddressSpace() override {
1257
1.05k
    return Impl.getFlatAddressSpace();
1258
1.05k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getFlatAddressSpace()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getFlatAddressSpace()
1259
1260
6.75M
  bool isLoweredToCall(const Function *F) override {
1261
6.75M
    return Impl.isLoweredToCall(F);
1262
6.75M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
4.34M
  bool isLoweredToCall(const Function *F) override {
1261
4.34M
    return Impl.isLoweredToCall(F);
1262
4.34M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLoweredToCall(llvm::Function const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
363
  bool isLoweredToCall(const Function *F) override {
1261
363
    return Impl.isLoweredToCall(F);
1262
363
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
634k
  bool isLoweredToCall(const Function *F) override {
1261
634k
    return Impl.isLoweredToCall(F);
1262
634k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
6
  bool isLoweredToCall(const Function *F) override {
1261
6
    return Impl.isLoweredToCall(F);
1262
6
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLoweredToCall(llvm::Function const*)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
1
  bool isLoweredToCall(const Function *F) override {
1261
1
    return Impl.isLoweredToCall(F);
1262
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLoweredToCall(llvm::Function const*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
19
  bool isLoweredToCall(const Function *F) override {
1261
19
    return Impl.isLoweredToCall(F);
1262
19
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
45
  bool isLoweredToCall(const Function *F) override {
1261
45
    return Impl.isLoweredToCall(F);
1262
45
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLoweredToCall(llvm::Function const*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
1.77M
  bool isLoweredToCall(const Function *F) override {
1261
1.77M
    return Impl.isLoweredToCall(F);
1262
1.77M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLoweredToCall(llvm::Function const*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLoweredToCall(llvm::Function const*)
Line
Count
Source
1260
5.85k
  bool isLoweredToCall(const Function *F) override {
1261
5.85k
    return Impl.isLoweredToCall(F);
1262
5.85k
  }
1263
  void getUnrollingPreferences(Loop *L, ScalarEvolution &SE,
1264
419k
                               UnrollingPreferences &UP) override {
1265
419k
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
419k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
363k
                               UnrollingPreferences &UP) override {
1265
363k
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
363k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
3
                               UnrollingPreferences &UP) override {
1265
3
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
3
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
17
                               UnrollingPreferences &UP) override {
1265
17
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
17
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
13.6k
                               UnrollingPreferences &UP) override {
1265
13.6k
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
13.6k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
3
                               UnrollingPreferences &UP) override {
1265
3
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
3
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
2
                               UnrollingPreferences &UP) override {
1265
2
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
2
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
11
                               UnrollingPreferences &UP) override {
1265
11
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
11
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
2
                               UnrollingPreferences &UP) override {
1265
2
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
40.8k
                               UnrollingPreferences &UP) override {
1265
40.8k
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
40.8k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getUnrollingPreferences(llvm::Loop*, llvm::ScalarEvolution&, llvm::TargetTransformInfo::UnrollingPreferences&)
Line
Count
Source
1264
590
                               UnrollingPreferences &UP) override {
1265
590
    return Impl.getUnrollingPreferences(L, SE, UP);
1266
590
  }
1267
2.69M
  bool isLegalAddImmediate(int64_t Imm) override {
1268
2.69M
    return Impl.isLegalAddImmediate(Imm);
1269
2.69M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
2.56M
  bool isLegalAddImmediate(int64_t Imm) override {
1268
2.56M
    return Impl.isLegalAddImmediate(Imm);
1269
2.56M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
14
  bool isLegalAddImmediate(int64_t Imm) override {
1268
14
    return Impl.isLegalAddImmediate(Imm);
1269
14
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
306
  bool isLegalAddImmediate(int64_t Imm) override {
1268
306
    return Impl.isLegalAddImmediate(Imm);
1269
306
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
46.8k
  bool isLegalAddImmediate(int64_t Imm) override {
1268
46.8k
    return Impl.isLegalAddImmediate(Imm);
1269
46.8k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
1.20k
  bool isLegalAddImmediate(int64_t Imm) override {
1268
1.20k
    return Impl.isLegalAddImmediate(Imm);
1269
1.20k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalAddImmediate(long long)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
5
  bool isLegalAddImmediate(int64_t Imm) override {
1268
5
    return Impl.isLegalAddImmediate(Imm);
1269
5
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
19
  bool isLegalAddImmediate(int64_t Imm) override {
1268
19
    return Impl.isLegalAddImmediate(Imm);
1269
19
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
2.98k
  bool isLegalAddImmediate(int64_t Imm) override {
1268
2.98k
    return Impl.isLegalAddImmediate(Imm);
1269
2.98k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
21
  bool isLegalAddImmediate(int64_t Imm) override {
1268
21
    return Impl.isLegalAddImmediate(Imm);
1269
21
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
16
  bool isLegalAddImmediate(int64_t Imm) override {
1268
16
    return Impl.isLegalAddImmediate(Imm);
1269
16
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
62.5k
  bool isLegalAddImmediate(int64_t Imm) override {
1268
62.5k
    return Impl.isLegalAddImmediate(Imm);
1269
62.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalAddImmediate(long long)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalAddImmediate(long long)
Line
Count
Source
1267
12.7k
  bool isLegalAddImmediate(int64_t Imm) override {
1268
12.7k
    return Impl.isLegalAddImmediate(Imm);
1269
12.7k
  }
1270
599k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
599k
    return Impl.isLegalICmpImmediate(Imm);
1272
599k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
459k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
459k
    return Impl.isLegalICmpImmediate(Imm);
1272
459k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
74
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
74
    return Impl.isLegalICmpImmediate(Imm);
1272
74
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
470
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
470
    return Impl.isLegalICmpImmediate(Imm);
1272
470
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
21.6k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
21.6k
    return Impl.isLegalICmpImmediate(Imm);
1272
21.6k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
1.26k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
1.26k
    return Impl.isLegalICmpImmediate(Imm);
1272
1.26k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalICmpImmediate(long long)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
22
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
22
    return Impl.isLegalICmpImmediate(Imm);
1272
22
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
48
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
48
    return Impl.isLegalICmpImmediate(Imm);
1272
48
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
2.78k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
2.78k
    return Impl.isLegalICmpImmediate(Imm);
1272
2.78k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
222
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
222
    return Impl.isLegalICmpImmediate(Imm);
1272
222
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
50
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
50
    return Impl.isLegalICmpImmediate(Imm);
1272
50
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
112k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
112k
    return Impl.isLegalICmpImmediate(Imm);
1272
112k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalICmpImmediate(long long)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalICmpImmediate(long long)
Line
Count
Source
1270
1.20k
  bool isLegalICmpImmediate(int64_t Imm) override {
1271
1.20k
    return Impl.isLegalICmpImmediate(Imm);
1272
1.20k
  }
1273
  bool isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset,
1274
                             bool HasBaseReg, int64_t Scale,
1275
                             unsigned AddrSpace,
1276
55.6M
                             Instruction *I) override {
1277
55.6M
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
55.6M
                                      Scale, AddrSpace, I);
1279
55.6M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
48.2M
                             Instruction *I) override {
1277
48.2M
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
48.2M
                                      Scale, AddrSpace, I);
1279
48.2M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
523
                             Instruction *I) override {
1277
523
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
523
                                      Scale, AddrSpace, I);
1279
523
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
10.7k
                             Instruction *I) override {
1277
10.7k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
10.7k
                                      Scale, AddrSpace, I);
1279
10.7k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
718k
                             Instruction *I) override {
1277
718k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
718k
                                      Scale, AddrSpace, I);
1279
718k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
23.1k
                             Instruction *I) override {
1277
23.1k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
23.1k
                                      Scale, AddrSpace, I);
1279
23.1k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
32
                             Instruction *I) override {
1277
32
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
32
                                      Scale, AddrSpace, I);
1279
32
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
333
                             Instruction *I) override {
1277
333
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
333
                                      Scale, AddrSpace, I);
1279
333
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
624
                             Instruction *I) override {
1277
624
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
624
                                      Scale, AddrSpace, I);
1279
624
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
44.9k
                             Instruction *I) override {
1277
44.9k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
44.9k
                                      Scale, AddrSpace, I);
1279
44.9k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
4.06k
                             Instruction *I) override {
1277
4.06k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
4.06k
                                      Scale, AddrSpace, I);
1279
4.06k
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
142
                             Instruction *I) override {
1277
142
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
142
                                      Scale, AddrSpace, I);
1279
142
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
6.57M
                             Instruction *I) override {
1277
6.57M
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
6.57M
                                      Scale, AddrSpace, I);
1279
6.57M
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
10
                             Instruction *I) override {
1277
10
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
10
                                      Scale, AddrSpace, I);
1279
10
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalAddressingMode(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int, llvm::Instruction*)
Line
Count
Source
1276
77.4k
                             Instruction *I) override {
1277
77.4k
    return Impl.isLegalAddressingMode(Ty, BaseGV, BaseOffset, HasBaseReg,
1278
77.4k
                                      Scale, AddrSpace, I);
1279
77.4k
  }
1280
  bool isLSRCostLess(TargetTransformInfo::LSRCost &C1,
1281
4.85M
                     TargetTransformInfo::LSRCost &C2) override {
1282
4.85M
    return Impl.isLSRCostLess(C1, C2);
1283
4.85M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
4.02M
                     TargetTransformInfo::LSRCost &C2) override {
1282
4.02M
    return Impl.isLSRCostLess(C1, C2);
1283
4.02M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
74
                     TargetTransformInfo::LSRCost &C2) override {
1282
74
    return Impl.isLSRCostLess(C1, C2);
1283
74
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
868
                     TargetTransformInfo::LSRCost &C2) override {
1282
868
    return Impl.isLSRCostLess(C1, C2);
1283
868
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
116k
                     TargetTransformInfo::LSRCost &C2) override {
1282
116k
    return Impl.isLSRCostLess(C1, C2);
1283
116k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
4.51k
                     TargetTransformInfo::LSRCost &C2) override {
1282
4.51k
    return Impl.isLSRCostLess(C1, C2);
1283
4.51k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
28
                     TargetTransformInfo::LSRCost &C2) override {
1282
28
    return Impl.isLSRCostLess(C1, C2);
1283
28
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
142
                     TargetTransformInfo::LSRCost &C2) override {
1282
142
    return Impl.isLSRCostLess(C1, C2);
1283
142
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
130
                     TargetTransformInfo::LSRCost &C2) override {
1282
130
    return Impl.isLSRCostLess(C1, C2);
1283
130
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
4.25k
                     TargetTransformInfo::LSRCost &C2) override {
1282
4.25k
    return Impl.isLSRCostLess(C1, C2);
1283
4.25k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
429
                     TargetTransformInfo::LSRCost &C2) override {
1282
429
    return Impl.isLSRCostLess(C1, C2);
1283
429
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
112
                     TargetTransformInfo::LSRCost &C2) override {
1282
112
    return Impl.isLSRCostLess(C1, C2);
1283
112
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
661k
                     TargetTransformInfo::LSRCost &C2) override {
1282
661k
    return Impl.isLSRCostLess(C1, C2);
1283
661k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
2
                     TargetTransformInfo::LSRCost &C2) override {
1282
2
    return Impl.isLSRCostLess(C1, C2);
1283
2
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLSRCostLess(llvm::TargetTransformInfo::LSRCost&, llvm::TargetTransformInfo::LSRCost&)
Line
Count
Source
1281
46.3k
                     TargetTransformInfo::LSRCost &C2) override {
1282
46.3k
    return Impl.isLSRCostLess(C1, C2);
1283
46.3k
  }
1284
913k
  bool canMacroFuseCmp() override {
1285
913k
    return Impl.canMacroFuseCmp();
1286
913k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
691k
  bool canMacroFuseCmp() override {
1285
691k
    return Impl.canMacroFuseCmp();
1286
691k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
39
  bool canMacroFuseCmp() override {
1285
39
    return Impl.canMacroFuseCmp();
1286
39
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
300
  bool canMacroFuseCmp() override {
1285
300
    return Impl.canMacroFuseCmp();
1286
300
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
35.3k
  bool canMacroFuseCmp() override {
1285
35.3k
    return Impl.canMacroFuseCmp();
1286
35.3k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
1.52k
  bool canMacroFuseCmp() override {
1285
1.52k
    return Impl.canMacroFuseCmp();
1286
1.52k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
16
  bool canMacroFuseCmp() override {
1285
16
    return Impl.canMacroFuseCmp();
1286
16
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
59
  bool canMacroFuseCmp() override {
1285
59
    return Impl.canMacroFuseCmp();
1286
59
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
63
  bool canMacroFuseCmp() override {
1285
63
    return Impl.canMacroFuseCmp();
1286
63
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
1.70k
  bool canMacroFuseCmp() override {
1285
1.70k
    return Impl.canMacroFuseCmp();
1286
1.70k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
103
  bool canMacroFuseCmp() override {
1285
103
    return Impl.canMacroFuseCmp();
1286
103
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
57
  bool canMacroFuseCmp() override {
1285
57
    return Impl.canMacroFuseCmp();
1286
57
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
182k
  bool canMacroFuseCmp() override {
1285
182k
    return Impl.canMacroFuseCmp();
1286
182k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::canMacroFuseCmp()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::canMacroFuseCmp()
Line
Count
Source
1284
1.11k
  bool canMacroFuseCmp() override {
1285
1.11k
    return Impl.canMacroFuseCmp();
1286
1.11k
  }
1287
13.2M
  bool shouldFavorPostInc() const override {
1288
13.2M
    return Impl.shouldFavorPostInc();
1289
13.2M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
11.5M
  bool shouldFavorPostInc() const override {
1288
11.5M
    return Impl.shouldFavorPostInc();
1289
11.5M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
178
  bool shouldFavorPostInc() const override {
1288
178
    return Impl.shouldFavorPostInc();
1289
178
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
2.61k
  bool shouldFavorPostInc() const override {
1288
2.61k
    return Impl.shouldFavorPostInc();
1289
2.61k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
298k
  bool shouldFavorPostInc() const override {
1288
298k
    return Impl.shouldFavorPostInc();
1289
298k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
11.7k
  bool shouldFavorPostInc() const override {
1288
11.7k
    return Impl.shouldFavorPostInc();
1289
11.7k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
74
  bool shouldFavorPostInc() const override {
1288
74
    return Impl.shouldFavorPostInc();
1289
74
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
379
  bool shouldFavorPostInc() const override {
1288
379
    return Impl.shouldFavorPostInc();
1289
379
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
365
  bool shouldFavorPostInc() const override {
1288
365
    return Impl.shouldFavorPostInc();
1289
365
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
15.6k
  bool shouldFavorPostInc() const override {
1288
15.6k
    return Impl.shouldFavorPostInc();
1289
15.6k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
949
  bool shouldFavorPostInc() const override {
1288
949
    return Impl.shouldFavorPostInc();
1289
949
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
292
  bool shouldFavorPostInc() const override {
1288
292
    return Impl.shouldFavorPostInc();
1289
292
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
1.35M
  bool shouldFavorPostInc() const override {
1288
1.35M
    return Impl.shouldFavorPostInc();
1289
1.35M
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
7
  bool shouldFavorPostInc() const override {
1288
7
    return Impl.shouldFavorPostInc();
1289
7
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::shouldFavorPostInc() const
Line
Count
Source
1287
67.2k
  bool shouldFavorPostInc() const override {
1288
67.2k
    return Impl.shouldFavorPostInc();
1289
67.2k
  }
1290
3.67k
  bool isLegalMaskedStore(Type *DataType) override {
1291
3.67k
    return Impl.isLegalMaskedStore(DataType);
1292
3.67k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
2.22k
  bool isLegalMaskedStore(Type *DataType) override {
1291
2.22k
    return Impl.isLegalMaskedStore(DataType);
1292
2.22k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalMaskedStore(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
2
  bool isLegalMaskedStore(Type *DataType) override {
1291
2
    return Impl.isLegalMaskedStore(DataType);
1292
2
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
504
  bool isLegalMaskedStore(Type *DataType) override {
1291
504
    return Impl.isLegalMaskedStore(DataType);
1292
504
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalMaskedStore(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalMaskedStore(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalMaskedStore(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalMaskedStore(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalMaskedStore(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
4
  bool isLegalMaskedStore(Type *DataType) override {
1291
4
    return Impl.isLegalMaskedStore(DataType);
1292
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalMaskedStore(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
884
  bool isLegalMaskedStore(Type *DataType) override {
1291
884
    return Impl.isLegalMaskedStore(DataType);
1292
884
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalMaskedStore(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalMaskedStore(llvm::Type*)
Line
Count
Source
1290
54
  bool isLegalMaskedStore(Type *DataType) override {
1291
54
    return Impl.isLegalMaskedStore(DataType);
1292
54
  }
1293
2.31k
  bool isLegalMaskedLoad(Type *DataType) override {
1294
2.31k
    return Impl.isLegalMaskedLoad(DataType);
1295
2.31k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalMaskedLoad(llvm::Type*)
Line
Count
Source
1293
1.61k
  bool isLegalMaskedLoad(Type *DataType) override {
1294
1.61k
    return Impl.isLegalMaskedLoad(DataType);
1295
1.61k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalMaskedLoad(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalMaskedLoad(llvm::Type*)
Line
Count
Source
1293
693
  bool isLegalMaskedLoad(Type *DataType) override {
1294
693
    return Impl.isLegalMaskedLoad(DataType);
1295
693
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalMaskedLoad(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalMaskedLoad(llvm::Type*)
Line
Count
Source
1293
8
  bool isLegalMaskedLoad(Type *DataType) override {
1294
8
    return Impl.isLegalMaskedLoad(DataType);
1295
8
  }
1296
11.8k
  bool isLegalMaskedScatter(Type *DataType) override {
1297
11.8k
    return Impl.isLegalMaskedScatter(DataType);
1298
11.8k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
8.66k
  bool isLegalMaskedScatter(Type *DataType) override {
1297
8.66k
    return Impl.isLegalMaskedScatter(DataType);
1298
8.66k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalMaskedScatter(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
2
  bool isLegalMaskedScatter(Type *DataType) override {
1297
2
    return Impl.isLegalMaskedScatter(DataType);
1298
2
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
1.15k
  bool isLegalMaskedScatter(Type *DataType) override {
1297
1.15k
    return Impl.isLegalMaskedScatter(DataType);
1298
1.15k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
5
  bool isLegalMaskedScatter(Type *DataType) override {
1297
5
    return Impl.isLegalMaskedScatter(DataType);
1298
5
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalMaskedScatter(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
6
  bool isLegalMaskedScatter(Type *DataType) override {
1297
6
    return Impl.isLegalMaskedScatter(DataType);
1298
6
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalMaskedScatter(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
1.87k
  bool isLegalMaskedScatter(Type *DataType) override {
1297
1.87k
    return Impl.isLegalMaskedScatter(DataType);
1298
1.87k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalMaskedScatter(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalMaskedScatter(llvm::Type*)
Line
Count
Source
1296
137
  bool isLegalMaskedScatter(Type *DataType) override {
1297
137
    return Impl.isLegalMaskedScatter(DataType);
1298
137
  }
1299
14.1k
  bool isLegalMaskedGather(Type *DataType) override {
1300
14.1k
    return Impl.isLegalMaskedGather(DataType);
1301
14.1k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
12.8k
  bool isLegalMaskedGather(Type *DataType) override {
1300
12.8k
    return Impl.isLegalMaskedGather(DataType);
1301
12.8k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isLegalMaskedGather(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isLegalMaskedGather(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
16
  bool isLegalMaskedGather(Type *DataType) override {
1300
16
    return Impl.isLegalMaskedGather(DataType);
1301
16
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
10
  bool isLegalMaskedGather(Type *DataType) override {
1300
10
    return Impl.isLegalMaskedGather(DataType);
1301
10
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isLegalMaskedGather(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isLegalMaskedGather(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isLegalMaskedGather(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
2
  bool isLegalMaskedGather(Type *DataType) override {
1300
2
    return Impl.isLegalMaskedGather(DataType);
1301
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
4
  bool isLegalMaskedGather(Type *DataType) override {
1300
4
    return Impl.isLegalMaskedGather(DataType);
1301
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isLegalMaskedGather(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
1.11k
  bool isLegalMaskedGather(Type *DataType) override {
1300
1.11k
    return Impl.isLegalMaskedGather(DataType);
1301
1.11k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isLegalMaskedGather(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isLegalMaskedGather(llvm::Type*)
Line
Count
Source
1299
115
  bool isLegalMaskedGather(Type *DataType) override {
1300
115
    return Impl.isLegalMaskedGather(DataType);
1301
115
  }
1302
1.46k
  bool hasDivRemOp(Type *DataType, bool IsSigned) override {
1303
1.46k
    return Impl.hasDivRemOp(DataType, IsSigned);
1304
1.46k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::hasDivRemOp(llvm::Type*, bool)
Line
Count
Source
1302
1.17k
  bool hasDivRemOp(Type *DataType, bool IsSigned) override {
1303
1.17k
    return Impl.hasDivRemOp(DataType, IsSigned);
1304
1.17k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::hasDivRemOp(llvm::Type*, bool)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Line
Count
Source
1302
100
  bool hasDivRemOp(Type *DataType, bool IsSigned) override {
1303
100
    return Impl.hasDivRemOp(DataType, IsSigned);
1304
100
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::hasDivRemOp(llvm::Type*, bool)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Line
Count
Source
1302
8
  bool hasDivRemOp(Type *DataType, bool IsSigned) override {
1303
8
    return Impl.hasDivRemOp(DataType, IsSigned);
1304
8
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::hasDivRemOp(llvm::Type*, bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::hasDivRemOp(llvm::Type*, bool)
Line
Count
Source
1302
184
  bool hasDivRemOp(Type *DataType, bool IsSigned) override {
1303
184
    return Impl.hasDivRemOp(DataType, IsSigned);
1304
184
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::hasDivRemOp(llvm::Type*, bool)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::hasDivRemOp(llvm::Type*, bool)
1305
600
  bool hasVolatileVariant(Instruction *I, unsigned AddrSpace) override {
1306
600
    return Impl.hasVolatileVariant(I, AddrSpace);
1307
600
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Line
Count
Source
1305
269
  bool hasVolatileVariant(Instruction *I, unsigned AddrSpace) override {
1306
269
    return Impl.hasVolatileVariant(I, AddrSpace);
1307
269
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Line
Count
Source
1305
331
  bool hasVolatileVariant(Instruction *I, unsigned AddrSpace) override {
1306
331
    return Impl.hasVolatileVariant(I, AddrSpace);
1307
331
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::hasVolatileVariant(llvm::Instruction*, unsigned int)
1308
45.1k
  bool prefersVectorizedAddressing() override {
1309
45.1k
    return Impl.prefersVectorizedAddressing();
1310
45.1k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
37.8k
  bool prefersVectorizedAddressing() override {
1309
37.8k
    return Impl.prefersVectorizedAddressing();
1310
37.8k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::prefersVectorizedAddressing()
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
3
  bool prefersVectorizedAddressing() override {
1309
3
    return Impl.prefersVectorizedAddressing();
1310
3
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
1.81k
  bool prefersVectorizedAddressing() override {
1309
1.81k
    return Impl.prefersVectorizedAddressing();
1310
1.81k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
20
  bool prefersVectorizedAddressing() override {
1309
20
    return Impl.prefersVectorizedAddressing();
1310
20
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::prefersVectorizedAddressing()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::prefersVectorizedAddressing()
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
2
  bool prefersVectorizedAddressing() override {
1309
2
    return Impl.prefersVectorizedAddressing();
1310
2
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
25
  bool prefersVectorizedAddressing() override {
1309
25
    return Impl.prefersVectorizedAddressing();
1310
25
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
9
  bool prefersVectorizedAddressing() override {
1309
9
    return Impl.prefersVectorizedAddressing();
1310
9
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::prefersVectorizedAddressing()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
4.76k
  bool prefersVectorizedAddressing() override {
1309
4.76k
    return Impl.prefersVectorizedAddressing();
1310
4.76k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::prefersVectorizedAddressing()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::prefersVectorizedAddressing()
Line
Count
Source
1308
625
  bool prefersVectorizedAddressing() override {
1309
625
    return Impl.prefersVectorizedAddressing();
1310
625
  }
1311
  int getScalingFactorCost(Type *Ty, GlobalValue *BaseGV, int64_t BaseOffset,
1312
                           bool HasBaseReg, int64_t Scale,
1313
6.54M
                           unsigned AddrSpace) override {
1314
6.54M
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
6.54M
                                     Scale, AddrSpace);
1316
6.54M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
5.18M
                           unsigned AddrSpace) override {
1314
5.18M
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
5.18M
                                     Scale, AddrSpace);
1316
5.18M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
10
                           unsigned AddrSpace) override {
1314
10
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
10
                                     Scale, AddrSpace);
1316
10
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
434
                           unsigned AddrSpace) override {
1314
434
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
434
                                     Scale, AddrSpace);
1316
434
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
125k
                           unsigned AddrSpace) override {
1314
125k
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
125k
                                     Scale, AddrSpace);
1316
125k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
4
                           unsigned AddrSpace) override {
1314
4
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
4
                                     Scale, AddrSpace);
1316
4
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
14
                           unsigned AddrSpace) override {
1314
14
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
14
                                     Scale, AddrSpace);
1316
14
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
7.15k
                           unsigned AddrSpace) override {
1314
7.15k
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
7.15k
                                     Scale, AddrSpace);
1316
7.15k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
662
                           unsigned AddrSpace) override {
1314
662
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
662
                                     Scale, AddrSpace);
1316
662
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
1.19M
                           unsigned AddrSpace) override {
1314
1.19M
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
1.19M
                                     Scale, AddrSpace);
1316
1.19M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getScalingFactorCost(llvm::Type*, llvm::GlobalValue*, long long, bool, long long, unsigned int)
Line
Count
Source
1313
29.4k
                           unsigned AddrSpace) override {
1314
29.4k
    return Impl.getScalingFactorCost(Ty, BaseGV, BaseOffset, HasBaseReg,
1315
29.4k
                                     Scale, AddrSpace);
1316
29.4k
  }
1317
4.88M
  bool LSRWithInstrQueries() override {
1318
4.88M
    return Impl.LSRWithInstrQueries();
1319
4.88M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
4.12M
  bool LSRWithInstrQueries() override {
1318
4.12M
    return Impl.LSRWithInstrQueries();
1319
4.12M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
9
  bool LSRWithInstrQueries() override {
1318
9
    return Impl.LSRWithInstrQueries();
1319
9
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
453
  bool LSRWithInstrQueries() override {
1318
453
    return Impl.LSRWithInstrQueries();
1319
453
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
105k
  bool LSRWithInstrQueries() override {
1318
105k
    return Impl.LSRWithInstrQueries();
1319
105k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
2.90k
  bool LSRWithInstrQueries() override {
1318
2.90k
    return Impl.LSRWithInstrQueries();
1319
2.90k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
2
  bool LSRWithInstrQueries() override {
1318
2
    return Impl.LSRWithInstrQueries();
1319
2
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
44
  bool LSRWithInstrQueries() override {
1318
44
    return Impl.LSRWithInstrQueries();
1319
44
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
37
  bool LSRWithInstrQueries() override {
1318
37
    return Impl.LSRWithInstrQueries();
1319
37
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
4.42k
  bool LSRWithInstrQueries() override {
1318
4.42k
    return Impl.LSRWithInstrQueries();
1319
4.42k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
360
  bool LSRWithInstrQueries() override {
1318
360
    return Impl.LSRWithInstrQueries();
1319
360
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
11
  bool LSRWithInstrQueries() override {
1318
11
    return Impl.LSRWithInstrQueries();
1319
11
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
632k
  bool LSRWithInstrQueries() override {
1318
632k
    return Impl.LSRWithInstrQueries();
1319
632k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
1
  bool LSRWithInstrQueries() override {
1318
1
    return Impl.LSRWithInstrQueries();
1319
1
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::LSRWithInstrQueries()
Line
Count
Source
1317
14.9k
  bool LSRWithInstrQueries() override {
1318
14.9k
    return Impl.LSRWithInstrQueries();
1319
14.9k
  }
1320
1.49M
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
1.49M
    return Impl.isTruncateFree(Ty1, Ty2);
1322
1.49M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
1.43M
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
1.43M
    return Impl.isTruncateFree(Ty1, Ty2);
1322
1.43M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
26
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
26
    return Impl.isTruncateFree(Ty1, Ty2);
1322
26
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
449
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
449
    return Impl.isTruncateFree(Ty1, Ty2);
1322
449
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
7.07k
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
7.07k
    return Impl.isTruncateFree(Ty1, Ty2);
1322
7.07k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
443
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
443
    return Impl.isTruncateFree(Ty1, Ty2);
1322
443
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
8
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
8
    return Impl.isTruncateFree(Ty1, Ty2);
1322
8
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
65
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
65
    return Impl.isTruncateFree(Ty1, Ty2);
1322
65
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
97
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
97
    return Impl.isTruncateFree(Ty1, Ty2);
1322
97
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
1.66k
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
1.66k
    return Impl.isTruncateFree(Ty1, Ty2);
1322
1.66k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
209
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
209
    return Impl.isTruncateFree(Ty1, Ty2);
1322
209
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
76
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
76
    return Impl.isTruncateFree(Ty1, Ty2);
1322
76
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
38.1k
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
38.1k
    return Impl.isTruncateFree(Ty1, Ty2);
1322
38.1k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isTruncateFree(llvm::Type*, llvm::Type*)
Line
Count
Source
1320
17.7k
  bool isTruncateFree(Type *Ty1, Type *Ty2) override {
1321
17.7k
    return Impl.isTruncateFree(Ty1, Ty2);
1322
17.7k
  }
1323
164k
  bool isProfitableToHoist(Instruction *I) override {
1324
164k
    return Impl.isProfitableToHoist(I);
1325
164k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
82.7k
  bool isProfitableToHoist(Instruction *I) override {
1324
82.7k
    return Impl.isProfitableToHoist(I);
1325
82.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isProfitableToHoist(llvm::Instruction*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isProfitableToHoist(llvm::Instruction*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
17.6k
  bool isProfitableToHoist(Instruction *I) override {
1324
17.6k
    return Impl.isProfitableToHoist(I);
1325
17.6k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
16
  bool isProfitableToHoist(Instruction *I) override {
1324
16
    return Impl.isProfitableToHoist(I);
1325
16
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isProfitableToHoist(llvm::Instruction*)
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
32
  bool isProfitableToHoist(Instruction *I) override {
1324
32
    return Impl.isProfitableToHoist(I);
1325
32
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isProfitableToHoist(llvm::Instruction*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
64.3k
  bool isProfitableToHoist(Instruction *I) override {
1324
64.3k
    return Impl.isProfitableToHoist(I);
1325
64.3k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isProfitableToHoist(llvm::Instruction*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isProfitableToHoist(llvm::Instruction*)
Line
Count
Source
1323
70
  bool isProfitableToHoist(Instruction *I) override {
1324
70
    return Impl.isProfitableToHoist(I);
1325
70
  }
1326
576
  bool useAA() override { return Impl.useAA(); }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::useAA()
Line
Count
Source
1326
35
  bool useAA() override { return Impl.useAA(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::useAA()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::useAA()
Line
Count
Source
1326
541
  bool useAA() override { return Impl.useAA(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::useAA()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::useAA()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::useAA()
1327
18.8k
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
17.1k
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isTypeLegal(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
2
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
281
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
3
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isTypeLegal(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isTypeLegal(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isTypeLegal(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
7
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
5
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isTypeLegal(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
981
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isTypeLegal(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isTypeLegal(llvm::Type*)
Line
Count
Source
1327
419
  bool isTypeLegal(Type *Ty) override { return Impl.isTypeLegal(Ty); }
1328
0
  unsigned getJumpBufAlignment() override { return Impl.getJumpBufAlignment(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getJumpBufAlignment()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getJumpBufAlignment()
1329
0
  unsigned getJumpBufSize() override { return Impl.getJumpBufSize(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getJumpBufSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getJumpBufSize()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getJumpBufSize()
1330
65.6k
  bool shouldBuildLookupTables() override {
1331
65.6k
    return Impl.shouldBuildLookupTables();
1332
65.6k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
58.7k
  bool shouldBuildLookupTables() override {
1331
58.7k
    return Impl.shouldBuildLookupTables();
1332
58.7k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
6
  bool shouldBuildLookupTables() override {
1331
6
    return Impl.shouldBuildLookupTables();
1332
6
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
6
  bool shouldBuildLookupTables() override {
1331
6
    return Impl.shouldBuildLookupTables();
1332
6
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
2.07k
  bool shouldBuildLookupTables() override {
1331
2.07k
    return Impl.shouldBuildLookupTables();
1332
2.07k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
39
  bool shouldBuildLookupTables() override {
1331
39
    return Impl.shouldBuildLookupTables();
1332
39
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::shouldBuildLookupTables()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::shouldBuildLookupTables()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::shouldBuildLookupTables()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::shouldBuildLookupTables()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::shouldBuildLookupTables()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::shouldBuildLookupTables()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
4.68k
  bool shouldBuildLookupTables() override {
1331
4.68k
    return Impl.shouldBuildLookupTables();
1332
4.68k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::shouldBuildLookupTables()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::shouldBuildLookupTables()
Line
Count
Source
1330
19
  bool shouldBuildLookupTables() override {
1331
19
    return Impl.shouldBuildLookupTables();
1332
19
  }
1333
98.7k
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
98.7k
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
98.7k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
60.2k
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
60.2k
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
60.2k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
11.8k
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
11.8k
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
11.8k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
173
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
173
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
173
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
3
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
3
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
3
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
26.2k
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
26.2k
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
26.2k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::shouldBuildLookupTablesForConstant(llvm::Constant*)
Line
Count
Source
1333
240
  bool shouldBuildLookupTablesForConstant(Constant *C) override {
1334
240
    return Impl.shouldBuildLookupTablesForConstant(C);
1335
240
  }
1336
32
  bool useColdCCForColdCall(Function &F) override {
1337
32
    return Impl.useColdCCForColdCall(F);
1338
32
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::useColdCCForColdCall(llvm::Function&)
Line
Count
Source
1336
3
  bool useColdCCForColdCall(Function &F) override {
1337
3
    return Impl.useColdCCForColdCall(F);
1338
3
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::useColdCCForColdCall(llvm::Function&)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::useColdCCForColdCall(llvm::Function&)
Line
Count
Source
1336
1
  bool useColdCCForColdCall(Function &F) override {
1337
1
    return Impl.useColdCCForColdCall(F);
1338
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::useColdCCForColdCall(llvm::Function&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::useColdCCForColdCall(llvm::Function&)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::useColdCCForColdCall(llvm::Function&)
Line
Count
Source
1336
23
  bool useColdCCForColdCall(Function &F) override {
1337
23
    return Impl.useColdCCForColdCall(F);
1338
23
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::useColdCCForColdCall(llvm::Function&)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::useColdCCForColdCall(llvm::Function&)
Line
Count
Source
1336
5
  bool useColdCCForColdCall(Function &F) override {
1337
5
    return Impl.useColdCCForColdCall(F);
1338
5
  }
1339
1340
  unsigned getScalarizationOverhead(Type *Ty, bool Insert,
1341
12.8k
                                    bool Extract) override {
1342
12.8k
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
12.8k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
11.5k
                                    bool Extract) override {
1342
11.5k
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
11.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
112
                                    bool Extract) override {
1342
112
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
112
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
10
                                    bool Extract) override {
1342
10
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
10
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
2
                                    bool Extract) override {
1342
2
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
2
                                    bool Extract) override {
1342
2
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
831
                                    bool Extract) override {
1342
831
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
831
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getScalarizationOverhead(llvm::Type*, bool, bool)
Line
Count
Source
1341
379
                                    bool Extract) override {
1342
379
    return Impl.getScalarizationOverhead(Ty, Insert, Extract);
1343
379
  }
1344
  unsigned getOperandsScalarizationOverhead(ArrayRef<const Value *> Args,
1345
18.5k
                                            unsigned VF) override {
1346
18.5k
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
18.5k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
15.5k
                                            unsigned VF) override {
1346
15.5k
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
15.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
670
                                            unsigned VF) override {
1346
670
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
670
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
5
                                            unsigned VF) override {
1346
5
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
5
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
2
                                            unsigned VF) override {
1346
2
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
4
                                            unsigned VF) override {
1346
4
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
1.89k
                                            unsigned VF) override {
1346
1.89k
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
1.89k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getOperandsScalarizationOverhead(llvm::ArrayRef<llvm::Value const*>, unsigned int)
Line
Count
Source
1345
344
                                            unsigned VF) override {
1346
344
    return Impl.getOperandsScalarizationOverhead(Args, VF);
1347
344
  }
1348
1349
17.2k
  bool supportsEfficientVectorElementLoadStore() override {
1350
17.2k
    return Impl.supportsEfficientVectorElementLoadStore();
1351
17.2k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
14.6k
  bool supportsEfficientVectorElementLoadStore() override {
1350
14.6k
    return Impl.supportsEfficientVectorElementLoadStore();
1351
14.6k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::supportsEfficientVectorElementLoadStore()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::supportsEfficientVectorElementLoadStore()
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
670
  bool supportsEfficientVectorElementLoadStore() override {
1350
670
    return Impl.supportsEfficientVectorElementLoadStore();
1351
670
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
15
  bool supportsEfficientVectorElementLoadStore() override {
1350
15
    return Impl.supportsEfficientVectorElementLoadStore();
1351
15
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::supportsEfficientVectorElementLoadStore()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::supportsEfficientVectorElementLoadStore()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::supportsEfficientVectorElementLoadStore()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
2
  bool supportsEfficientVectorElementLoadStore() override {
1350
2
    return Impl.supportsEfficientVectorElementLoadStore();
1351
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
4
  bool supportsEfficientVectorElementLoadStore() override {
1350
4
    return Impl.supportsEfficientVectorElementLoadStore();
1351
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::supportsEfficientVectorElementLoadStore()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
1.67k
  bool supportsEfficientVectorElementLoadStore() override {
1350
1.67k
    return Impl.supportsEfficientVectorElementLoadStore();
1351
1.67k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::supportsEfficientVectorElementLoadStore()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::supportsEfficientVectorElementLoadStore()
Line
Count
Source
1349
166
  bool supportsEfficientVectorElementLoadStore() override {
1350
166
    return Impl.supportsEfficientVectorElementLoadStore();
1351
166
  }
1352
1353
1.26k
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1.26k
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1.26k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
1.16k
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1.16k
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1.16k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::enableAggressiveInterleaving(bool)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
3
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
3
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
3
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
1
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
1
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::enableAggressiveInterleaving(bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::enableAggressiveInterleaving(bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::enableAggressiveInterleaving(bool)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
1
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
1
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
1
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::enableAggressiveInterleaving(bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
72
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
72
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
72
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::enableAggressiveInterleaving(bool)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::enableAggressiveInterleaving(bool)
Line
Count
Source
1353
20
  bool enableAggressiveInterleaving(bool LoopHasReductions) override {
1354
20
    return Impl.enableAggressiveInterleaving(LoopHasReductions);
1355
20
  }
1356
  const MemCmpExpansionOptions *enableMemCmpExpansion(
1357
510k
      bool IsZeroCmp) const override {
1358
510k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
510k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
261k
      bool IsZeroCmp) const override {
1358
261k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
261k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
2.29k
      bool IsZeroCmp) const override {
1358
2.29k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
2.29k
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
19.9k
      bool IsZeroCmp) const override {
1358
19.9k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
19.9k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
32.3k
      bool IsZeroCmp) const override {
1358
32.3k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
32.3k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
3.31k
      bool IsZeroCmp) const override {
1358
3.31k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
3.31k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
89
      bool IsZeroCmp) const override {
1358
89
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
89
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
12.9k
      bool IsZeroCmp) const override {
1358
12.9k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
12.9k
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
1.04k
      bool IsZeroCmp) const override {
1358
1.04k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
1.04k
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
9.28k
      bool IsZeroCmp) const override {
1358
9.28k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
9.28k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
7.21k
      bool IsZeroCmp) const override {
1358
7.21k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
7.21k
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
3.68k
      bool IsZeroCmp) const override {
1358
3.68k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
3.68k
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
156k
      bool IsZeroCmp) const override {
1358
156k
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
156k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
262
      bool IsZeroCmp) const override {
1358
262
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
262
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::enableMemCmpExpansion(bool) const
Line
Count
Source
1357
434
      bool IsZeroCmp) const override {
1358
434
    return Impl.enableMemCmpExpansion(IsZeroCmp);
1359
434
  }
1360
20.9k
  bool enableInterleavedAccessVectorization() override {
1361
20.9k
    return Impl.enableInterleavedAccessVectorization();
1362
20.9k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
17.8k
  bool enableInterleavedAccessVectorization() override {
1361
17.8k
    return Impl.enableInterleavedAccessVectorization();
1362
17.8k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::enableInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
8
  bool enableInterleavedAccessVectorization() override {
1361
8
    return Impl.enableInterleavedAccessVectorization();
1362
8
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
656
  bool enableInterleavedAccessVectorization() override {
1361
656
    return Impl.enableInterleavedAccessVectorization();
1362
656
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
2
  bool enableInterleavedAccessVectorization() override {
1361
2
    return Impl.enableInterleavedAccessVectorization();
1362
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::enableInterleavedAccessVectorization()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::enableInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
1
  bool enableInterleavedAccessVectorization() override {
1361
1
    return Impl.enableInterleavedAccessVectorization();
1362
1
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
12
  bool enableInterleavedAccessVectorization() override {
1361
12
    return Impl.enableInterleavedAccessVectorization();
1362
12
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
4
  bool enableInterleavedAccessVectorization() override {
1361
4
    return Impl.enableInterleavedAccessVectorization();
1362
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::enableInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
1.83k
  bool enableInterleavedAccessVectorization() override {
1361
1.83k
    return Impl.enableInterleavedAccessVectorization();
1362
1.83k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::enableInterleavedAccessVectorization()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::enableInterleavedAccessVectorization()
Line
Count
Source
1360
554
  bool enableInterleavedAccessVectorization() override {
1361
554
    return Impl.enableInterleavedAccessVectorization();
1362
554
  }
1363
20.5k
  bool enableMaskedInterleavedAccessVectorization() override {
1364
20.5k
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
20.5k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
17.9k
  bool enableMaskedInterleavedAccessVectorization() override {
1364
17.9k
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
17.9k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::enableMaskedInterleavedAccessVectorization()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::enableMaskedInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
655
  bool enableMaskedInterleavedAccessVectorization() override {
1364
655
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
655
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
2
  bool enableMaskedInterleavedAccessVectorization() override {
1364
2
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::enableMaskedInterleavedAccessVectorization()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::enableMaskedInterleavedAccessVectorization()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::enableMaskedInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
12
  bool enableMaskedInterleavedAccessVectorization() override {
1364
12
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
12
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
4
  bool enableMaskedInterleavedAccessVectorization() override {
1364
4
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::enableMaskedInterleavedAccessVectorization()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
1.86k
  bool enableMaskedInterleavedAccessVectorization() override {
1364
1.86k
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
1.86k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::enableMaskedInterleavedAccessVectorization()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::enableMaskedInterleavedAccessVectorization()
Line
Count
Source
1363
49
  bool enableMaskedInterleavedAccessVectorization() override {
1364
49
    return Impl.enableMaskedInterleavedAccessVectorization();
1365
49
  }
1366
10.7k
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
10.7k
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
10.7k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isFPVectorizationPotentiallyUnsafe()
Line
Count
Source
1366
10.5k
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
10.5k
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
10.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isFPVectorizationPotentiallyUnsafe()
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Line
Count
Source
1366
2
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
2
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isFPVectorizationPotentiallyUnsafe()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Line
Count
Source
1366
3
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
3
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
3
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isFPVectorizationPotentiallyUnsafe()
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isFPVectorizationPotentiallyUnsafe()
Line
Count
Source
1366
104
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
104
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
104
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isFPVectorizationPotentiallyUnsafe()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isFPVectorizationPotentiallyUnsafe()
Line
Count
Source
1366
62
  bool isFPVectorizationPotentiallyUnsafe() override {
1367
62
    return Impl.isFPVectorizationPotentiallyUnsafe();
1368
62
  }
1369
  bool allowsMisalignedMemoryAccesses(LLVMContext &Context,
1370
                                      unsigned BitWidth, unsigned AddressSpace,
1371
8.65k
                                      unsigned Alignment, bool *Fast) override {
1372
8.65k
    return Impl.allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
1373
8.65k
                                               Alignment, Fast);
1374
8.65k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Line
Count
Source
1371
118
                                      unsigned Alignment, bool *Fast) override {
1372
118
    return Impl.allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
1373
118
                                               Alignment, Fast);
1374
118
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Line
Count
Source
1371
8.47k
                                      unsigned Alignment, bool *Fast) override {
1372
8.47k
    return Impl.allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
1373
8.47k
                                               Alignment, Fast);
1374
8.47k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Line
Count
Source
1371
21
                                      unsigned Alignment, bool *Fast) override {
1372
21
    return Impl.allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
1373
21
                                               Alignment, Fast);
1374
21
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Line
Count
Source
1371
47
                                      unsigned Alignment, bool *Fast) override {
1372
47
    return Impl.allowsMisalignedMemoryAccesses(Context, BitWidth, AddressSpace,
1373
47
                                               Alignment, Fast);
1374
47
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::allowsMisalignedMemoryAccesses(llvm::LLVMContext&, unsigned int, unsigned int, unsigned int, bool*)
1375
158k
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
158k
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
158k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
126k
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
126k
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
126k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getPopcntSupport(unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
7
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
7
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
7
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
7.50k
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
7.50k
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
7.50k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getPopcntSupport(unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getPopcntSupport(unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getPopcntSupport(unsigned int)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
1
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
1
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getPopcntSupport(unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getPopcntSupport(unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getPopcntSupport(unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
24.7k
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
24.7k
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
24.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getPopcntSupport(unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getPopcntSupport(unsigned int)
Line
Count
Source
1375
16
  PopcntSupportKind getPopcntSupport(unsigned IntTyWidthInBit) override {
1376
16
    return Impl.getPopcntSupport(IntTyWidthInBit);
1377
16
  }
1378
58
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::haveFastSqrt(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::haveFastSqrt(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::haveFastSqrt(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
2
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::haveFastSqrt(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::haveFastSqrt(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
14
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::haveFastSqrt(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
4
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
4
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::haveFastSqrt(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
30
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::haveFastSqrt(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::haveFastSqrt(llvm::Type*)
Line
Count
Source
1378
4
  bool haveFastSqrt(Type *Ty) override { return Impl.haveFastSqrt(Ty); }
1379
1380
27
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) override {
1381
27
    return Impl.isFCmpOrdCheaperThanFCmpZero(Ty);
1382
27
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Line
Count
Source
1380
14
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) override {
1381
14
    return Impl.isFCmpOrdCheaperThanFCmpZero(Ty);
1382
14
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Line
Count
Source
1380
4
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) override {
1381
4
    return Impl.isFCmpOrdCheaperThanFCmpZero(Ty);
1382
4
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Line
Count
Source
1380
4
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) override {
1381
4
    return Impl.isFCmpOrdCheaperThanFCmpZero(Ty);
1382
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Line
Count
Source
1380
5
  bool isFCmpOrdCheaperThanFCmpZero(Type *Ty) override {
1381
5
    return Impl.isFCmpOrdCheaperThanFCmpZero(Ty);
1382
5
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::isFCmpOrdCheaperThanFCmpZero(llvm::Type*)
1383
1384
580k
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getFPOpCost(llvm::Type*)
Line
Count
Source
1384
569k
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getFPOpCost(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getFPOpCost(llvm::Type*)
Line
Count
Source
1384
12
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getFPOpCost(llvm::Type*)
Line
Count
Source
1384
1.05k
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getFPOpCost(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getFPOpCost(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getFPOpCost(llvm::Type*)
Line
Count
Source
1384
10.6k
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getFPOpCost(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getFPOpCost(llvm::Type*)
Line
Count
Source
1384
1
  int getFPOpCost(Type *Ty) override { return Impl.getFPOpCost(Ty); }
1385
1386
  int getIntImmCodeSizeCost(unsigned Opc, unsigned Idx, const APInt &Imm,
1387
4.19k
                            Type *Ty) override {
1388
4.19k
    return Impl.getIntImmCodeSizeCost(Opc, Idx, Imm, Ty);
1389
4.19k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1387
109
                            Type *Ty) override {
1388
109
    return Impl.getIntImmCodeSizeCost(Opc, Idx, Imm, Ty);
1389
109
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1387
2.78k
                            Type *Ty) override {
1388
2.78k
    return Impl.getIntImmCodeSizeCost(Opc, Idx, Imm, Ty);
1389
2.78k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1387
1.30k
                            Type *Ty) override {
1388
1.30k
    return Impl.getIntImmCodeSizeCost(Opc, Idx, Imm, Ty);
1389
1.30k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntImmCodeSizeCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
1390
87
  int getIntImmCost(const APInt &Imm, Type *Ty) override {
1391
87
    return Impl.getIntImmCost(Imm, Ty);
1392
87
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Line
Count
Source
1390
2
  int getIntImmCost(const APInt &Imm, Type *Ty) override {
1391
2
    return Impl.getIntImmCost(Imm, Ty);
1392
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Line
Count
Source
1390
1
  int getIntImmCost(const APInt &Imm, Type *Ty) override {
1391
1
    return Impl.getIntImmCost(Imm, Ty);
1392
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Line
Count
Source
1390
52
  int getIntImmCost(const APInt &Imm, Type *Ty) override {
1391
52
    return Impl.getIntImmCost(Imm, Ty);
1392
52
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntImmCost(llvm::APInt const&, llvm::Type*)
Line
Count
Source
1390
32
  int getIntImmCost(const APInt &Imm, Type *Ty) override {
1391
32
    return Impl.getIntImmCost(Imm, Ty);
1392
32
  }
1393
  int getIntImmCost(unsigned Opc, unsigned Idx, const APInt &Imm,
1394
5.25M
                    Type *Ty) override {
1395
5.25M
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
5.25M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
3.78M
                    Type *Ty) override {
1395
3.78M
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
3.78M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
2.28k
                    Type *Ty) override {
1395
2.28k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
2.28k
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
23.2k
                    Type *Ty) override {
1395
23.2k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
23.2k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
373k
                    Type *Ty) override {
1395
373k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
373k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
5.30k
                    Type *Ty) override {
1395
5.30k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
5.30k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
65
                    Type *Ty) override {
1395
65
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
65
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
9.31k
                    Type *Ty) override {
1395
9.31k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
9.31k
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
278
                    Type *Ty) override {
1395
278
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
278
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
9.60k
                    Type *Ty) override {
1395
9.60k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
9.60k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
7.45k
                    Type *Ty) override {
1395
7.45k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
7.45k
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
1.57k
                    Type *Ty) override {
1395
1.57k
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
1.57k
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
1.03M
                    Type *Ty) override {
1395
1.03M
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
1.03M
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
166
                    Type *Ty) override {
1395
166
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
166
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntImmCost(unsigned int, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1394
417
                    Type *Ty) override {
1395
417
    return Impl.getIntImmCost(Opc, Idx, Imm, Ty);
1396
417
  }
1397
  int getIntImmCost(Intrinsic::ID IID, unsigned Idx, const APInt &Imm,
1398
405k
                    Type *Ty) override {
1399
405k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
405k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
229k
                    Type *Ty) override {
1399
229k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
229k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
2.66k
                    Type *Ty) override {
1399
2.66k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
2.66k
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
13.4k
                    Type *Ty) override {
1399
13.4k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
13.4k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
45.7k
                    Type *Ty) override {
1399
45.7k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
45.7k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
915
                    Type *Ty) override {
1399
915
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
915
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
4
                    Type *Ty) override {
1399
4
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
4
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
1.35k
                    Type *Ty) override {
1399
1.35k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
1.35k
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
119
                    Type *Ty) override {
1399
119
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
119
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
585
                    Type *Ty) override {
1399
585
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
585
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
1.23k
                    Type *Ty) override {
1399
1.23k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
1.23k
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
51
                    Type *Ty) override {
1399
51
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
51
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
109k
                    Type *Ty) override {
1399
109k
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
109k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
23
                    Type *Ty) override {
1399
23
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
23
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntImmCost(llvm::Intrinsic::ID, unsigned int, llvm::APInt const&, llvm::Type*)
Line
Count
Source
1398
3
                    Type *Ty) override {
1399
3
    return Impl.getIntImmCost(IID, Idx, Imm, Ty);
1400
3
  }
1401
9.81M
  unsigned getNumberOfRegisters(bool Vector) override {
1402
9.81M
    return Impl.getNumberOfRegisters(Vector);
1403
9.81M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
8.18M
  unsigned getNumberOfRegisters(bool Vector) override {
1402
8.18M
    return Impl.getNumberOfRegisters(Vector);
1403
8.18M
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
220
  unsigned getNumberOfRegisters(bool Vector) override {
1402
220
    return Impl.getNumberOfRegisters(Vector);
1403
220
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
2.52k
  unsigned getNumberOfRegisters(bool Vector) override {
1402
2.52k
    return Impl.getNumberOfRegisters(Vector);
1403
2.52k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
260k
  unsigned getNumberOfRegisters(bool Vector) override {
1402
260k
    return Impl.getNumberOfRegisters(Vector);
1403
260k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
8.77k
  unsigned getNumberOfRegisters(bool Vector) override {
1402
8.77k
    return Impl.getNumberOfRegisters(Vector);
1403
8.77k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
56
  unsigned getNumberOfRegisters(bool Vector) override {
1402
56
    return Impl.getNumberOfRegisters(Vector);
1403
56
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
327
  unsigned getNumberOfRegisters(bool Vector) override {
1402
327
    return Impl.getNumberOfRegisters(Vector);
1403
327
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
285
  unsigned getNumberOfRegisters(bool Vector) override {
1402
285
    return Impl.getNumberOfRegisters(Vector);
1403
285
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
11.0k
  unsigned getNumberOfRegisters(bool Vector) override {
1402
11.0k
    return Impl.getNumberOfRegisters(Vector);
1403
11.0k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
866
  unsigned getNumberOfRegisters(bool Vector) override {
1402
866
    return Impl.getNumberOfRegisters(Vector);
1403
866
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
428
  unsigned getNumberOfRegisters(bool Vector) override {
1402
428
    return Impl.getNumberOfRegisters(Vector);
1403
428
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
1.27M
  unsigned getNumberOfRegisters(bool Vector) override {
1402
1.27M
    return Impl.getNumberOfRegisters(Vector);
1403
1.27M
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
6
  unsigned getNumberOfRegisters(bool Vector) override {
1402
6
    return Impl.getNumberOfRegisters(Vector);
1403
6
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getNumberOfRegisters(bool)
Line
Count
Source
1401
67.7k
  unsigned getNumberOfRegisters(bool Vector) override {
1402
67.7k
    return Impl.getNumberOfRegisters(Vector);
1403
67.7k
  }
1404
349k
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
349k
    return Impl.getRegisterBitWidth(Vector);
1406
349k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
281k
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
281k
    return Impl.getRegisterBitWidth(Vector);
1406
281k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
2
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
2
    return Impl.getRegisterBitWidth(Vector);
1406
2
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
95
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
95
    return Impl.getRegisterBitWidth(Vector);
1406
95
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
18.2k
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
18.2k
    return Impl.getRegisterBitWidth(Vector);
1406
18.2k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
6
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
6
    return Impl.getRegisterBitWidth(Vector);
1406
6
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getRegisterBitWidth(bool) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getRegisterBitWidth(bool) const
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
9
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
9
    return Impl.getRegisterBitWidth(Vector);
1406
9
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
25
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
25
    return Impl.getRegisterBitWidth(Vector);
1406
25
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
10
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
10
    return Impl.getRegisterBitWidth(Vector);
1406
10
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
26
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
26
    return Impl.getRegisterBitWidth(Vector);
1406
26
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
48.0k
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
48.0k
    return Impl.getRegisterBitWidth(Vector);
1406
48.0k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getRegisterBitWidth(bool) const
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getRegisterBitWidth(bool) const
Line
Count
Source
1404
1.30k
  unsigned getRegisterBitWidth(bool Vector) const override {
1405
1.30k
    return Impl.getRegisterBitWidth(Vector);
1406
1.30k
  }
1407
308k
  unsigned getMinVectorRegisterBitWidth() override {
1408
308k
    return Impl.getMinVectorRegisterBitWidth();
1409
308k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
246k
  unsigned getMinVectorRegisterBitWidth() override {
1408
246k
    return Impl.getMinVectorRegisterBitWidth();
1409
246k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
2
  unsigned getMinVectorRegisterBitWidth() override {
1408
2
    return Impl.getMinVectorRegisterBitWidth();
1409
2
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
81
  unsigned getMinVectorRegisterBitWidth() override {
1408
81
    return Impl.getMinVectorRegisterBitWidth();
1409
81
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
16.9k
  unsigned getMinVectorRegisterBitWidth() override {
1408
16.9k
    return Impl.getMinVectorRegisterBitWidth();
1409
16.9k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMinVectorRegisterBitWidth()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMinVectorRegisterBitWidth()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMinVectorRegisterBitWidth()
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
7
  unsigned getMinVectorRegisterBitWidth() override {
1408
7
    return Impl.getMinVectorRegisterBitWidth();
1409
7
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
2
  unsigned getMinVectorRegisterBitWidth() override {
1408
2
    return Impl.getMinVectorRegisterBitWidth();
1409
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
2
  unsigned getMinVectorRegisterBitWidth() override {
1408
2
    return Impl.getMinVectorRegisterBitWidth();
1409
2
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
26
  unsigned getMinVectorRegisterBitWidth() override {
1408
26
    return Impl.getMinVectorRegisterBitWidth();
1409
26
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
44.7k
  unsigned getMinVectorRegisterBitWidth() override {
1408
44.7k
    return Impl.getMinVectorRegisterBitWidth();
1409
44.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMinVectorRegisterBitWidth()
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMinVectorRegisterBitWidth()
Line
Count
Source
1407
251
  unsigned getMinVectorRegisterBitWidth() override {
1408
251
    return Impl.getMinVectorRegisterBitWidth();
1409
251
  }
1410
20.7k
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
20.7k
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
20.7k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
17.7k
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
17.7k
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
17.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::shouldMaximizeVectorBandwidth(bool) const
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
6
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
6
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
6
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
656
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
656
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
656
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
2
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
2
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
1
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
1
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
1
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
12
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
12
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
12
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
4
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
4
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
1.82k
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
1.82k
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
1.82k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::shouldMaximizeVectorBandwidth(bool) const
Line
Count
Source
1410
479
  bool shouldMaximizeVectorBandwidth(bool OptSize) const override {
1411
479
    return Impl.shouldMaximizeVectorBandwidth(OptSize);
1412
479
  }
1413
2
  unsigned getMinimumVF(unsigned ElemWidth) const override {
1414
2
    return Impl.getMinimumVF(ElemWidth);
1415
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMinimumVF(unsigned int) const
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMinimumVF(unsigned int) const
Line
Count
Source
1413
2
  unsigned getMinimumVF(unsigned ElemWidth) const override {
1414
2
    return Impl.getMinimumVF(ElemWidth);
1415
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMinimumVF(unsigned int) const
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMinimumVF(unsigned int) const
1416
  bool shouldConsiderAddressTypePromotion(
1417
833k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
833k
    return Impl.shouldConsiderAddressTypePromotion(
1419
833k
        I, AllowPromotionWithoutCommonHeader);
1420
833k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
732k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
732k
    return Impl.shouldConsiderAddressTypePromotion(
1419
732k
        I, AllowPromotionWithoutCommonHeader);
1420
732k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
593
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
593
    return Impl.shouldConsiderAddressTypePromotion(
1419
593
        I, AllowPromotionWithoutCommonHeader);
1420
593
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
9.34k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
9.34k
    return Impl.shouldConsiderAddressTypePromotion(
1419
9.34k
        I, AllowPromotionWithoutCommonHeader);
1420
9.34k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
15.0k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
15.0k
    return Impl.shouldConsiderAddressTypePromotion(
1419
15.0k
        I, AllowPromotionWithoutCommonHeader);
1420
15.0k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
1.00k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
1.00k
    return Impl.shouldConsiderAddressTypePromotion(
1419
1.00k
        I, AllowPromotionWithoutCommonHeader);
1420
1.00k
  }
llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
21
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
21
    return Impl.shouldConsiderAddressTypePromotion(
1419
21
        I, AllowPromotionWithoutCommonHeader);
1420
21
  }
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
997
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
997
    return Impl.shouldConsiderAddressTypePromotion(
1419
997
        I, AllowPromotionWithoutCommonHeader);
1420
997
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
165
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
165
    return Impl.shouldConsiderAddressTypePromotion(
1419
165
        I, AllowPromotionWithoutCommonHeader);
1420
165
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
2.30k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
2.30k
    return Impl.shouldConsiderAddressTypePromotion(
1419
2.30k
        I, AllowPromotionWithoutCommonHeader);
1420
2.30k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
1.46k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
1.46k
    return Impl.shouldConsiderAddressTypePromotion(
1419
1.46k
        I, AllowPromotionWithoutCommonHeader);
1420
1.46k
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
666
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
666
    return Impl.shouldConsiderAddressTypePromotion(
1419
666
        I, AllowPromotionWithoutCommonHeader);
1420
666
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
68.6k
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
68.6k
    return Impl.shouldConsiderAddressTypePromotion(
1419
68.6k
        I, AllowPromotionWithoutCommonHeader);
1420
68.6k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
8
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
8
    return Impl.shouldConsiderAddressTypePromotion(
1419
8
        I, AllowPromotionWithoutCommonHeader);
1420
8
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::shouldConsiderAddressTypePromotion(llvm::Instruction const&, bool&)
Line
Count
Source
1417
78
      const Instruction &I, bool &AllowPromotionWithoutCommonHeader) override {
1418
78
    return Impl.shouldConsiderAddressTypePromotion(
1419
78
        I, AllowPromotionWithoutCommonHeader);
1420
78
  }
1421
68
  unsigned getCacheLineSize() override {
1422
68
    return Impl.getCacheLineSize();
1423
68
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCacheLineSize()
Line
Count
Source
1421
17
  unsigned getCacheLineSize() override {
1422
17
    return Impl.getCacheLineSize();
1423
17
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCacheLineSize()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCacheLineSize()
Line
Count
Source
1421
15
  unsigned getCacheLineSize() override {
1422
15
    return Impl.getCacheLineSize();
1423
15
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCacheLineSize()
Line
Count
Source
1421
36
  unsigned getCacheLineSize() override {
1422
36
    return Impl.getCacheLineSize();
1423
36
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCacheLineSize()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCacheLineSize()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCacheLineSize()
1424
4
  llvm::Optional<unsigned> getCacheSize(CacheLevel Level) override {
1425
4
    return Impl.getCacheSize(Level);
1426
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Line
Count
Source
1424
2
  llvm::Optional<unsigned> getCacheSize(CacheLevel Level) override {
1425
2
    return Impl.getCacheSize(Level);
1426
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCacheSize(llvm::TargetTransformInfo::CacheLevel)
Line
Count
Source
1424
2
  llvm::Optional<unsigned> getCacheSize(CacheLevel Level) override {
1425
2
    return Impl.getCacheSize(Level);
1426
2
  }
1427
5
  llvm::Optional<unsigned> getCacheAssociativity(CacheLevel Level) override {
1428
5
    return Impl.getCacheAssociativity(Level);
1429
5
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Line
Count
Source
1427
4
  llvm::Optional<unsigned> getCacheAssociativity(CacheLevel Level) override {
1428
4
    return Impl.getCacheAssociativity(Level);
1429
4
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCacheAssociativity(llvm::TargetTransformInfo::CacheLevel)
Line
Count
Source
1427
1
  llvm::Optional<unsigned> getCacheAssociativity(CacheLevel Level) override {
1428
1
    return Impl.getCacheAssociativity(Level);
1429
1
  }
1430
425k
  unsigned getPrefetchDistance() override { return Impl.getPrefetchDistance(); }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getPrefetchDistance()
Line
Count
Source
1430
418k
  unsigned getPrefetchDistance() override { return Impl.getPrefetchDistance(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getPrefetchDistance()
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getPrefetchDistance()
Line
Count
Source
1430
2
  unsigned getPrefetchDistance() override { return Impl.getPrefetchDistance(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getPrefetchDistance()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getPrefetchDistance()
Line
Count
Source
1430
99
  unsigned getPrefetchDistance() override { return Impl.getPrefetchDistance(); }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getPrefetchDistance()
Line
Count
Source
1430
7.35k
  unsigned getPrefetchDistance() override { return Impl.getPrefetchDistance(); }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getPrefetchDistance()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getPrefetchDistance()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getPrefetchDistance()
1431
9.64k
  unsigned getMinPrefetchStride() override {
1432
9.64k
    return Impl.getMinPrefetchStride();
1433
9.64k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMinPrefetchStride()
Line
Count
Source
1431
9.57k
  unsigned getMinPrefetchStride() override {
1432
9.57k
    return Impl.getMinPrefetchStride();
1433
9.57k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMinPrefetchStride()
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMinPrefetchStride()
Line
Count
Source
1431
1
  unsigned getMinPrefetchStride() override {
1432
1
    return Impl.getMinPrefetchStride();
1433
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMinPrefetchStride()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMinPrefetchStride()
Line
Count
Source
1431
28
  unsigned getMinPrefetchStride() override {
1432
28
    return Impl.getMinPrefetchStride();
1433
28
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMinPrefetchStride()
Line
Count
Source
1431
37
  unsigned getMinPrefetchStride() override {
1432
37
    return Impl.getMinPrefetchStride();
1433
37
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMinPrefetchStride()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMinPrefetchStride()
1434
157k
  unsigned getMaxPrefetchIterationsAhead() override {
1435
157k
    return Impl.getMaxPrefetchIterationsAhead();
1436
157k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMaxPrefetchIterationsAhead()
Line
Count
Source
1434
157k
  unsigned getMaxPrefetchIterationsAhead() override {
1435
157k
    return Impl.getMaxPrefetchIterationsAhead();
1436
157k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMaxPrefetchIterationsAhead()
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMaxPrefetchIterationsAhead()
Line
Count
Source
1434
1
  unsigned getMaxPrefetchIterationsAhead() override {
1435
1
    return Impl.getMaxPrefetchIterationsAhead();
1436
1
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMaxPrefetchIterationsAhead()
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMaxPrefetchIterationsAhead()
Line
Count
Source
1434
27
  unsigned getMaxPrefetchIterationsAhead() override {
1435
27
    return Impl.getMaxPrefetchIterationsAhead();
1436
27
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMaxPrefetchIterationsAhead()
Line
Count
Source
1434
150
  unsigned getMaxPrefetchIterationsAhead() override {
1435
150
    return Impl.getMaxPrefetchIterationsAhead();
1436
150
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMaxPrefetchIterationsAhead()
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMaxPrefetchIterationsAhead()
1437
23.1k
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
23.1k
    return Impl.getMaxInterleaveFactor(VF);
1439
23.1k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
17.2k
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
17.2k
    return Impl.getMaxInterleaveFactor(VF);
1439
17.2k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMaxInterleaveFactor(unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
8
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
8
    return Impl.getMaxInterleaveFactor(VF);
1439
8
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
2.37k
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
2.37k
    return Impl.getMaxInterleaveFactor(VF);
1439
2.37k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
20
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
20
    return Impl.getMaxInterleaveFactor(VF);
1439
20
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMaxInterleaveFactor(unsigned int)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
42
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
42
    return Impl.getMaxInterleaveFactor(VF);
1439
42
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
1
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
1
    return Impl.getMaxInterleaveFactor(VF);
1439
1
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
75
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
75
    return Impl.getMaxInterleaveFactor(VF);
1439
75
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
22
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
22
    return Impl.getMaxInterleaveFactor(VF);
1439
22
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMaxInterleaveFactor(unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
2.90k
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
2.90k
    return Impl.getMaxInterleaveFactor(VF);
1439
2.90k
  }
llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
1
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
1
    return Impl.getMaxInterleaveFactor(VF);
1439
1
  }
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMaxInterleaveFactor(unsigned int)
Line
Count
Source
1437
500
  unsigned getMaxInterleaveFactor(unsigned VF) override {
1438
500
    return Impl.getMaxInterleaveFactor(VF);
1439
500
  }
1440
  unsigned getEstimatedNumberOfCaseClusters(const SwitchInst &SI,
1441
57.5k
                                            unsigned &JTSize) override {
1442
57.5k
    return Impl.getEstimatedNumberOfCaseClusters(SI, JTSize);
1443
57.5k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Line
Count
Source
1441
35.1k
                                            unsigned &JTSize) override {
1442
35.1k
    return Impl.getEstimatedNumberOfCaseClusters(SI, JTSize);
1443
35.1k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Line
Count
Source
1441
4.31k
                                            unsigned &JTSize) override {
1442
4.31k
    return Impl.getEstimatedNumberOfCaseClusters(SI, JTSize);
1443
4.31k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Line
Count
Source
1441
18.0k
                                            unsigned &JTSize) override {
1442
18.0k
    return Impl.getEstimatedNumberOfCaseClusters(SI, JTSize);
1443
18.0k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getEstimatedNumberOfCaseClusters(llvm::SwitchInst const&, unsigned int&)
Line
Count
Source
1441
2
                                            unsigned &JTSize) override {
1442
2
    return Impl.getEstimatedNumberOfCaseClusters(SI, JTSize);
1443
2
  }
1444
  unsigned
1445
  getArithmeticInstrCost(unsigned Opcode, Type *Ty, OperandValueKind Opd1Info,
1446
                         OperandValueKind Opd2Info,
1447
                         OperandValueProperties Opd1PropInfo,
1448
                         OperandValueProperties Opd2PropInfo,
1449
1.00M
                         ArrayRef<const Value *> Args) override {
1450
1.00M
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
1.00M
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
1.00M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
806k
                         ArrayRef<const Value *> Args) override {
1450
806k
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
806k
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
806k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
250
                         ArrayRef<const Value *> Args) override {
1450
250
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
250
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
250
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
27.9k
                         ArrayRef<const Value *> Args) override {
1450
27.9k
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
27.9k
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
27.9k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
42
                         ArrayRef<const Value *> Args) override {
1450
42
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
42
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
42
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
11
                         ArrayRef<const Value *> Args) override {
1450
11
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
11
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
11
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
106
                         ArrayRef<const Value *> Args) override {
1450
106
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
106
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
106
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
824
                         ArrayRef<const Value *> Args) override {
1450
824
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
824
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
824
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
164k
                         ArrayRef<const Value *> Args) override {
1450
164k
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
164k
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
164k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getArithmeticInstrCost(unsigned int, llvm::Type*, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueKind, llvm::TargetTransformInfo::OperandValueProperties, llvm::TargetTransformInfo::OperandValueProperties, llvm::ArrayRef<llvm::Value const*>)
Line
Count
Source
1449
1.43k
                         ArrayRef<const Value *> Args) override {
1450
1.43k
    return Impl.getArithmeticInstrCost(Opcode, Ty, Opd1Info, Opd2Info,
1451
1.43k
                                       Opd1PropInfo, Opd2PropInfo, Args);
1452
1.43k
  }
1453
  int getShuffleCost(ShuffleKind Kind, Type *Tp, int Index,
1454
185k
                     Type *SubTp) override {
1455
185k
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
185k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
140k
                     Type *SubTp) override {
1455
140k
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
140k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
10
                     Type *SubTp) override {
1455
10
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
10
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
6.71k
                     Type *SubTp) override {
1455
6.71k
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
6.71k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
2
                     Type *SubTp) override {
1455
2
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
2
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
40
                     Type *SubTp) override {
1455
40
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
40
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
38.3k
                     Type *SubTp) override {
1455
38.3k
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
38.3k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getShuffleCost(llvm::TargetTransformInfo::ShuffleKind, llvm::Type*, int, llvm::Type*)
Line
Count
Source
1454
98
                     Type *SubTp) override {
1455
98
    return Impl.getShuffleCost(Kind, Tp, Index, SubTp);
1456
98
  }
1457
  int getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src,
1458
149k
                       const Instruction *I) override {
1459
149k
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
149k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
128k
                       const Instruction *I) override {
1459
128k
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
128k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
10
                       const Instruction *I) override {
1459
10
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
10
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
2.46k
                       const Instruction *I) override {
1459
2.46k
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
2.46k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
34
                       const Instruction *I) override {
1459
34
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
34
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
772
                       const Instruction *I) override {
1459
772
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
772
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
17.2k
                       const Instruction *I) override {
1459
17.2k
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
17.2k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCastInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1458
419
                       const Instruction *I) override {
1459
419
    return Impl.getCastInstrCost(Opcode, Dst, Src, I);
1460
419
  }
1461
  int getExtractWithExtendCost(unsigned Opcode, Type *Dst, VectorType *VecTy,
1462
6.53k
                               unsigned Index) override {
1463
6.53k
    return Impl.getExtractWithExtendCost(Opcode, Dst, VecTy, Index);
1464
6.53k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Line
Count
Source
1462
6.52k
                               unsigned Index) override {
1463
6.52k
    return Impl.getExtractWithExtendCost(Opcode, Dst, VecTy, Index);
1464
6.52k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Line
Count
Source
1462
8
                               unsigned Index) override {
1463
8
    return Impl.getExtractWithExtendCost(Opcode, Dst, VecTy, Index);
1464
8
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getExtractWithExtendCost(unsigned int, llvm::Type*, llvm::VectorType*, unsigned int)
1465
143k
  int getCFInstrCost(unsigned Opcode) override {
1466
143k
    return Impl.getCFInstrCost(Opcode);
1467
143k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
111k
  int getCFInstrCost(unsigned Opcode) override {
1466
111k
    return Impl.getCFInstrCost(Opcode);
1467
111k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCFInstrCost(unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
314
  int getCFInstrCost(unsigned Opcode) override {
1466
314
    return Impl.getCFInstrCost(Opcode);
1467
314
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
5.84k
  int getCFInstrCost(unsigned Opcode) override {
1466
5.84k
    return Impl.getCFInstrCost(Opcode);
1467
5.84k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
24
  int getCFInstrCost(unsigned Opcode) override {
1466
24
    return Impl.getCFInstrCost(Opcode);
1467
24
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCFInstrCost(unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCFInstrCost(unsigned int)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
6
  int getCFInstrCost(unsigned Opcode) override {
1466
6
    return Impl.getCFInstrCost(Opcode);
1467
6
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
143
  int getCFInstrCost(unsigned Opcode) override {
1466
143
    return Impl.getCFInstrCost(Opcode);
1467
143
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
933
  int getCFInstrCost(unsigned Opcode) override {
1466
933
    return Impl.getCFInstrCost(Opcode);
1467
933
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCFInstrCost(unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
22.8k
  int getCFInstrCost(unsigned Opcode) override {
1466
22.8k
    return Impl.getCFInstrCost(Opcode);
1467
22.8k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCFInstrCost(unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCFInstrCost(unsigned int)
Line
Count
Source
1465
1.47k
  int getCFInstrCost(unsigned Opcode) override {
1466
1.47k
    return Impl.getCFInstrCost(Opcode);
1467
1.47k
  }
1468
  int getCmpSelInstrCost(unsigned Opcode, Type *ValTy, Type *CondTy,
1469
172k
                         const Instruction *I) override {
1470
172k
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
172k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
142k
                         const Instruction *I) override {
1470
142k
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
142k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
49
                         const Instruction *I) override {
1470
49
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
49
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
8.34k
                         const Instruction *I) override {
1470
8.34k
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
8.34k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
12
                         const Instruction *I) override {
1470
12
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
12
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
3
                         const Instruction *I) override {
1470
3
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
3
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
48
                         const Instruction *I) override {
1470
48
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
48
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
1.34k
                         const Instruction *I) override {
1470
1.34k
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
1.34k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
19.5k
                         const Instruction *I) override {
1470
19.5k
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
19.5k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCmpSelInstrCost(unsigned int, llvm::Type*, llvm::Type*, llvm::Instruction const*)
Line
Count
Source
1469
757
                         const Instruction *I) override {
1470
757
    return Impl.getCmpSelInstrCost(Opcode, ValTy, CondTy, I);
1471
757
  }
1472
1.84M
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
1.84M
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
1.84M
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
1.48M
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
1.48M
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
1.48M
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
262
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
262
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
262
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
53.3k
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
53.3k
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
53.3k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
6
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
6
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
6
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
16
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
16
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
16
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
32
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
32
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
32
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
300k
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
300k
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
300k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getVectorInstrCost(unsigned int, llvm::Type*, unsigned int)
Line
Count
Source
1472
305
  int getVectorInstrCost(unsigned Opcode, Type *Val, unsigned Index) override {
1473
305
    return Impl.getVectorInstrCost(Opcode, Val, Index);
1474
305
  }
1475
  int getMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment,
1476
431k
                      unsigned AddressSpace, const Instruction *I) override {
1477
431k
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
431k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
359k
                      unsigned AddressSpace, const Instruction *I) override {
1477
359k
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
359k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
685
                      unsigned AddressSpace, const Instruction *I) override {
1477
685
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
685
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
7.41k
                      unsigned AddressSpace, const Instruction *I) override {
1477
7.41k
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
7.41k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
57
                      unsigned AddressSpace, const Instruction *I) override {
1477
57
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
57
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
8
                      unsigned AddressSpace, const Instruction *I) override {
1477
8
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
8
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
134
                      unsigned AddressSpace, const Instruction *I) override {
1477
134
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
134
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
354
                      unsigned AddressSpace, const Instruction *I) override {
1477
354
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
354
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
61.7k
                      unsigned AddressSpace, const Instruction *I) override {
1477
61.7k
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
61.7k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int, llvm::Instruction const*)
Line
Count
Source
1476
994
                      unsigned AddressSpace, const Instruction *I) override {
1477
994
    return Impl.getMemoryOpCost(Opcode, Src, Alignment, AddressSpace, I);
1478
994
  }
1479
  int getMaskedMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment,
1480
197
                            unsigned AddressSpace) override {
1481
197
    return Impl.getMaskedMemoryOpCost(Opcode, Src, Alignment, AddressSpace);
1482
197
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Line
Count
Source
1480
197
                            unsigned AddressSpace) override {
1481
197
    return Impl.getMaskedMemoryOpCost(Opcode, Src, Alignment, AddressSpace);
1482
197
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMaskedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, unsigned int)
1483
  int getGatherScatterOpCost(unsigned Opcode, Type *DataTy,
1484
                             Value *Ptr, bool VariableMask,
1485
132
                             unsigned Alignment) override {
1486
132
    return Impl.getGatherScatterOpCost(Opcode, DataTy, Ptr, VariableMask,
1487
132
                                       Alignment);
1488
132
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Line
Count
Source
1485
132
                             unsigned Alignment) override {
1486
132
    return Impl.getGatherScatterOpCost(Opcode, DataTy, Ptr, VariableMask,
1487
132
                                       Alignment);
1488
132
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getGatherScatterOpCost(unsigned int, llvm::Type*, llvm::Value*, bool, unsigned int)
1489
  int getInterleavedMemoryOpCost(unsigned Opcode, Type *VecTy, unsigned Factor,
1490
                                 ArrayRef<unsigned> Indices, unsigned Alignment,
1491
                                 unsigned AddressSpace, bool UseMaskForCond,
1492
2.19k
                                 bool UseMaskForGaps) override {
1493
2.19k
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
2.19k
                                           Alignment, AddressSpace,
1495
2.19k
                                           UseMaskForCond, UseMaskForGaps);
1496
2.19k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
1.91k
                                 bool UseMaskForGaps) override {
1493
1.91k
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
1.91k
                                           Alignment, AddressSpace,
1495
1.91k
                                           UseMaskForCond, UseMaskForGaps);
1496
1.91k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
52
                                 bool UseMaskForGaps) override {
1493
52
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
52
                                           Alignment, AddressSpace,
1495
52
                                           UseMaskForCond, UseMaskForGaps);
1496
52
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
15
                                 bool UseMaskForGaps) override {
1493
15
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
15
                                           Alignment, AddressSpace,
1495
15
                                           UseMaskForCond, UseMaskForGaps);
1496
15
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
2
                                 bool UseMaskForGaps) override {
1493
2
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
2
                                           Alignment, AddressSpace,
1495
2
                                           UseMaskForCond, UseMaskForGaps);
1496
2
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
172
                                 bool UseMaskForGaps) override {
1493
172
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
172
                                           Alignment, AddressSpace,
1495
172
                                           UseMaskForCond, UseMaskForGaps);
1496
172
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getInterleavedMemoryOpCost(unsigned int, llvm::Type*, unsigned int, llvm::ArrayRef<unsigned int>, unsigned int, unsigned int, bool, bool)
Line
Count
Source
1492
37
                                 bool UseMaskForGaps) override {
1493
37
    return Impl.getInterleavedMemoryOpCost(Opcode, VecTy, Factor, Indices,
1494
37
                                           Alignment, AddressSpace,
1495
37
                                           UseMaskForCond, UseMaskForGaps);
1496
37
  }
1497
  int getArithmeticReductionCost(unsigned Opcode, Type *Ty,
1498
4.86k
                                 bool IsPairwiseForm) override {
1499
4.86k
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
4.86k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Line
Count
Source
1498
4.41k
                                 bool IsPairwiseForm) override {
1499
4.41k
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
4.41k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Line
Count
Source
1498
24
                                 bool IsPairwiseForm) override {
1499
24
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
24
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Line
Count
Source
1498
60
                                 bool IsPairwiseForm) override {
1499
60
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
60
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Line
Count
Source
1498
363
                                 bool IsPairwiseForm) override {
1499
363
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
363
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getArithmeticReductionCost(unsigned int, llvm::Type*, bool)
Line
Count
Source
1498
2
                                 bool IsPairwiseForm) override {
1499
2
    return Impl.getArithmeticReductionCost(Opcode, Ty, IsPairwiseForm);
1500
2
  }
1501
  int getMinMaxReductionCost(Type *Ty, Type *CondTy,
1502
3.16k
                             bool IsPairwiseForm, bool IsUnsigned) override {
1503
3.16k
    return Impl.getMinMaxReductionCost(Ty, CondTy, IsPairwiseForm, IsUnsigned);
1504
3.16k
   }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Line
Count
Source
1502
2.84k
                             bool IsPairwiseForm, bool IsUnsigned) override {
1503
2.84k
    return Impl.getMinMaxReductionCost(Ty, CondTy, IsPairwiseForm, IsUnsigned);
1504
2.84k
   }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Line
Count
Source
1502
38
                             bool IsPairwiseForm, bool IsUnsigned) override {
1503
38
    return Impl.getMinMaxReductionCost(Ty, CondTy, IsPairwiseForm, IsUnsigned);
1504
38
   }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Line
Count
Source
1502
288
                             bool IsPairwiseForm, bool IsUnsigned) override {
1503
288
    return Impl.getMinMaxReductionCost(Ty, CondTy, IsPairwiseForm, IsUnsigned);
1504
288
   }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMinMaxReductionCost(llvm::Type*, llvm::Type*, bool, bool)
1505
  int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy, ArrayRef<Type *> Tys,
1506
3.00k
               FastMathFlags FMF, unsigned ScalarizationCostPassed) override {
1507
3.00k
    return Impl.getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
1508
3.00k
                                      ScalarizationCostPassed);
1509
3.00k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1506
857
               FastMathFlags FMF, unsigned ScalarizationCostPassed) override {
1507
857
    return Impl.getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
1508
857
                                      ScalarizationCostPassed);
1509
857
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1506
12
               FastMathFlags FMF, unsigned ScalarizationCostPassed) override {
1507
12
    return Impl.getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
1508
12
                                      ScalarizationCostPassed);
1509
12
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1506
540
               FastMathFlags FMF, unsigned ScalarizationCostPassed) override {
1507
540
    return Impl.getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
1508
540
                                      ScalarizationCostPassed);
1509
540
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1506
1.59k
               FastMathFlags FMF, unsigned ScalarizationCostPassed) override {
1507
1.59k
    return Impl.getIntrinsicInstrCost(ID, RetTy, Tys, FMF,
1508
1.59k
                                      ScalarizationCostPassed);
1509
1.59k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Type*>, llvm::FastMathFlags, unsigned int)
1510
  int getIntrinsicInstrCost(Intrinsic::ID ID, Type *RetTy,
1511
12.4k
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
12.4k
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
12.4k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
2.00k
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
2.00k
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
2.00k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
21
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
21
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
21
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
540
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
540
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
540
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
1
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
1
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
1
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
26
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
26
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
26
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
9.70k
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
9.70k
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
9.70k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getIntrinsicInstrCost(llvm::Intrinsic::ID, llvm::Type*, llvm::ArrayRef<llvm::Value*>, llvm::FastMathFlags, unsigned int)
Line
Count
Source
1511
154
       ArrayRef<Value *> Args, FastMathFlags FMF, unsigned VF) override {
1512
154
    return Impl.getIntrinsicInstrCost(ID, RetTy, Args, FMF, VF);
1513
154
  }
1514
  int getCallInstrCost(Function *F, Type *RetTy,
1515
1.68k
                       ArrayRef<Type *> Tys) override {
1516
1.68k
    return Impl.getCallInstrCost(F, RetTy, Tys);
1517
1.68k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1515
1.11k
                       ArrayRef<Type *> Tys) override {
1516
1.11k
    return Impl.getCallInstrCost(F, RetTy, Tys);
1517
1.11k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1515
5
                       ArrayRef<Type *> Tys) override {
1516
5
    return Impl.getCallInstrCost(F, RetTy, Tys);
1517
5
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1515
407
                       ArrayRef<Type *> Tys) override {
1516
407
    return Impl.getCallInstrCost(F, RetTy, Tys);
1517
407
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCallInstrCost(llvm::Function*, llvm::Type*, llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1515
154
                       ArrayRef<Type *> Tys) override {
1516
154
    return Impl.getCallInstrCost(F, RetTy, Tys);
1517
154
  }
1518
701k
  unsigned getNumberOfParts(Type *Tp) override {
1519
701k
    return Impl.getNumberOfParts(Tp);
1520
701k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
570k
  unsigned getNumberOfParts(Type *Tp) override {
1519
570k
    return Impl.getNumberOfParts(Tp);
1520
570k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getNumberOfParts(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
90
  unsigned getNumberOfParts(Type *Tp) override {
1519
90
    return Impl.getNumberOfParts(Tp);
1520
90
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
26.3k
  unsigned getNumberOfParts(Type *Tp) override {
1519
26.3k
    return Impl.getNumberOfParts(Tp);
1520
26.3k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
74
  unsigned getNumberOfParts(Type *Tp) override {
1519
74
    return Impl.getNumberOfParts(Tp);
1520
74
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getNumberOfParts(llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getNumberOfParts(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
6
  unsigned getNumberOfParts(Type *Tp) override {
1519
6
    return Impl.getNumberOfParts(Tp);
1520
6
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
127
  unsigned getNumberOfParts(Type *Tp) override {
1519
127
    return Impl.getNumberOfParts(Tp);
1520
127
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
6
  unsigned getNumberOfParts(Type *Tp) override {
1519
6
    return Impl.getNumberOfParts(Tp);
1520
6
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getNumberOfParts(llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
102k
  unsigned getNumberOfParts(Type *Tp) override {
1519
102k
    return Impl.getNumberOfParts(Tp);
1520
102k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getNumberOfParts(llvm::Type*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getNumberOfParts(llvm::Type*)
Line
Count
Source
1518
2.08k
  unsigned getNumberOfParts(Type *Tp) override {
1519
2.08k
    return Impl.getNumberOfParts(Tp);
1520
2.08k
  }
1521
  int getAddressComputationCost(Type *Ty, ScalarEvolution *SE,
1522
59.0k
                                const SCEV *Ptr) override {
1523
59.0k
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
59.0k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
51.4k
                                const SCEV *Ptr) override {
1523
51.4k
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
51.4k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
11
                                const SCEV *Ptr) override {
1523
11
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
11
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
1.88k
                                const SCEV *Ptr) override {
1523
1.88k
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
1.88k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
27
                                const SCEV *Ptr) override {
1523
27
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
27
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
27
                                const SCEV *Ptr) override {
1523
27
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
27
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
6
                                const SCEV *Ptr) override {
1523
6
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
6
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
5.38k
                                const SCEV *Ptr) override {
1523
5.38k
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
5.38k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getAddressComputationCost(llvm::Type*, llvm::ScalarEvolution*, llvm::SCEV const*)
Line
Count
Source
1522
302
                                const SCEV *Ptr) override {
1523
302
    return Impl.getAddressComputationCost(Ty, SE, Ptr);
1524
302
  }
1525
377k
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
377k
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
377k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1525
315k
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
315k
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
315k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1525
32
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
32
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
32
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1525
6.34k
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
6.34k
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
6.34k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1525
55.1k
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
55.1k
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
55.1k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getCostOfKeepingLiveOverCall(llvm::ArrayRef<llvm::Type*>)
Line
Count
Source
1525
22
  unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys) override {
1526
22
    return Impl.getCostOfKeepingLiveOverCall(Tys);
1527
22
  }
1528
  bool getTgtMemIntrinsic(IntrinsicInst *Inst,
1529
606k
                          MemIntrinsicInfo &Info) override {
1530
606k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
606k
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
361k
                          MemIntrinsicInfo &Info) override {
1530
361k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
361k
  }
llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
225
                          MemIntrinsicInfo &Info) override {
1530
225
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
225
  }
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
9.76k
                          MemIntrinsicInfo &Info) override {
1530
9.76k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
9.76k
  }
llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
64.3k
                          MemIntrinsicInfo &Info) override {
1530
64.3k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
64.3k
  }
llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
25
                          MemIntrinsicInfo &Info) override {
1530
25
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
25
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
18
                          MemIntrinsicInfo &Info) override {
1530
18
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
18
  }
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
689
                          MemIntrinsicInfo &Info) override {
1530
689
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
689
  }
llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
1.05k
                          MemIntrinsicInfo &Info) override {
1530
1.05k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
1.05k
  }
llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
120
                          MemIntrinsicInfo &Info) override {
1530
120
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
120
  }
llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
48
                          MemIntrinsicInfo &Info) override {
1530
48
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
48
  }
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
168k
                          MemIntrinsicInfo &Info) override {
1530
168k
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
168k
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getTgtMemIntrinsic(llvm::IntrinsicInst*, llvm::MemIntrinsicInfo&)
Line
Count
Source
1529
548
                          MemIntrinsicInfo &Info) override {
1530
548
    return Impl.getTgtMemIntrinsic(Inst, Info);
1531
548
  }
1532
9
  unsigned getAtomicMemIntrinsicMaxElementSize() const override {
1533
9
    return Impl.getAtomicMemIntrinsicMaxElementSize();
1534
9
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Line
Count
Source
1532
8
  unsigned getAtomicMemIntrinsicMaxElementSize() const override {
1533
8
    return Impl.getAtomicMemIntrinsicMaxElementSize();
1534
8
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getAtomicMemIntrinsicMaxElementSize() const
Line
Count
Source
1532
1
  unsigned getAtomicMemIntrinsicMaxElementSize() const override {
1533
1
    return Impl.getAtomicMemIntrinsicMaxElementSize();
1534
1
  }
1535
  Value *getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst,
1536
87
                                           Type *ExpectedType) override {
1537
87
    return Impl.getOrCreateResultFromMemIntrinsic(Inst, ExpectedType);
1538
87
  }
llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Line
Count
Source
1536
78
                                           Type *ExpectedType) override {
1537
78
    return Impl.getOrCreateResultFromMemIntrinsic(Inst, ExpectedType);
1538
78
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Line
Count
Source
1536
9
                                           Type *ExpectedType) override {
1537
9
    return Impl.getOrCreateResultFromMemIntrinsic(Inst, ExpectedType);
1538
9
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
Unexecuted instantiation: TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getOrCreateResultFromMemIntrinsic(llvm::IntrinsicInst*, llvm::Type*)
1539
  Type *getMemcpyLoopLoweringType(LLVMContext &Context, Value *Length,
1540
                                  unsigned SrcAlign,
1541
15
                                  unsigned DestAlign) const override {
1542
15
    return Impl.getMemcpyLoopLoweringType(Context, Length, SrcAlign, DestAlign);
1543
15
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::AArch64TTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::R600TTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::GCNTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::ARMTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::HexagonTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::LanaiTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::BasicTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
llvm::TargetTransformInfo::Model<llvm::NVPTXTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Line
Count
Source
1541
8
                                  unsigned DestAlign) const override {
1542
8
    return Impl.getMemcpyLoopLoweringType(Context, Length, SrcAlign, DestAlign);
1543
8
  }
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::PPCTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::SystemZTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::WebAssemblyTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::X86TTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Unexecuted instantiation: llvm::TargetTransformInfo::Model<llvm::XCoreTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
TargetTransformInfo.cpp:llvm::TargetTransformInfo::Model<(anonymous namespace)::NoTTIImpl>::getMemcpyLoopLoweringType(llvm::LLVMContext&, llvm::Value*, unsigned int, unsigned int) const
Line
Count
Source
1541
7
                                  unsigned DestAlign) const override {
1542
7
    return Impl.getMemcpyLoopLoweringType(Context, Length, SrcAlign, DestAlign);
1543
7
  }
<