LLVM  12.0.0git
Public Member Functions | Static Public Member Functions | List of all members
llvm::MemOp Struct Reference

#include "llvm/CodeGen/TargetLowering.h"

Public Member Functions

uint64_t size () const
 
Align getDstAlign () const
 
bool isFixedDstAlign () const
 
bool allowOverlap () const
 
bool isMemset () const
 
bool isMemcpy () const
 
bool isMemcpyWithFixedDstAlign () const
 
bool isZeroMemset () const
 
bool isMemcpyStrSrc () const
 
Align getSrcAlign () const
 
bool isSrcAligned (Align AlignCheck) const
 
bool isDstAligned (Align AlignCheck) const
 
bool isAligned (Align AlignCheck) const
 

Static Public Member Functions

static MemOp Copy (uint64_t Size, bool DstAlignCanChange, Align DstAlign, Align SrcAlign, bool IsVolatile, bool MemcpyStrSrc=false)
 
static MemOp Set (uint64_t Size, bool DstAlignCanChange, Align DstAlign, bool IsZeroMemset, bool IsVolatile)
 

Detailed Description

Definition at line 108 of file TargetLowering.h.

Member Function Documentation

◆ allowOverlap()

bool llvm::MemOp::allowOverlap ( ) const
inline

◆ Copy()

static MemOp llvm::MemOp::Copy ( uint64_t  Size,
bool  DstAlignCanChange,
Align  DstAlign,
Align  SrcAlign,
bool  IsVolatile,
bool  MemcpyStrSrc = false 
)
inlinestatic

◆ getDstAlign()

Align llvm::MemOp::getDstAlign ( ) const
inline

◆ getSrcAlign()

Align llvm::MemOp::getSrcAlign ( ) const
inline

◆ isAligned()

bool llvm::MemOp::isAligned ( Align  AlignCheck) const
inline

◆ isDstAligned()

bool llvm::MemOp::isDstAligned ( Align  AlignCheck) const
inline

◆ isFixedDstAlign()

bool llvm::MemOp::isFixedDstAlign ( ) const
inline

◆ isMemcpy()

bool llvm::MemOp::isMemcpy ( ) const
inline

◆ isMemcpyStrSrc()

bool llvm::MemOp::isMemcpyStrSrc ( ) const
inline

Definition at line 167 of file TargetLowering.h.

References assert().

Referenced by llvm::X86TargetLowering::getOptimalMemOpType().

◆ isMemcpyWithFixedDstAlign()

bool llvm::MemOp::isMemcpyWithFixedDstAlign ( ) const
inline

◆ isMemset()

bool llvm::MemOp::isMemset ( ) const
inline

◆ isSrcAligned()

bool llvm::MemOp::isSrcAligned ( Align  AlignCheck) const
inline

Definition at line 175 of file TargetLowering.h.

References llvm::isAligned(), and llvm::Align::value().

◆ isZeroMemset()

bool llvm::MemOp::isZeroMemset ( ) const
inline

◆ Set()

static MemOp llvm::MemOp::Set ( uint64_t  Size,
bool  DstAlignCanChange,
Align  DstAlign,
bool  IsZeroMemset,
bool  IsVolatile 
)
inlinestatic

◆ size()

uint64_t llvm::MemOp::size ( ) const
inline

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