X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbearch_t.h;h=6466cd2fbbd4f482c8e44cb366004908425b9fb3;hb=3e83d9824a9cf1b7c6a59caf436c1d0c5a63b869;hp=2ac0e370d2460c19913969f54d4e6a9714c63c94;hpb=4d5c3365a58cba59993045a9e08e686d8ae079a7;p=libfirm diff --git a/ir/be/bearch_t.h b/ir/be/bearch_t.h index 2ac0e370d..6466cd2fb 100644 --- a/ir/be/bearch_t.h +++ b/ir/be/bearch_t.h @@ -17,8 +17,14 @@ * PURPOSE. */ -#ifndef FIRM_BEARCH_T_H -#define FIRM_BEARCH_T_H +/** + * @file + * @brief Processor architecture specification - internal data structures. + * @author Sebastian Hack + * @version $Id$ + */ +#ifndef FIRM_BE_BEARCH_T_H +#define FIRM_BE_BEARCH_T_H #include "bearch.h" @@ -45,12 +51,14 @@ _arch_register_get_class(const arch_register_t *reg) return reg->reg_class; } -static INLINE int _arch_register_get_index(const arch_register_t *reg) +static INLINE +int _arch_register_get_index(const arch_register_t *reg) { return reg->index; } -static INLINE const char *_arch_register_get_name(const arch_register_t *reg) +static INLINE +const char *_arch_register_get_name(const arch_register_t *reg) { return reg->name; } @@ -390,8 +398,10 @@ struct arch_isa_t { const arch_isa_if_t *impl; const arch_register_t *sp; /** The stack pointer register. */ const arch_register_t *bp; /** The base pointer register. */ - const int stack_dir; /** -1 for decreasing, 1 for increasing. */ + const int stack_dir; /** -1 for decreasing, 1 for increasing. */ const be_main_env_t *main_env; /** the be main environment */ + const int spill_cost; /** cost for a be_Spill node */ + const int reload_cost; /** cost for a be_Reload node */ }; #define arch_isa_stack_dir(isa) ((isa)->stack_dir) @@ -492,7 +502,8 @@ struct arch_isa_if_t { /** * Returns an 2-dim array of execution units, @p irn can be executed on. - * The first dimension is the type, the second the allowed units of this type. + * The first dimension is the type, the second the allowed units of this + * type. * Each dimension is a NULL terminated list. * @param self The isa object. * @param irn The node. @@ -514,10 +525,10 @@ struct arch_isa_if_t { /** * Return an ordered list of irgs where code should be generated for. - * If NULL is returned, all irg will be taken into account and they will be - * generated in an arbitrary order. + * If NULL is returned, all irg will be taken into account and they will be + * generated in an arbitrary order. * @param self The isa object. - * @param irgs A flexible array ARR_F of length 0 where the backend cann append the desired irgs. + * @param irgs A flexible array ARR_F of length 0 where the backend can append the desired irgs. * @return A flexible array ARR_F containing all desired irgs in the desired order. */ ir_graph **(*get_backend_irg_list)(const void *self, ir_graph ***irgs); @@ -557,4 +568,4 @@ struct arch_env_t { */ #define arch_env_get_isa(env) ((env)->isa) -#endif +#endif /* FIRM_BE_BEARCH_T_H */