2003-09-30 18:37:50 +00:00
|
|
|
//===-- InstrScheduling.h - Interface To Instruction Scheduling -*- C++ -*-===//
|
2005-04-21 20:39:54 +00:00
|
|
|
//
|
2003-10-20 20:19:47 +00:00
|
|
|
// 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.
|
2005-04-21 20:39:54 +00:00
|
|
|
//
|
2003-10-20 20:19:47 +00:00
|
|
|
//===----------------------------------------------------------------------===//
|
2002-02-04 05:52:08 +00:00
|
|
|
//
|
|
|
|
// 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
|
|
|
|
|
2003-11-11 22:41:34 +00:00
|
|
|
namespace llvm {
|
|
|
|
|
2003-08-14 06:09:32 +00:00
|
|
|
class FunctionPass;
|
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(..)
|
2005-04-21 20:39:54 +00:00
|
|
|
//
|
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.
|
|
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
2003-09-30 18:37:50 +00:00
|
|
|
FunctionPass *createInstructionSchedulingWithSSAPass(const TargetMachine &TM);
|
2001-09-18 12:41:43 +00:00
|
|
|
|
2003-11-11 22:41:34 +00:00
|
|
|
} // End llvm namespace
|
|
|
|
|
2001-08-28 23:07:19 +00:00
|
|
|
#endif
|