X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=include%2Flibfirm%2Ftrouts.h;h=59ffdf72cdf97d69b2d944bf48dfaa76762d4557;hb=1553e92153d3b718a7f5575dcbbe8abbffc579c0;hp=bafb4b02964b2ef409ff1d9b5c68dd3e6eb108f0;hpb=0ab34ea9afbd69f195fc6ce7f66b91d346f39c73;p=libfirm diff --git a/include/libfirm/trouts.h b/include/libfirm/trouts.h index bafb4b029..59ffdf72c 100644 --- a/include/libfirm/trouts.h +++ b/include/libfirm/trouts.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved. * * This file is part of libFirm. * @@ -49,60 +49,52 @@ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ /** Number of Load/Store nodes that possibly access this entity. */ -FIRM_API int get_entity_n_accesses(const ir_entity *ent); +FIRM_API size_t get_entity_n_accesses(const ir_entity *ent); /** Load/Store node that possibly access this entity. */ -FIRM_API ir_node *get_entity_access(const ir_entity *ent, int pos); +FIRM_API ir_node *get_entity_access(const ir_entity *ent, size_t pos); /** Number of references to an entity, in form of SymConst/Sel. * Including references from constant entities and the like. */ -FIRM_API int get_entity_n_references(const ir_entity *ent); +FIRM_API size_t get_entity_n_references(const ir_entity *ent); /** References to an entity, in form of SymConst/Sel * Including references from constants. */ -FIRM_API ir_node *get_entity_reference(const ir_entity *ent, int pos); +FIRM_API ir_node *get_entity_reference(const ir_entity *ent, size_t pos); /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ /* types */ /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */ /** Number of Alloc nodes that create an instance of this type. */ -FIRM_API int get_type_n_allocs(const ir_type *tp); +FIRM_API size_t get_type_n_allocs(const ir_type *tp); /** Alloc node that create an instance of this type. */ -FIRM_API ir_node *get_type_alloc(const ir_type *tp, int pos); +FIRM_API ir_node *get_type_alloc(const ir_type *tp, size_t pos); /** Number of Cast nodes that cast a pointer to this type. */ -FIRM_API int get_type_n_casts(const ir_type *tp); +FIRM_API size_t get_type_n_casts(const ir_type *tp); /** Cast node that cast a pointer to this type. */ -FIRM_API ir_node *get_type_cast(const ir_type *tp, int pos); +FIRM_API ir_node *get_type_cast(const ir_type *tp, size_t pos); FIRM_API void add_type_cast(const ir_type *tp, ir_node *cast); /** Return number of upcasts. O(\#casts). */ -FIRM_API int get_class_n_upcasts(const ir_type *clss); +FIRM_API size_t get_class_n_upcasts(const ir_type *clss); /** Return number of downcasts. O(\#casts). */ -FIRM_API int get_class_n_downcasts(const ir_type *clss); +FIRM_API size_t get_class_n_downcasts(const ir_type *clss); /* Access all pointer types that point to tp. */ -FIRM_API int get_type_n_pointertypes_to(const ir_type *tp); -FIRM_API ir_type *get_type_pointertype_to(const ir_type *tp, int pos); +FIRM_API size_t get_type_n_pointertypes_to(const ir_type *tp); +FIRM_API ir_type *get_type_pointertype_to(const ir_type *tp, size_t pos); FIRM_API void add_type_pointertype_to(const ir_type *tp, ir_type *ptp); /* Access all array types that contain elements of type tp. * Does not find subarrays, e.g., int[] being element of int[][] * for multi dimensional arrays. */ -FIRM_API int get_type_n_arraytypes_of(const ir_type *tp); -FIRM_API ir_type *get_type_arraytype_of(const ir_type *tp, int pos); +FIRM_API size_t get_type_n_arraytypes_of(const ir_type *tp); +FIRM_API ir_type *get_type_arraytype_of(const ir_type *tp, size_t pos); FIRM_API void add_type_arraytype_of(const ir_type *tp, ir_type *atp); /*------------------------------------------------------------------*/ /* Building and Removing the trout datastructure */ /*------------------------------------------------------------------*/ -/** The state of the tr_out datastructure. - * - * We reuse the enum of irouts. - * @see irouts.h. */ -FIRM_API irg_outs_state get_trouts_state(void); -/** Set the tr out state to inconsistent if it is consistent. */ -FIRM_API void set_trouts_inconsistent(void); - /** Compute the outs of types and entities. * * Collects all reference from irnodes to types or entities in the