class RISCVISAInfo

Declaration

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

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:26

Member Variables

private unsigned int XLen
private unsigned int FLen
private unsigned int MinVLen
private unsigned int MaxELen
private unsigned int MaxELenFp
private llvm::RISCVISAInfo::OrderedExtensionMap Exts

Method Overview

Methods

RISCVISAInfo(unsigned int XLen)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:77

Parameters

unsigned int XLen

RISCVISAInfo(const llvm::RISCVISAInfo&)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:28

Parameters

const llvm::RISCVISAInfo&

void addExtension(llvm::StringRef ExtName,
                  unsigned int MajorVersion,
                  unsigned int MinorVersion)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:87

Parameters

llvm::StringRef ExtName
unsigned int MajorVersion
unsigned int MinorVersion

llvm::Error checkDependency()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:90

static bool compareExtension(
    const std::string& LHS,
    const std::string& RHS)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:31

Parameters

const std::string& LHS
const std::string& RHS

llvm::StringRef computeDefaultABI() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:69

const llvm::RISCVISAInfo::OrderedExtensionMap&
getExtensions() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:58

unsigned int getFLen() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:61

unsigned int getMaxELen() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:63

unsigned int getMaxELenFp() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:64

unsigned int getMinVLen() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:62

unsigned int getXLen() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:60

bool hasExtension(llvm::StringRef Ext) const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:66

Parameters

llvm::StringRef Ext

static bool isSupportedExtension(
    llvm::StringRef Ext)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:72

Parameters

llvm::StringRef Ext

static bool isSupportedExtension(
    llvm::StringRef Ext,
    unsigned int MajorVersion,
    unsigned int MinorVersion)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:73

Parameters

llvm::StringRef Ext
unsigned int MajorVersion
unsigned int MinorVersion

static bool isSupportedExtensionFeature(
    llvm::StringRef Ext)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:71

Parameters

llvm::StringRef Ext

static llvm::Expected<
    std::unique_ptr<RISCVISAInfo>>
parseArchString(
    llvm::StringRef Arch,
    bool EnableExperimentalExtension,
    bool ExperimentalExtensionVersionCheck = true)

Description

Parse RISCV ISA info from arch string.

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:47

Parameters

llvm::StringRef Arch
bool EnableExperimentalExtension
bool ExperimentalExtensionVersionCheck = true

static llvm::Expected<
    std::unique_ptr<RISCVISAInfo>>
parseFeatures(
    unsigned int XLen,
    const std::vector<std::string>& Features)

Description

Parse RISCV ISA info from feature vector.

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:52

Parameters

unsigned int XLen
const std::vector<std::string>& Features

static llvm::Expected<
    std::unique_ptr<RISCVISAInfo>>
postProcessAndChecking(
    std::unique_ptr<RISCVISAInfo>&& ISAInfo)

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:99

Parameters

std::unique_ptr<RISCVISAInfo>&& ISAInfo

std::vector<std::string> toFeatureVector() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:68

void toFeatures(
    std::vector<StringRef>& Features,
    std::function<StringRef(const Twine&)>
        StrAlloc) const

Description

Convert RISCV ISA info to a feature vector.

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:55

Parameters

std::vector<StringRef>& Features
std::function<StringRef(const Twine&)> StrAlloc

std::string toString() const

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:67

void updateCombination()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:93

void updateFLen()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:94

void updateImplication()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:92

void updateMaxELen()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:96

void updateMinVLen()

Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:95