blob: fde8f44669ad04704b680b5b02b9f4f4e9cb9b7e [file] [log] [blame]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001//==-- llvm/Target/TargetSubtarget.h - Target Information --------*- C++ -*-==//
2//
3// The LLVM Compiler Infrastructure
4//
Chris Lattner84e66db2007-12-29 19:59:42 +00005// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
Dan Gohmanf17a25c2007-07-18 16:29:46 +00007//
8//===----------------------------------------------------------------------===//
9//
10// This file describes the subtarget options of a Target machine.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_TARGET_TARGETSUBTARGET_H
15#define LLVM_TARGET_TARGETSUBTARGET_H
16
17namespace llvm {
18
19//===----------------------------------------------------------------------===//
20///
21/// TargetSubtarget - Generic base class for all target subtargets. All
22/// Target-specific options that control code generation and printing should
23/// be exposed through a TargetSubtarget-derived class.
24///
25class TargetSubtarget {
26 TargetSubtarget(const TargetSubtarget&); // DO NOT IMPLEMENT
27 void operator=(const TargetSubtarget&); // DO NOT IMPLEMENT
28protected: // Can only create subclasses...
29 TargetSubtarget();
30public:
Dan Gohmanf17a25c2007-07-18 16:29:46 +000031 virtual ~TargetSubtarget();
32};
33
34} // End llvm namespace
35
36#endif