X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbelower.h;h=e73961661c4e3e37555cf3e179cced8fc77a5c9a;hb=0a8dac2b5fb9e59ea2add322baf61237b607bea5;hp=eb646f21ee28addf55f6da30dd7da1146d1d12ad;hpb=4d5c3365a58cba59993045a9e08e686d8ae079a7;p=libfirm diff --git a/ir/be/belower.h b/ir/be/belower.h index eb646f21e..e73961661 100644 --- a/ir/be/belower.h +++ b/ir/be/belower.h @@ -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. * @@ -18,17 +18,31 @@ */ /** - * Chordal register allocation. - * @author Christian Wuerdig - * @date 2005/12/14 - * @cvsid $Id$ + * @file + * @brief Performs lowering of perm nodes. Inserts copies to assure + * register constraints. + * @author Christian Wuerdig + * @date 14.12.2005 */ -#ifndef _BELOWER_H_ -#define _BELOWER_H_ +#ifndef FIRM_BE_BELOWER_H +#define FIRM_BE_BELOWER_H -#include "beirg.h" +#include "firm_types.h" -void assure_constraints(be_irg_t *birg); -void lower_nodes_after_ra(be_irg_t *birg, int do_copy); +/** + * Walks over all nodes to assure register constraints. + * + * @param irg The graph + */ +void assure_constraints(ir_graph *irg); + +/** + * Walks over all blocks in an irg and performs lowering need to be + * done after register allocation (e.g. perm lowering). + * + * @param irg The graph + * @param do_copy 1 == resolve cycles with a free reg if available + */ +void lower_nodes_after_ra(ir_graph *irg, int do_copy); -#endif /* _BELOWER_H_ */ +#endif