added ir/ana and ir/st to Makefile.in --flo
[libfirm] / ir / tr / typegmod.h
index d6490b4..d751f29 100644 (file)
@@ -1,4 +1,6 @@
 
+/* $Id$ */
+
 # ifndef _TYPEGMOD_H_
 # define _TYPEGMOD_H_
 
  * SIDE EFFECTS
  *   Old type is replaced by new_type.  All references to old_type
  *   now point to new_type.  The memory for the old type is destroyed,
- *   but still used.  Therefore it is not freed.  The memory will
- *   be lost after a certain while.
+ *   but still used.  Therefore it is not freed.
+ *   All referenced to this memory will be lost after a certain while.
+ *   An exception is the list of types in irp (irprog.h).
  *   In the future there might be a routine to recover the memory, but
  *   this will be at considerable runtime cost.
  ***
  */
 inline void exchange_types(type *old_type, type *new_type);
 
+/****f* tpop/skip_tid
+ *
+ * NAME
+ *   skip_tid -- skip id types until a useful type is reached.
+ * SYNOPSIS
+ *   type *skip_tid(type *tp)
+ * INPUTS
+ *   A type of arbitrary kind.
+ * RETURNS
+ *   tp if it is not an id type.
+ *   If tp is an id type retruns the real type it stands for.
+ ***
+ */
+inline type *skip_tid(type *tp);
 
 # endif /*_TYPEGMOD_H_ */