X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbechordal.h;h=a1d242aea1a356161f651c4a057df5eebf0ee10c;hb=c03098df320995c78fb51798f1933368777e2b24;hp=10e6cd028d600376169a87bdf5184c2bdc32784d;hpb=e47815829124e485f67ef268dd9a166495a7da19;p=libfirm diff --git a/ir/be/bechordal.h b/ir/be/bechordal.h index 10e6cd028..a1d242aea 100644 --- a/ir/be/bechordal.h +++ b/ir/be/bechordal.h @@ -1,25 +1,40 @@ - -/** - * Chordal register allocation. - * @author Sebastian Hack - * @date 14.12.2004 +/* + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * + * This file is part of libFirm. + * + * This file may be distributed and/or modified under the terms of the + * GNU General Public License version 2 as published by the Free Software + * Foundation and appearing in the file LICENSE.GPL included in the + * packaging of this file. + * + * Licensees holding valid libFirm Professional Edition licenses may use + * this file in accordance with the libFirm Commercial License. + * Agreement provided with the Software. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. */ -#ifndef __BECHORDAL_H -#define __BECHORDAL_H - -#include "irgraph.h" -#include "irnode.h" - /** - * Allocate registers for an ir graph. - * @param irg The graph. - * @return Some internal data to be freed with be_ra_chordal_free(). + * @file + * @brief Chordal register allocation. + * @author Sebastian Hack + * @date 14.12.2004 + * @version $Id$ */ -void be_ra_chordal(ir_graph *irg); +#ifndef FIRM_BE_BECHORDAL_H +#define FIRM_BE_BECHORDAL_H + +typedef struct be_chordal_env_t be_chordal_env_t; +typedef struct be_ra_chordal_opts_t be_ra_chordal_opts_t; +typedef struct border_t border_t; -void be_ra_chordal_done(ir_graph *irg); +typedef struct be_ra_chordal_coloring_t { + void (*allocate)(be_chordal_env_t *env); +} be_ra_chordal_coloring_t; -int phi_ops_interfere(const ir_node *a, const ir_node *b); +void be_register_chordal_coloring(const char *name, be_ra_chordal_coloring_t *coloring); -#endif +#endif /* FIRM_BE_BECHORDAL_H */