LLVM 17.0.0git
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | List of all members
llvm::MemoryOpRemark Struct Reference

#include "llvm/Transforms/Utils/MemoryOpRemark.h"

Inheritance diagram for llvm::MemoryOpRemark:
Inheritance graph
Collaboration diagram for llvm::MemoryOpRemark:
Collaboration graph

Public Member Functions

 MemoryOpRemark (OptimizationRemarkEmitter &ORE, StringRef RemarkPass, const DataLayout &DL, const TargetLibraryInfo &TLI)
virtual ~MemoryOpRemark ()
void visit (const Instruction *I)

Static Public Member Functions

static bool canHandle (const Instruction *I, const TargetLibraryInfo &TLI)

Public Attributes

StringRef RemarkPass
const DataLayoutDL
const TargetLibraryInfoTLI

Protected Types

enum  RemarkKind { RK_Store , RK_Unknown , RK_IntrinsicCall , RK_Call }

Protected Member Functions

virtual std::string explainSource (StringRef Type) const
virtual StringRef remarkName (RemarkKind RK) const
virtual DiagnosticKind diagnosticKind () const

Detailed Description

Definition at line 35 of file MemoryOpRemark.h.

Member Enumeration Documentation

◆ RemarkKind


Definition at line 55 of file MemoryOpRemark.h.

Constructor & Destructor Documentation

◆ MemoryOpRemark()

llvm::MemoryOpRemark::MemoryOpRemark ( OptimizationRemarkEmitter ORE,
StringRef  RemarkPass,
const DataLayout DL,
const TargetLibraryInfo TLI 

Definition at line 41 of file MemoryOpRemark.h.

◆ ~MemoryOpRemark()

MemoryOpRemark::~MemoryOpRemark ( )

Member Function Documentation

◆ canHandle()

bool MemoryOpRemark::canHandle ( const Instruction I,
const TargetLibraryInfo TLI 
true iff the instruction is understood by MemoryOpRemark.

Definition at line 26 of file MemoryOpRemark.cpp.

References llvm::TargetLibraryInfo::getLibFunc(), llvm::TargetLibraryInfo::has(), I, and TLI.

◆ diagnosticKind()

virtual DiagnosticKind llvm::MemoryOpRemark::diagnosticKind ( ) const

Reimplemented in llvm::AutoInitRemark.

Definition at line 58 of file MemoryOpRemark.h.

References llvm::DK_OptimizationRemarkAnalysis.

◆ explainSource()

std::string MemoryOpRemark::explainSource ( StringRef  Type) const

Reimplemented in llvm::AutoInitRemark.

Definition at line 109 of file MemoryOpRemark.cpp.

◆ remarkName()

StringRef MemoryOpRemark::remarkName ( RemarkKind  RK) const

Reimplemented in llvm::AutoInitRemark.

Definition at line 113 of file MemoryOpRemark.cpp.

References llvm_unreachable, RK_Call, RK_IntrinsicCall, RK_Store, and RK_Unknown.

◆ visit()

void MemoryOpRemark::visit ( const Instruction I)

Definition at line 78 of file MemoryOpRemark.cpp.

References I, and SI.

Member Data Documentation

◆ DL

const DataLayout& llvm::MemoryOpRemark::DL

Definition at line 38 of file MemoryOpRemark.h.


OptimizationRemarkEmitter& llvm::MemoryOpRemark::ORE

Definition at line 36 of file MemoryOpRemark.h.

◆ RemarkPass

StringRef llvm::MemoryOpRemark::RemarkPass

Definition at line 37 of file MemoryOpRemark.h.


const TargetLibraryInfo& llvm::MemoryOpRemark::TLI

Definition at line 39 of file MemoryOpRemark.h.

Referenced by canHandle().

The documentation for this struct was generated from the following files: