blob: 1f215113b405b5d9894d154f366283d113146fef [file] [log] [blame]
Scott Michel610589f2007-12-03 23:14:43 +00001//===-- SPU.h - Top-level interface for Cell SPU Target ----------*- C++ -*-==//
2//
3// The LLVM Compiler Infrastructure
4//
Chris Lattner081ce942007-12-29 20:36:04 +00005// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
Scott Michel610589f2007-12-03 23:14:43 +00007//
8//===----------------------------------------------------------------------===//
9//
10// This file contains the entry points for global functions defined in the LLVM
11// Cell SPU back-end.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef LLVM_TARGET_IBMCELLSPU_H
16#define LLVM_TARGET_IBMCELLSPU_H
17
Bill Wendling5ed22ac2009-04-29 23:29:43 +000018#include "llvm/Target/TargetMachine.h"
Scott Michel610589f2007-12-03 23:14:43 +000019
20namespace llvm {
21 class SPUTargetMachine;
22 class FunctionPass;
David Greene302008d2009-07-14 20:18:05 +000023 class formatted_raw_ostream;
Scott Michel610589f2007-12-03 23:14:43 +000024
25 FunctionPass *createSPUISelDag(SPUTargetMachine &TM);
Scott Michel610589f2007-12-03 23:14:43 +000026
Daniel Dunbar0b0441e2009-07-18 23:03:22 +000027 extern Target TheCellSPUTarget;
Scott Michel610589f2007-12-03 23:14:43 +000028}
29
30// Defines symbolic names for the SPU instructions.
31//
32#include "SPUGenInstrNames.inc"
33
34#endif /* LLVM_TARGET_IBMCELLSPU_H */