17#include "llvm/Config/llvm-config.h"
30 S.
split(Tmp,
',', -1,
false );
31 V.reserve(Tmp.
size());
33 V.push_back(std::string(
T));
46 Features.insert(Features.cend(), OtherFeatures.
begin(), OtherFeatures.
end());
51 Split(Features, Initial);
55 return join(Features.begin(), Features.end(),
",");
59 for (
const auto &
F : Features)
64#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 file defines the SmallVector class.
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
This is a 'vector' (really, a variable-sized array), optimized for the case when the array is small.
StringRef - Represent a constant reference to a string, i.e.
std::pair< StringRef, StringRef > split(char Separator) const
Split into two substrings around the first occurrence of a separator character.
static void Split(std::vector< std::string > &V, StringRef S)
Splits a string of comma separated items in to a vector of strings.
void getDefaultSubtargetFeatures(const Triple &Triple)
Adds the default features for the specified target triple.
static bool hasFlag(StringRef Feature)
Determine if a feature has a flag; '+' or '-'.
void print(raw_ostream &OS) const
Prints feature string.
std::string getString() const
Returns features as a string.
SubtargetFeatures(StringRef Initial="")
void AddFeature(StringRef String, bool Enable=true)
Adds Features.
void addFeaturesVector(const ArrayRef< std::string > OtherFeatures)
Triple - Helper class for working with autoconf configuration names.
ArchType getArch() const
Get the parsed architecture type of this triple.
VendorType getVendor() const
Get the parsed vendor type of this triple.
This class implements an extremely fast bulk output stream that can only output to a stream.
This is an optimization pass for GlobalISel generic memory operations.
raw_ostream & dbgs()
dbgs() - This returns a reference to a raw_ostream for debugging messages.