X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbeverify.h;h=aa2b9bb7cb42ae1e96ca1679aeede9d1e6136589;hb=ab85c635582eadf20abe4fca71c1a0ed214b60c6;hp=32511f94afaa4b9abe3debdec7afc3dce34ac7cf;hpb=4d5c3365a58cba59993045a9e08e686d8ae079a7;p=libfirm diff --git a/ir/be/beverify.h b/ir/be/beverify.h index 32511f94a..aa2b9bb7c 100644 --- a/ir/be/beverify.h +++ b/ir/be/beverify.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,68 +18,59 @@ */ /** - * Author: Matthias Braun - * Date: 05.05.2006 - * Copyright: (c) Universitaet Karlsruhe - * License: This file protected by GPL - GNU GENERAL PUBLIC LICENSE. - * CVS-Id: $Id$ + * @file + * @brief Various verify routines that check a scheduled graph for correctness. + * @author Matthias Braun + * @date 05.05.2006 */ +#ifndef FIRM_BE_BEVERIFY_H +#define FIRM_BE_BEVERIFY_H -/** - * @file beverify.h - * - * Various verify routines that check a scheduled graph for correctness - * - * @author Matthias Braun - */ -#ifndef BEVERIFY_H_ -#define BEVERIFY_H_ +#include +#include "irgraph.h" -#include "bechordal.h" +#include "bearch.h" /** - * Verifies, that the register pressure for a given register class doesn't exceed the limit - * of available registers. + * Verifies, that the register pressure for a given register class doesn't + * exceed the limit of available registers. * - * @param birg The backend IRG. - * @param cls The register class to check. * @param irg The irg to check. - * @return 1 if the pressure is valid, 0 otherwise. + * @param cls The register class to check. + * @return true if the pressure is valid, false otherwise. */ -int be_verify_register_pressure(const be_irg_t *birg, const arch_register_class_t* cls, ir_graph *irg); +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 + * @param irg The irg to check + * @return true if the schedule is valid, false otherwise */ -int be_verify_schedule(const be_irg_t *birg); +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(const arch_env_t *arch_env, ir_graph *irg); +bool be_verify_spillslots(ir_graph *irg); /** * Verify register allocation: Checks that no 2 live nodes have the same * register assigned, also checks that each scheduled node has a register * assigned. * - * @param irg The irg to check - * @return 1 if verify succeeded, 0 otherwise + * @param irg The graph to check + * @return true if verify succeeded, false otherwise */ -int be_verify_register_allocation(const arch_env_t *arch_env, ir_graph *irg); +bool be_verify_register_allocation(ir_graph *irg); /** - * Verify that out edges are valid - * - * @param irg The irg to check - * @param 1 if verify succeeded, 0 otherwise + * Check the given liveness information against a freshly computed one. */ -int be_verify_out_edges(ir_graph *irg); +void be_liveness_check(be_lv_t *lv); -#endif /* BEVERIFY_H_ */ +#endif