blob: 4707b373b95acdbed8adc6c88ed00a5803fe9505 [file] [log] [blame]
Vikram S. Advea21cf202001-07-21 12:42:19 +00001// $Id$
2//***************************************************************************
3// File:
4// Sparc.cpp
5//
6// Purpose:
7//
8// History:
9// 7/15/01 - Vikram Adve - Created
10//**************************************************************************/
11
Chris Lattner7e583cf2001-07-21 20:58:30 +000012#include "llvm/CodeGen/Sparc.h"
Vikram S. Advea21cf202001-07-21 12:42:19 +000013
Vikram S. Advea21cf202001-07-21 12:42:19 +000014//************************ Class Implementations **************************/
15
16
Vikram S. Adve3c3b7132001-07-28 04:19:10 +000017
Vikram S. Advea21cf202001-07-21 12:42:19 +000018//---------------------------------------------------------------------------
19// class UltraSparcMachine
20//
21// Purpose:
Vikram S. Adve3c3b7132001-07-28 04:19:10 +000022// Primary interface to machine description for the UltraSPARC.
23// Primarily just initializes machine-dependent parameters in
24// class TargetMachine, and creates machine-dependent subclasses
25// for classes such as MachineInstrInfo.
Vikram S. Advea21cf202001-07-21 12:42:19 +000026//
27//---------------------------------------------------------------------------
28
29UltraSparc::UltraSparc()
Chris Lattnere3860e52001-08-27 15:51:16 +000030 : TargetMachine("UltraSparc-Native", new UltraSparcInstrInfo()) {
Vikram S. Advea21cf202001-07-21 12:42:19 +000031 optSizeForSubWordData = 4;
Vikram S. Advea21cf202001-07-21 12:42:19 +000032 minMemOpWordSize = 8;
33 maxAtomicMemOpWordSize = 8;
Vikram S. Advea21cf202001-07-21 12:42:19 +000034 zeroRegNum = 0; // %g0 always gives 0 on Sparc
35}
36
Chris Lattnere3860e52001-08-27 15:51:16 +000037UltraSparc::~UltraSparc() {
Vikram S. Adve3c3b7132001-07-28 04:19:10 +000038}
39
Vikram S. Advea21cf202001-07-21 12:42:19 +000040//**************************************************************************/