X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana%2Firbackedge_t.h;h=1223209f0bc2094839f2bac7e0d6cc87155c75ba;hb=f6aeac6a547a52beb3cb663c5e63c05c9c3728ea;hp=2478d02061840d9532bcf5f7ef0e007be54bf056;hpb=382defb529c86fac61baacb80ce2d6ce3d5f88a9;p=libfirm diff --git a/ir/ana/irbackedge_t.h b/ir/ana/irbackedge_t.h index 2478d0206..1223209f0 100644 --- a/ir/ana/irbackedge_t.h +++ b/ir/ana/irbackedge_t.h @@ -1,17 +1,50 @@ -#ifndef _IRBACKEDGE_T_H_ -#define _IRBACKEDGE_T_H_ +/* + * 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. + */ -# include "string.h" +/** + * @file + * @brief Access function for backedges -- private header. + * @author Goetz Lindenmaier + * @date 7.2002 + * @version $Id$ + */ +#ifndef FIRM_ANA_IRBACKEDGE_T_H +#define FIRM_ANA_IRBACKEDGE_T_H -static INLINE int * new_backedge_arr(struct obstack *obst, int size) { - int *res = NEW_ARR_D (int, obst, size); - memset(res, 0, sizeof(int) * size); - return res; -} +/** + * Allocate a new backedge array on the obstack for given size. + * + * @param obst the obstack to allocate the array on + * @param size the size of the backedge array + */ +unsigned *new_backedge_arr(struct obstack *obst, unsigned size); -/* Adapts backedges array to new size. - Must be called if in array of irnode is changed. Else - Segmentation faults might occur. */ +/** + * Allocate new backedge info for a given node. + */ +void new_backedge_info(ir_node *n); + +/** + * Adapts backedges array to new size. + * Must be called if the in array of an IR node is changed. Else + * Segmentation faults might occur. + */ void fix_backedges(struct obstack *obst, ir_node *n); -#endif /* _IRBACKEDGE_T_H_ */ +#endif