/*
- * 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.
*
*/
/**
- * Analyse register pressure in loops.
- * @author Christian Wuerdig
- * @date 2006/02/20
- * @cvsid $Id$
+ * @file
+ * @brief Compute register pressure in loops.
+ * @author Christian Wuerdig
+ * @date 20.02.2007
+ * @version $Id$
*/
-
-#ifndef _BELOOPANA_H_
-#define _BELOOPANA_H_
+#ifndef FIRM_BE_BELOOPANA_H
+#define FIRM_BE_BELOOPANA_H
#include "irloop.h"
-#include "bearch_t.h"
+#include "bearch.h"
#include "beirg.h"
typedef struct _be_loopana_t be_loopana_t;
be_loopana_t *be_new_loop_pressure_cls(be_irg_t *birg, const arch_register_class_t *cls);
/**
- * Compute the register pressure for all classes of all loops in the birg.
+ * Compute the register pressure of all loops in the birg.
* @param birg The backend irg object
+ * @param cls register class to compute loop pressure for,
+ * if NULL computes for all classes
* @return The loop analysis object.
*/
-be_loopana_t *be_new_loop_pressure(be_irg_t *birg);
+be_loopana_t *be_new_loop_pressure(be_irg_t *birg,
+ const arch_register_class_t *cls);
/**
* Returns the computed register pressure for the given class and loop.
*/
void be_free_loop_pressure(be_loopana_t *loop_ana);
-#endif /* _BELOOPANA_H_ */
+#endif /* FIRM_BE_BELOOPANA_H */