[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaSubtarget.cpp Makefile

Chris Lattner lattner at cs.uiuc.edu
Sun Oct 23 15:15:45 PDT 2005



Changes in directory llvm/lib/Target/Alpha:

AlphaSubtarget.cpp updated: 1.3 -> 1.4
Makefile updated: 1.3 -> 1.4
---
Log message:

Autogen subtarget information from .td files.


---
Diffs of the changes:  (+12 -35)

 AlphaSubtarget.cpp |   44 ++++++++++----------------------------------
 Makefile           |    3 ++-
 2 files changed, 12 insertions(+), 35 deletions(-)


Index: llvm/lib/Target/Alpha/AlphaSubtarget.cpp
diff -u llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.3 llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.4
--- llvm/lib/Target/Alpha/AlphaSubtarget.cpp:1.3	Sun Oct  2 02:13:52 2005
+++ llvm/lib/Target/Alpha/AlphaSubtarget.cpp	Sun Oct 23 17:15:34 2005
@@ -16,46 +16,22 @@
 #include "llvm/Module.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Target/SubtargetFeature.h"
-#include "llvm/Support/Debug.h"
-
+#include "AlphaGenSubtarget.inc"
 using namespace llvm;
 
-enum AlphaFeature {
-  AlphaFeatureCIX   = 1 << 0,
-  AlphaFeatureFIX = 1 << 1,
-};
 
-/// Sorted (by key) array of values for CPU subtype.
-static const SubtargetFeatureKV AlphaSubTypeKV[] = {
-  { "ev56"    , "Select the Alpha EV56 processor", 0 },
-  { "ev6"    , "Select the Alpha EV6 processor", AlphaFeatureFIX },
-  { "ev67"    , "Select the Alpha EV67 processor", AlphaFeatureFIX | AlphaFeatureCIX },
-  { "generic", "Select instructions for a generic Alpha processor (EV56)", 0 },
-  { "pca56"    , "Select the Alpha PCA56 processor", 0 },
+enum {
+  FeatureKVSize = sizeof(FeatureKV) / sizeof(SubtargetFeatureKV),
+  SubTypeKVSize = sizeof(SubTypeKV) / sizeof(SubtargetFeatureKV)
 };
 
-/// Length of AlphaSubTypeKV.
-static const unsigned AlphaSubTypeKVSize = sizeof(AlphaSubTypeKV)
-                                             / sizeof(SubtargetFeatureKV);
-
-/// Sorted (by key) array of values for CPU features.
-static SubtargetFeatureKV AlphaFeatureKV[] = {
-  { "CIX", "Should CIX extentions be used" , AlphaFeatureCIX },
-  { "FIX"  , "Should FIX extentions be used"  , AlphaFeatureFIX },
- };
-/// Length of AlphaFeatureKV.
-static const unsigned AlphaFeatureKVSize = sizeof(AlphaFeatureKV)
-                                          / sizeof(SubtargetFeatureKV);
-
 AlphaSubtarget::AlphaSubtarget(const Module &M, const std::string &FS)
-  :HasF2I(false), HasCT(false)
-{
+  : HasF2I(false), HasCT(false) {
   std::string CPU = "generic";
   uint32_t Bits =
-  SubtargetFeatures::Parse(FS, CPU,
-                           AlphaSubTypeKV, AlphaSubTypeKVSize,
-                           AlphaFeatureKV, AlphaFeatureKVSize);
-  HasF2I = (Bits & AlphaFeatureFIX) != 0;
-  HasCT  = (Bits & AlphaFeatureCIX) != 0;
-
+    SubtargetFeatures::Parse(FS, CPU,
+                             SubTypeKV, SubTypeKVSize,
+                             FeatureKV, FeatureKVSize);
+  HasF2I = (Bits & FeatureFIX) != 0;
+  HasCT  = (Bits & FeatureCIX) != 0;
 }


Index: llvm/lib/Target/Alpha/Makefile
diff -u llvm/lib/Target/Alpha/Makefile:1.3 llvm/lib/Target/Alpha/Makefile:1.4
--- llvm/lib/Target/Alpha/Makefile:1.3	Wed Oct 19 19:28:31 2005
+++ llvm/lib/Target/Alpha/Makefile	Sun Oct 23 17:15:34 2005
@@ -14,6 +14,7 @@
 BUILT_SOURCES = AlphaGenRegisterInfo.h.inc AlphaGenRegisterNames.inc \
                 AlphaGenRegisterInfo.inc AlphaGenInstrNames.inc \
                 AlphaGenInstrInfo.inc AlphaGenCodeEmitter.inc \
-                AlphaGenAsmWriter.inc AlphaGenDAGISel.inc
+                AlphaGenAsmWriter.inc AlphaGenDAGISel.inc \
+                AlphaGenSubtarget.inc
 
 include $(LEVEL)/Makefile.common






More information about the llvm-commits mailing list