class RVVIntrinsic

Declaration

class RVVIntrinsic { /* full declaration omitted */ };

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:285

Member Variables

private std::string BuiltinName
private std::string Name
private std::string OverloadedName
private std::string IRName
private bool IsMasked
private bool HasVL
private clang::RISCV::PolicyScheme Scheme
private bool HasUnMaskedOverloaded
private bool HasBuiltinAlias
private std::string ManualCodegen
private clang::RISCV::RVVTypePtr OutputType
private clang::RISCV::RVVTypes InputTypes
private std::vector<int64_t> IntrinsicTypes
private unsigned int NF = 1

Method Overview

  • public RVVIntrinsic(llvm::StringRef Name, llvm::StringRef Suffix, llvm::StringRef OverloadedName, llvm::StringRef OverloadedSuffix, llvm::StringRef IRName, bool IsMasked, bool HasMaskedOffOperand, bool HasVL, clang::RISCV::PolicyScheme Scheme, bool HasUnMaskedOverloaded, bool HasBuiltinAlias, llvm::StringRef ManualCodegen, const clang::RISCV::RVVTypes & Types, const std::vector<int64_t> & IntrinsicTypes, const std::vector<llvm::StringRef> & RequiredFeatures, unsigned int NF)
  • public static llvm::SmallVector<PrototypeDescriptor> computeBuiltinTypes(llvm::ArrayRef<PrototypeDescriptor> Prototype, bool IsMasked, bool HasMaskedOffOperand, bool HasVL, unsigned int NF)
  • public llvm::StringRef getBuiltinName() const
  • public std::string getBuiltinTypeStr() const
  • public llvm::StringRef getIRName() const
  • public const clang::RISCV::RVVTypes & getInputTypes() const
  • public const std::vector<int64_t> & getIntrinsicTypes() const
  • public llvm::StringRef getManualCodegen() const
  • public unsigned int getNF() const
  • public llvm::StringRef getName() const
  • public clang::RISCV::RVVTypePtr getOutputType() const
  • public llvm::StringRef getOverloadedName() const
  • public clang::RISCV::PolicyScheme getPolicyScheme() const
  • public static std::string getSuffixStr(clang::RISCV::BasicType Type, int Log2LMUL, llvm::ArrayRef<PrototypeDescriptor> PrototypeDescriptors)
  • public bool hasBuiltinAlias() const
  • public bool hasManualCodegen() const
  • public bool hasPassthruOperand() const
  • public bool hasPolicy() const
  • public bool hasPolicyOperand() const
  • public bool hasUnMaskedOverloaded() const
  • public bool hasVL() const
  • public bool isMasked() const
  • public ~RVVIntrinsic()

Methods

RVVIntrinsic(
    llvm::StringRef Name,
    llvm::StringRef Suffix,
    llvm::StringRef OverloadedName,
    llvm::StringRef OverloadedSuffix,
    llvm::StringRef IRName,
    bool IsMasked,
    bool HasMaskedOffOperand,
    bool HasVL,
    clang::RISCV::PolicyScheme Scheme,
    bool HasUnMaskedOverloaded,
    bool HasBuiltinAlias,
    llvm::StringRef ManualCodegen,
    const clang::RISCV::RVVTypes& Types,
    const std::vector<int64_t>& IntrinsicTypes,
    const std::vector<llvm::StringRef>&
        RequiredFeatures,
    unsigned int NF)

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:306

Parameters

llvm::StringRef Name
llvm::StringRef Suffix
llvm::StringRef OverloadedName
llvm::StringRef OverloadedSuffix
llvm::StringRef IRName
bool IsMasked
bool HasMaskedOffOperand
bool HasVL
clang::RISCV::PolicyScheme Scheme
bool HasUnMaskedOverloaded
bool HasBuiltinAlias
llvm::StringRef ManualCodegen
const clang::RISCV::RVVTypes& Types
const std::vector<int64_t>& IntrinsicTypes
const std::vector<llvm::StringRef>& RequiredFeatures
unsigned int NF

static llvm::SmallVector<PrototypeDescriptor>
computeBuiltinTypes(
    llvm::ArrayRef<PrototypeDescriptor> Prototype,
    bool IsMasked,
    bool HasMaskedOffOperand,
    bool HasVL,
    unsigned int NF)

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:346

Parameters

llvm::ArrayRef<PrototypeDescriptor> Prototype
bool IsMasked
bool HasMaskedOffOperand
bool HasVL
unsigned int NF

llvm::StringRef getBuiltinName() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:319

std::string getBuiltinTypeStr() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:339

llvm::StringRef getIRName() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:330

const clang::RISCV::RVVTypes& getInputTypes()
    const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:318

const std::vector<int64_t>& getIntrinsicTypes()
    const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:334

llvm::StringRef getManualCodegen() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:331

unsigned int getNF() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:333

llvm::StringRef getName() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:320

clang::RISCV::RVVTypePtr getOutputType() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:317

llvm::StringRef getOverloadedName() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:321

clang::RISCV::PolicyScheme getPolicyScheme() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:332

static std::string getSuffixStr(
    clang::RISCV::BasicType Type,
    int Log2LMUL,
    llvm::ArrayRef<PrototypeDescriptor>
        PrototypeDescriptors)

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:342

Parameters

clang::RISCV::BasicType Type
int Log2LMUL
llvm::ArrayRef<PrototypeDescriptor> PrototypeDescriptors

bool hasBuiltinAlias() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:327

bool hasManualCodegen() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:328

bool hasPassthruOperand() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:324

bool hasPolicy() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:323

bool hasPolicyOperand() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:325

bool hasUnMaskedOverloaded() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:326

bool hasVL() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:322

bool isMasked() const

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:329

~RVVIntrinsic()

Declared at: clang/include/clang/Support/RISCVVIntrinsicUtils.h:315