Reverted r27079. Seems to be wrong.
[libfirm] / ir / be / beilpsched.h
index 329ba4c..fed571d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * 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"
-
-#include "bemachine.h"
-#include "beirg.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
 
-typedef struct _ilp_sched_selector_t    ilp_sched_selector_t;
-typedef struct _ilp_sched_selector_if_t ilp_sched_selector_if_t;
+#include "irgraph.h"
+#include "irnode.h"
+#include "be_types.h"
 
 /**
  * A selector interface which is used by the ILP schedule framework.
@@ -84,7 +92,7 @@ struct _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);
 };
 
 /**
@@ -142,4 +150,4 @@ struct _ilp_sched_selector_t {
  */
 void be_ilp_sched(const be_irg_t *birg, be_options_t *be_opts);
 
-#endif /* _BEILPSCHED_H_ */
+#endif /* FIRM_BE_BEILPSCHED_H */