aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/Sparc/Sparc.h
blob: 44ee15aeae84ceeb37c764d32a53d05b7e50972d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//===-- SparcV8.h - Top-level interface for SparcV8 representation -*- C++ -*-//
// 
//                     The LLVM Compiler Infrastructure
//
// This file was developed by the LLVM research group and is distributed under
// the University of Illinois Open Source License. See LICENSE.TXT for details.
// 
//===----------------------------------------------------------------------===//
//
// This file contains the entry points for global functions defined in the LLVM
// SparcV8 back-end.
//
//===----------------------------------------------------------------------===//

#ifndef TARGET_SPARCV8_H
#define TARGET_SPARCV8_H

#include <iosfwd>

namespace llvm {

  class FunctionPass;
  class TargetMachine;

  FunctionPass *createSparcV8SimpleInstructionSelector(TargetMachine &TM);
  FunctionPass *createSparcV8CodePrinterPass(std::ostream &OS,
                                             TargetMachine &TM);
  FunctionPass *createSparcV8DelaySlotFillerPass(TargetMachine &TM);

} // end namespace llvm;

// Defines symbolic names for SparcV8 registers.  This defines a mapping from
// register name to register number.
//
#include "SparcV8GenRegisterNames.inc"

// Defines symbolic names for the SparcV8 instructions.
//
#include "SparcV8GenInstrNames.inc"

#endif