2003-09-30 20:37:50 +02:00
|
|
|
//===-- InstrScheduling.h - Interface To Instruction Scheduling -*- C++ -*-===//
|
2005-04-21 22:39:54 +02:00
|
|
|
//
|
2003-10-20 22:19:47 +02: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 22:39:54 +02:00
|
|
|
//
|
2003-10-20 22:19:47 +02:00
|
|
|
//===----------------------------------------------------------------------===//
|
2002-02-04 06:52:08 +01:00
|
|
|
//
|
|
|
|
// This file defines a minimal, but complete, interface to instruction
|
|
|
|
// scheduling.
|
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
2001-08-29 01:07:19 +02:00
|
|
|
|
|
|
|
#ifndef LLVM_CODEGEN_INSTR_SCHEDULING_H
|
|
|
|
#define LLVM_CODEGEN_INSTR_SCHEDULING_H
|
|
|
|
|
2003-11-11 23:41:34 +01:00
|
|
|
namespace llvm {
|
|
|
|
|
2003-08-14 08:09:32 +02:00
|
|
|
class FunctionPass;
|
2001-09-07 23:04:59 +02:00
|
|
|
class TargetMachine;
|
2001-08-29 01:07:19 +02:00
|
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
2002-02-04 20:59:22 +01:00
|
|
|
// Function: createScheduleInstructionsWithSSAPass(..)
|
2005-04-21 22:39:54 +02:00
|
|
|
//
|
2001-08-29 01:07:19 +02: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 20:37:50 +02:00
|
|
|
FunctionPass *createInstructionSchedulingWithSSAPass(const TargetMachine &TM);
|
2001-09-18 14:41:43 +02:00
|
|
|
|
2003-11-11 23:41:34 +01:00
|
|
|
} // End llvm namespace
|
|
|
|
|
2001-08-29 01:07:19 +02:00
|
|
|
#endif
|