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.
8 // See README.txt for details.
10 //===----------------------------------------------------------------------===//
12 // This file defines hazard recognizers for scheduling on the Cell SPU
15 //===----------------------------------------------------------------------===//
20 #include "llvm/CodeGen/ScheduleDAG.h"
21 #include "SPUInstrInfo.h"
25 /// SPUHazardRecognizer
26 class SPUHazardRecognizer : public HazardRecognizer
29 const TargetInstrInfo &TII;
33 SPUHazardRecognizer(const TargetInstrInfo &TII);
34 virtual HazardType getHazardType(SDNode *Node);
35 virtual void EmitInstruction(SDNode *Node);
36 virtual void AdvanceCycle();
37 virtual void EmitNoop();
40 } // end namespace llvm