1 //===-- SPUHazardRecognizers.h - Cell SPU Hazard Recognizer -----*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file was developed by a team from the Computer Systems Research
6 // Department at The Aerospace Corporation and is distributed under the
7 // University of Illinois Open Source License. See LICENSE.TXT for details.
9 //===----------------------------------------------------------------------===//
11 // This file defines hazard recognizers for scheduling on the Cell SPU
14 //===----------------------------------------------------------------------===//
19 #include "llvm/CodeGen/ScheduleDAG.h"
20 #include "SPUInstrInfo.h"
24 /// SPUHazardRecognizer
25 class SPUHazardRecognizer : public HazardRecognizer
28 const TargetInstrInfo &TII;
32 SPUHazardRecognizer(const TargetInstrInfo &TII);
33 virtual HazardType getHazardType(SDNode *Node);
34 virtual void EmitInstruction(SDNode *Node);
35 virtual void AdvanceCycle();
36 virtual void EmitNoop();
39 } // end namespace llvm