Go to the documentation of this file.
18 #include "llvm/Config/llvm-config.h"
31 S.split(Tmp,
',', -1,
false );
32 V.reserve(Tmp.size());
34 V.push_back(std::string(
T));
41 Features.push_back(
hasFlag(String) ? String.lower()
42 : (
Enable ?
"+" :
"-") + String.lower());
47 Split(Features, Initial);
51 return join(Features.begin(), Features.end(),
",");
55 for (
auto &
F : Features)
60 #if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)
#define LLVM_DUMP_METHOD
Mark debug helper function definitions like dump() that should not be stripped from debug builds.
This is an optimization pass for GlobalISel generic memory operations.
void AddFeature(StringRef String, bool Enable=true)
Adds Features.
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
Triple - Helper class for working with autoconf configuration names.
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.
static void Split(std::vector< std::string > &V, StringRef S)
Splits a string of comma separated items in to a vector of strings.
This class implements an extremely fast bulk output stream that can only output to a stream.
ArchType getArch() const
Get the parsed architecture type of this triple.
void getDefaultSubtargetFeatures(const Triple &Triple)
Adds the default features for the specified target triple.
SubtargetFeatures(StringRef Initial="")
std::string getString() const
Returns features as a string.
StringRef - Represent a constant reference to a string, i.e.
add sub stmia L5 ldr r0 bl L_printf $stub Instead of a and a wouldn t it be better to do three moves *Return an aggregate type is even return S
static bool hasFlag(StringRef Feature)
Determine if a feature has a flag; '+' or '-'.
void print(raw_ostream &OS) const
Prints feature string.
VendorType getVendor() const
Get the parsed vendor type of this triple.