From 4a48c339d6fa7ea5e75a0952f4fc4c79ff2f01e7 Mon Sep 17 00:00:00 2001 From: "Vikram S. Adve" Date: Fri, 9 Nov 2001 02:20:18 +0000 Subject: [PATCH] Added class MachineCacheInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1229 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/TargetMachine.cpp | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp index 83bd2f3a3d8..69c7cfd4283 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 @@ MachineInstrInfo::constantFitsInImmedField(MachineOpCode opCode, 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); +}