X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbecopystat.h;h=39b458679937266f55d8ec81b452871dc94df8ca;hb=df2faee01a5832057bb3ca0ba5f67e979c916e19;hp=517f4282c1074a552c9ce2020a4564d702313914;hpb=b80ccfe41fdc2823da3f044773746a44eeef46e4;p=libfirm diff --git a/ir/be/becopystat.h b/ir/be/becopystat.h index 517f4282c..39b458679 100644 --- a/ir/be/becopystat.h +++ b/ir/be/becopystat.h @@ -1,78 +1,49 @@ -/** - * @author Daniel Grund - * @date 11.04.2005 +/* + * 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. */ -#define DO_STAT - -#ifdef DO_STAT - -#ifndef _BECOPYSTAT_H -#define _BECOPYSTAT_H - -#include "irgraph.h" -#define MAX_ARITY 10 -#define MAX_CLS_SIZE 10 -#define MAX_PHASE 2 /** - * For an explanation of these values see phi_stat_dump_pretty + * @file + * @brief Copy node statistics. + * @author Daniel Grund + * @date 11.04.2005 */ -enum vals_t { - I_ALL_NODES = 0, - I_BLOCKS, - - I_PHI_CNT, /* number of phi nodes */ - I_PHI_ARG_CNT, /* number of arguments of phis */ - I_PHI_ARG_SELF, /* number of arguments of phis being the phi itself */ - I_PHI_ARG_CONST, /* number of arguments of phis being consts */ - I_PHI_ARG_PRED, /* ... being defined in a cf-pred */ - I_PHI_ARG_GLOB, /* ... being defined elsewhere */ - I_PHI_ARITY_S, - I_PHI_ARITY_E = I_PHI_ARITY_S+MAX_ARITY, - - I_CLS_CNT, /* number of phi classes */ - I_CLS_IF_FREE, /* number of pc having no interference */ - I_CLS_IF_MAX, /* number of possible interferences in all classes */ - I_CLS_IF_CNT, /* number of actual interferences in all classes */ - I_CLS_SIZE_S, - I_CLS_SIZE_E = I_CLS_SIZE_S+MAX_CLS_SIZE, - - I_COPIES_MAX, /* max number of copies possible */ - I_COPIES_INIT, /* !external set! number of copies in initial allocation */ - I_COPIES_HEUR, /* !external set! number of copies after heuristic */ - I_COPIES_OPT, /* !external set! number of copies after ilp */ - I_COPIES_LB, /* !external set! the lower bound used for number of copies */ - I_COPIES_IF, /* number of copies inevitable due to root-arg-interf */ +#ifndef FIRM_BE_BECOPYSTAT_H +#define FIRM_BE_BECOPYSTAT_H + +#include "firm_types.h" +#include "bearch.h" +#include "bechordal_t.h" + +void copystat_add_max_costs(int costs); +void copystat_add_inevit_costs(int costs); +void copystat_add_init_costs(int costs); +void copystat_add_heur_costs(int costs); +void copystat_add_opt_costs(int costs); +void copystat_add_heur_time(int time); +void copystat_dump(ir_graph *irg); +void copystat_dump_pretty(ir_graph *irg); + +void copystat_add_ilp_5_sec_costs(int costs); +void copystat_add_ilp_30_sec_costs(int costs); +void copystat_add_ilp_time(int time); +void copystat_add_ilp_vars(int vars); +void copystat_add_ilp_csts(int csts); +void copystat_add_ilp_iter(int iters); - ASIZE -}; - -/** - * Holds current values. Values are added till next phi_stat_reset - */ -int curr_vals[ASIZE]; - -void stat_init(void); - -/** - * Resets the array holding the data - */ -void stat_reset(void); - -/** - * Collect common irg data - */ -void stat_collect_irg(ir_graph *irg); - -/** - * Dumps the current contents of the internal values to a file. - */ -void stat_dump(ir_graph *irg); - -/** - * Dumps the current contents of the values array and annotations to a file. - */ -void stat_dump_pretty(ir_graph *irg); - -#endif #endif