/*
- * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
* PURPOSE.
*/
-#ifndef _BEILPSCHED_H_
-#define _BEILPSCHED_H_
-
-#include "firm_config.h"
+/**
+ * @file
+ * @brief ILP based instruction scheduling.
+ * @author Christian Wuerdig
+ * @date 22.10.2006
+ * @version $Id$
+ *
+ * An ILP scheduler based on
+ * "ILP-based Instruction Scheduling for IA-64"
+ * by Daniel Kaestner and Sebastian Winkel
+ * extended with register pressure constraints by Christian Wuerdig
+ */
+#ifndef FIRM_BE_BEILPSCHED_H
+#define FIRM_BE_BEILPSCHED_H
-#include "bemachine.h"
-#include "beirg.h"
+#include "irgraph.h"
+#include "irnode.h"
typedef struct _ilp_sched_selector_t ilp_sched_selector_t;
typedef struct _ilp_sched_selector_if_t ilp_sched_selector_if_t;
* @param cycle The cycle at which the node is scheduled.
* @param block_env The block scheduling environment.
*/
- void (*node_scheduled)(const void *self, ir_node *irn, unsigned cycle, void *block_env);
+ void (*node_scheduled)(const void *self, const ir_node *irn, unsigned cycle, void *block_env);
};
/**
*/
void be_ilp_sched(const be_irg_t *birg, be_options_t *be_opts);
-#endif /* _BEILPSCHED_H_ */
+#endif /* FIRM_BE_BEILPSCHED_H */