Remove noncopyableV base classes, as they were confusing the doxygen documentation,

making it harder to read.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6575 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2003-06-03 15:28:40 +00:00
parent e14ccafe25
commit 17035c0edf
4 changed files with 19 additions and 10 deletions

View File

@ -10,8 +10,10 @@
#include "Support/DataTypes.h"
class TargetMachine;
struct TargetCacheInfo : public NonCopyableV {
struct TargetCacheInfo {
const TargetMachine ⌖
TargetCacheInfo(const TargetCacheInfo&); // DO NOT IMPLEMENT
void operator=(const TargetCacheInfo&); // DO NOT IMPLEMENT
protected:
unsigned int numLevels;
std::vector<unsigned short> cacheLineSizes;
@ -22,6 +24,7 @@ public:
TargetCacheInfo(const TargetMachine& tgt) : target(tgt) {
Initialize();
}
virtual ~TargetCacheInfo() {}
// Default parameters are:
// NumLevels = 2

View File

@ -28,10 +28,12 @@ class Pass;
/// the target machine. All target-specific information should be accessible
/// through this interface.
///
class TargetMachine : public NonCopyableV {
class TargetMachine {
const std::string Name;
const TargetData DataLayout; // Calculates type size & alignment
const TargetData DataLayout; // Calculates type size & alignment
TargetMachine(const TargetMachine&); // DO NOT IMPLEMENT
void operator=(const TargetMachine&); // DO NOT IMPLEMENT
protected:
TargetMachine(const std::string &name, // Can only create subclasses...
bool LittleEndian = false,

View File

@ -1,21 +1,24 @@
//===-- llvm/Target/TargetOptInfo.h ------------------------------*- C++ -*-==//
//
// FIXME: ADD A COMMENT DESCRIBING THIS FILE!
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_TARGET_TARGETOPTINFO_H
#define LLVM_TARGET_TARGETOPTINFO_H
#include "Support/DataTypes.h"
class MachineInstr;
class TargetMachine;
struct TargetOptInfo : public NonCopyableV {
struct TargetOptInfo {
const TargetMachine &target;
TargetOptInfo(const TargetOptInfo &); // DO NOT IMPLEMENT
void operator=(const TargetOptInfo &); // DO NOT IMPLEMENT
public:
TargetOptInfo(const TargetMachine& tgt): target(tgt) { }
TargetOptInfo(const TargetMachine &TM) : target(TM) { }
virtual bool IsUselessCopy (const MachineInstr* MI) const = 0;
virtual bool IsUselessCopy(const MachineInstr* MI) const = 0;
};
#endif

View File

@ -8,7 +8,6 @@
#ifndef LLVM_TARGET_TARGETREGINFO_H
#define LLVM_TARGET_TARGETREGINFO_H
#include "Support/NonCopyable.h"
#include "Support/hash_map"
#include <string>
@ -56,7 +55,9 @@ public:
//---------------------------------------------------------------------------
/// TargetRegInfo - Interface to register info of target machine
///
class TargetRegInfo : public NonCopyableV {
class TargetRegInfo {
TargetRegInfo(const TargetRegInfo &); // DO NOT IMPLEMENT
void operator=(const TargetRegInfo &); // DO NOT IMPLEMENT
protected:
// A vector of all machine register classes
//
@ -71,7 +72,7 @@ public:
static int getInvalidRegNum() { return -1; }
TargetRegInfo(const TargetMachine& tgt) : target(tgt) { }
~TargetRegInfo() {
virtual ~TargetRegInfo() {
for (unsigned i = 0, e = MachineRegClassArr.size(); i != e; ++i)
delete MachineRegClassArr[i];
}