Added bitfiddling routines and a bitset implementation
[libfirm] / ir / tr / entity.h
index 57ad9a6..a7a71c7 100644 (file)
@@ -192,7 +192,7 @@ ident      *get_entity_ld_ident (entity *ent);
 void        set_entity_ld_ident (entity *ent, ident *ld_ident);
 
 /** Returns the mangled name of the entity as a string. */
-const char *get_entity_ld_name (entity *end);
+const char *get_entity_ld_name (entity *ent);
 
 /** Returns the owner of the entity. */
 type       *get_entity_owner (entity *ent);
@@ -427,6 +427,18 @@ int  get_compound_ent_value_offset_bits(entity *ent, int pos);
  */
 int  get_compound_ent_value_offset_bytes(entity *ent, int pos);
 
+/** Compute the array indicees in compound graph paths of initialized entities.
+ *
+ * All arrays must have fixed lower and upper bounds.  One array can
+ * have an open upper bound.  If there are several open bounds, we do
+ * nothing.  There must be initializer elements for all array
+ * elements.  Uses the link field in the array element entities.  The
+ * array bounds must be representable as ints.
+ *
+ * @param ent Any entity.
+ */
+void compute_compound_ent_array_indicees(entity *ent);
+
 /** Sort the values of the compound entity by their overall offset.
  *
  * This requires that the layout of all concerned types is fixed.
@@ -511,16 +523,4 @@ bool        entity_not_visited(entity *ent);
 entity *resolve_ent_polymorphy(type *dynamic_class, entity* static_ent);
 
 
-/*-----------------------------------------------------------------*/
-/*  Debug aides                                                    */
-/*-----------------------------------------------------------------*/
-
-
-/** Write the entity and all its attributes to stdout.
- *
- *  Writes the entity and all its attributes to stdout if DEBUG_libfirm
- *  is set.  Else does nothing. */
-void    dump_entity (entity *ent);
-
-
 # endif /* _ENTITY_H_ */