-/*10 2002/03/19 13:08:33
-* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/tr/entity_t.h
+ * Purpose: Representation of all program known entities -- private header.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file entity_t.h
* enclosing procedure.
*/
-/* $Id$ */
# ifndef _ENTITY_T_H_
# define _ENTITY_T_H_
# include "entity.h"
+/** A path in a compund graph. */
+struct compound_graph_path {
+ firm_kind kind; /**< dynamic type tag for compound graph path. */
+ type *tp;
+ int len;
+ entity *nodes[1];
+};
+
/** the type of an entity */
struct entity {
firm_kind kind; /**< dynamic type tag for entity. */
ir_node **values; /**< constant values of compound entities. Only available if
variablility not uninitialized. Must be set for variability constant
*/
- entity **val_ents; /**< entities corresponding to constant values. Only available if
+ compound_graph_path **val_paths; /**< paths corresponding to constant values. Only available if
variablility not uninitialized. Must be set for variability constant */
/* ------------- fields for entities owned by a class type ---------------*/