@@ -459,6 +459,52 @@ class DwarfRegAlias<Register reg> {
459
459
Register DwarfAlias = reg;
460
460
}
461
461
462
+ //===----------------------------------------------------------------------===//
463
+ // SubtargetFeature - A characteristic of the chip set.
464
+ //
465
+ class SubtargetFeature<string n, string f, string v, string d,
466
+ list<SubtargetFeature> i = []> {
467
+ // Name - Feature name. Used by command line (-mattr=) to determine the
468
+ // appropriate target chip.
469
+ //
470
+ string Name = n;
471
+
472
+ // FieldName - Field in XXXSubtarget to be set by feature.
473
+ //
474
+ string FieldName = f;
475
+
476
+ // Value - Value the XXXSubtarget field to be set to by feature.
477
+ //
478
+ // A value of "true" or "false" implies the field is a bool. Otherwise,
479
+ // it is assumed to be an integer. the integer value may be the name of an
480
+ // enum constant. If multiple features use the same integer field, the
481
+ // field will be set to the maximum value of all enabled features that
482
+ // share the field.
483
+ //
484
+ string Value = v;
485
+
486
+ // Desc - Feature description. Used by command line (-mattr=) to display help
487
+ // information.
488
+ //
489
+ string Desc = d;
490
+
491
+ // Implies - Features that this feature implies are present. If one of those
492
+ // features isn't set, then this one shouldn't be set either.
493
+ //
494
+ list<SubtargetFeature> Implies = i;
495
+ }
496
+
497
+ /// Specifies a Subtarget feature that this instruction is deprecated on.
498
+ class Deprecated<SubtargetFeature dep> {
499
+ SubtargetFeature DeprecatedFeatureMask = dep;
500
+ }
501
+
502
+ /// A custom predicate used to determine if an instruction is
503
+ /// deprecated or not.
504
+ class ComplexDeprecationPredicate<string dep> {
505
+ string ComplexDeprecationPredicate = dep;
506
+ }
507
+
462
508
//===----------------------------------------------------------------------===//
463
509
// Pull in the common support for MCPredicate (portable scheduling predicates).
464
510
//
@@ -1680,52 +1726,6 @@ class Target {
1680
1726
int AllowRegisterRenaming = 0;
1681
1727
}
1682
1728
1683
- //===----------------------------------------------------------------------===//
1684
- // SubtargetFeature - A characteristic of the chip set.
1685
- //
1686
- class SubtargetFeature<string n, string f, string v, string d,
1687
- list<SubtargetFeature> i = []> {
1688
- // Name - Feature name. Used by command line (-mattr=) to determine the
1689
- // appropriate target chip.
1690
- //
1691
- string Name = n;
1692
-
1693
- // FieldName - Field in XXXSubtarget to be set by feature.
1694
- //
1695
- string FieldName = f;
1696
-
1697
- // Value - Value the XXXSubtarget field to be set to by feature.
1698
- //
1699
- // A value of "true" or "false" implies the field is a bool. Otherwise,
1700
- // it is assumed to be an integer. the integer value may be the name of an
1701
- // enum constant. If multiple features use the same integer field, the
1702
- // field will be set to the maximum value of all enabled features that
1703
- // share the field.
1704
- //
1705
- string Value = v;
1706
-
1707
- // Desc - Feature description. Used by command line (-mattr=) to display help
1708
- // information.
1709
- //
1710
- string Desc = d;
1711
-
1712
- // Implies - Features that this feature implies are present. If one of those
1713
- // features isn't set, then this one shouldn't be set either.
1714
- //
1715
- list<SubtargetFeature> Implies = i;
1716
- }
1717
-
1718
- /// Specifies a Subtarget feature that this instruction is deprecated on.
1719
- class Deprecated<SubtargetFeature dep> {
1720
- SubtargetFeature DeprecatedFeatureMask = dep;
1721
- }
1722
-
1723
- /// A custom predicate used to determine if an instruction is
1724
- /// deprecated or not.
1725
- class ComplexDeprecationPredicate<string dep> {
1726
- string ComplexDeprecationPredicate = dep;
1727
- }
1728
-
1729
1729
//===----------------------------------------------------------------------===//
1730
1730
// Processor chip sets - These values represent each of the chip sets supported
1731
1731
// by the scheduler. Each Processor definition requires corresponding
0 commit comments