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
- private RISCVISAInfo(unsigned int XLen)
- public RISCVISAInfo(const llvm::RISCVISAInfo &)
- private void addExtension(llvm::StringRef ExtName, unsigned int MajorVersion, unsigned int MinorVersion)
- private llvm::Error checkDependency()
- public static bool compareExtension(const std::string & LHS, const std::string & RHS)
- public llvm::StringRef computeDefaultABI() const
- public const llvm::RISCVISAInfo::OrderedExtensionMap & getExtensions() const
- public unsigned int getFLen() const
- public unsigned int getMaxELen() const
- public unsigned int getMaxELenFp() const
- public unsigned int getMinVLen() const
- public unsigned int getXLen() const
- public bool hasExtension(llvm::StringRef Ext) const
- public static bool isSupportedExtension(llvm::StringRef Ext)
- public static bool isSupportedExtension(llvm::StringRef Ext, unsigned int MajorVersion, unsigned int MinorVersion)
- public static bool isSupportedExtensionFeature(llvm::StringRef Ext)
- public static llvm::Expected<std::unique_ptr<RISCVISAInfo>> parseArchString(llvm::StringRef Arch, bool EnableExperimentalExtension, bool ExperimentalExtensionVersionCheck = true)
- public static llvm::Expected<std::unique_ptr<RISCVISAInfo>> parseFeatures(unsigned int XLen, const std::vector<std::string> & Features)
- private static llvm::Expected<std::unique_ptr<RISCVISAInfo>> postProcessAndChecking(std::unique_ptr<RISCVISAInfo> && ISAInfo)
- public std::vector<std::string> toFeatureVector() const
- public void toFeatures(std::vector<StringRef> & Features, std::function<StringRef (const Twine &)> StrAlloc) const
- public std::string toString() const
- private void updateCombination()
- private void updateFLen()
- private void updateImplication()
- private void updateMaxELen()
- private void updateMinVLen()
Methods
¶RISCVISAInfo(unsigned int XLen)
RISCVISAInfo(unsigned int XLen)
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:77
Parameters
- unsigned int XLen
¶RISCVISAInfo(const llvm::RISCVISAInfo&)
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)
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()
llvm::Error checkDependency()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:90
¶static bool compareExtension(
const std::string& LHS,
const std::string& RHS)
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
llvm::StringRef computeDefaultABI() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:69
¶const llvm::RISCVISAInfo::OrderedExtensionMap&
getExtensions() const
const llvm::RISCVISAInfo::OrderedExtensionMap&
getExtensions() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:58
¶unsigned int getFLen() const
unsigned int getFLen() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:61
¶unsigned int getMaxELen() const
unsigned int getMaxELen() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:63
¶unsigned int getMaxELenFp() const
unsigned int getMaxELenFp() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:64
¶unsigned int getMinVLen() const
unsigned int getMinVLen() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:62
¶unsigned int getXLen() const
unsigned int getXLen() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:60
¶bool hasExtension(llvm::StringRef Ext) const
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)
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)
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)
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)
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)
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)
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
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
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
std::string toString() const
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:67
¶void updateCombination()
void updateCombination()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:93
¶void updateFLen()
void updateFLen()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:94
¶void updateImplication()
void updateImplication()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:92
¶void updateMaxELen()
void updateMaxELen()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:96
¶void updateMinVLen()
void updateMinVLen()
Declared at: llvm/include/llvm/Support/RISCVISAInfo.h:95