Added class MachineCacheInfo.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1229 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp
index 83bd2f3..69c7cfd 100644
--- a/lib/Target/TargetMachine.cpp
+++ b/lib/Target/TargetMachine.cpp
@@ -1,11 +1,13 @@
 //===-- TargetMachine.cpp - General Target Information ---------------------==//
 //
 // This file describes the general parts of a Target machine.
-// This file also implements the InstInfo interface as well...
+// This file also implements MachineInstrInfo and MachineCacheInfo.
 //
 //===----------------------------------------------------------------------===//
 
+#include "llvm/Target/TargetMachine.h"
 #include "llvm/Target/MachineInstrInfo.h"
+#include "llvm/Target/MachineCacheInfo.h"
 #include "llvm/DerivedTypes.h"
 
 //---------------------------------------------------------------------------
@@ -85,3 +87,27 @@
   
   return false;
 }
+
+
+//---------------------------------------------------------------------------
+// class MachineCacheInfo 
+// 
+// Purpose:
+//   Describes properties of the target cache architecture.
+//---------------------------------------------------------------------------
+
+/*ctor*/
+MachineCacheInfo::MachineCacheInfo(const TargetMachine& tgt)
+  : target(tgt)
+{
+  Initialize();
+}
+
+void
+MachineCacheInfo::Initialize()
+{
+  numLevels = 2;
+  cacheLineSizes.push_back(16);  cacheLineSizes.push_back(32); 
+  cacheSizes.push_back(1 << 15); cacheSizes.push_back(1 << 20);
+  cacheAssoc.push_back(1);       cacheAssoc.push_back(4);
+}