added debug support constructors
[libfirm] / ir / tr / entity.c
index d615c3c..28b00b2 100644 (file)
@@ -27,8 +27,6 @@
 /** general                                                       **/
 /*******************************************************************/
 
-unsigned long entity_visited;
-
 void
 init_entity (void)
 {
@@ -38,6 +36,8 @@ init_entity (void)
 /** ENTITY                                                        **/
 /*******************************************************************/
 
+INLINE type *get_entity_owner (entity *ent);
+
 INLINE void insert_entity_in_owner (entity *ent) {
   type *owner = ent->owner;
   switch (get_type_tpop_code(owner)) {
@@ -98,7 +98,12 @@ new_entity (type *owner, ident *name, type *type)
   insert_entity_in_owner (res);
   return res;
 }
-
+entity *
+new_d_entity (type *owner, ident *name, type *type, dbg_info *db) {
+  entity *res = new_entity(owner, name, type);
+  set_entity_dbg_info(res, db);
+  return res;
+}
 INLINE void free_entity_attrs(entity *ent) {
   assert(ent);
   if (get_type_tpop(get_entity_owner(ent)) == type_class) {
@@ -558,5 +563,5 @@ void        set_entity_visited(entity *entity, unsigned long num) {
 /* Sets visited field in entity to entity_visited. */
 void        mark_entity_visited(entity *entity) {
   assert (entity);
-  entity->visit = entity_visited;
+  entity->visit = type_visited;
 }