* @brief Various verify routines that check a scheduled graph for correctness.
* @author Matthias Braun
* @date 05.05.2006
- * @version $Id$
*/
#ifndef FIRM_BE_BEVERIFY_H
#define FIRM_BE_BEVERIFY_H
+#include <stdbool.h>
#include "irgraph.h"
-#include "beirg.h"
#include "bearch.h"
/**
*
* @param irg The irg to check.
* @param cls The register class to check.
- * @return 1 if the pressure is valid, 0 otherwise.
+ * @return true if the pressure is valid, false otherwise.
*/
-int be_verify_register_pressure(ir_graph *irg,
- const arch_register_class_t* cls);
+bool be_verify_register_pressure(ir_graph *irg,
+ const arch_register_class_t* cls);
/**
* Does some sanity checks on the schedule.
*
* @param irg The irg to check
- * @return 1 if the schedule is valid, 0 otherwise
+ * @return true if the schedule is valid, false otherwise
*/
-int be_verify_schedule(ir_graph *irg);
+bool be_verify_schedule(ir_graph *irg);
/**
* Verify spillslots
*
* @param irg The irg to check
- * @return 1 if spillslots are valid, 0 otherwise
+ * @return true if spillslots are valid, false otherwise
*/
-int be_verify_spillslots(ir_graph *irg);
+bool be_verify_spillslots(ir_graph *irg);
/**
* Verify register allocation: Checks that no 2 live nodes have the same
* assigned.
*
* @param irg The graph to check
- * @return 1 if verify succeeded, 0 otherwise
+ * @return true if verify succeeded, false otherwise
*/
-int be_verify_register_allocation(ir_graph *irg);
+bool be_verify_register_allocation(ir_graph *irg);
+
+/**
+ * Check the given liveness information against a freshly computed one.
+ */
+void be_liveness_check(be_lv_t *lv);
#endif