Lines Matching full:feature
35 /// For each feature that is (transitively) implied by this feature, set it.
47 /// For each feature that (transitively) implies this feature, clear it.
59 static void ApplyFeatureFlag(FeatureBitset &Bits, StringRef Feature,
61 assert(SubtargetFeatures::hasFlag(Feature) &&
62 "Feature flags should start with '+' or '-'");
64 // Find feature in table.
66 Find(SubtargetFeatures::StripFlag(Feature), FeatureTable);
69 // Enable/disable feature in bits
70 if (SubtargetFeatures::isEnabled(Feature)) {
73 // For each feature that this implies, set it.
78 // For each feature that implies this, clear it.
82 errs() << "'" << Feature << "' is not a recognized feature for this target"
83 << " (ignoring feature)\n";
96 /// Display help for feature and mcpu choices.
106 // Determine the length of the longest CPU and Feature entries.
117 // Print the Feature table.
119 for (auto &Feature : FeatTable)
120 errs() << format(" %-*s - %s.\n", MaxFeatLen, Feature.Key, Feature.Desc);
123 errs() << "Use +feature to enable a feature, or -feature to disable it.\n"
174 // Set the features implied by this CPU feature, if any.
187 // Set the features implied by this CPU feature, if any.
195 // Iterate through each feature
196 for (const std::string &Feature : Features.getFeatures()) {
198 if (Feature == "+help")
200 else if (Feature == "+cpuhelp")
203 ApplyFeatureFlag(Bits, Feature, ProcFeatures);
268 FeatureBitset MCSubtargetInfo::ToggleFeature(StringRef Feature) {
269 // Find feature in table.
271 Find(SubtargetFeatures::StripFlag(Feature), ProcFeatures);
276 // For each feature that implies this, clear it.
281 // For each feature that this implies, set it.
286 errs() << "'" << Feature << "' is not a recognized feature for this target"
287 << " (ignoring feature)\n";