2002-02-04 05:52:08 +00:00
|
|
|
//===-- InstrScheduling.h - Interface To Instruction Scheduling --*- C++ -*-==//
|
|
|
|
//
|
|
|
|
// This file defines a minimal, but complete, interface to instruction
|
|
|
|
// scheduling.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
2001-08-28 23:07:19 +00:00
|
|
|
|
|
|
|
#ifndef LLVM_CODEGEN_INSTR_SCHEDULING_H
|
|
|
|
#define LLVM_CODEGEN_INSTR_SCHEDULING_H
|
|
|
|
|
2002-02-04 19:59:22 +00:00
|
|
|
class MethodPass;
|
2001-09-07 21:04:59 +00:00
|
|
|
class TargetMachine;
|
2001-08-28 23:07:19 +00:00
|
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
2002-02-04 19:59:22 +00:00
|
|
|
// Function: createScheduleInstructionsWithSSAPass(..)
|
2001-08-28 23:07:19 +00:00
|
|
|
//
|
|
|
|
// Purpose:
|
|
|
|
// Entry point for instruction scheduling on SSA form.
|
|
|
|
// Schedules the machine instructions generated by instruction selection.
|
|
|
|
// Assumes that register allocation has not been done, i.e., operands
|
|
|
|
// are still in SSA form.
|
|
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
2002-02-04 19:59:22 +00:00
|
|
|
MethodPass *createInstructionSchedulingWithSSAPass(const TargetMachine &Target);
|
2001-09-18 12:41:43 +00:00
|
|
|
|
2001-08-28 23:07:19 +00:00
|
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
|
|
// Function: ScheduleInstructions
|
|
|
|
//
|
|
|
|
// Purpose:
|
|
|
|
// Entry point for instruction scheduling on machine code.
|
|
|
|
// Schedules the machine instructions generated by instruction selection.
|
|
|
|
// Assumes that register allocation has been done.
|
|
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
|
|
// Not implemented yet.
|
2002-02-04 19:59:22 +00:00
|
|
|
//bool ScheduleInstructions(Method *M, const TargetMachine &Target);
|
2001-08-28 23:07:19 +00:00
|
|
|
|
|
|
|
#endif
|