X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana%2Firdom_t.h;h=6a15d3a28875d859b2893681da03618827394ac3;hb=4bad1346ff2abc3923beea23e5ac949acc7ca514;hp=4ae7dd213a47247392bef8fe603e91ca2e937d90;hpb=5679b7b33dbf50a18c5ec8e2803fd269ac953671;p=libfirm diff --git a/ir/ana/irdom_t.h b/ir/ana/irdom_t.h index 4ae7dd213..6a15d3a28 100644 --- a/ir/ana/irdom_t.h +++ b/ir/ana/irdom_t.h @@ -1,12 +1,25 @@ -/* Copyright (C) 2002 by Universitaet Karlsruhe -* All rights reserved. -* -* Authors: Goetz Lindenmaier -* -* irdom_t.h: private datastructures -*/ +/* + * Project: libFIRM + * File name: ir/ana/irdom_t.h + * Purpose: Construct and access dominator tree -- private datastructures. + * Author: Goetz Lindenmaier + * Modified by: + * Created: 2.2002 + * CVS-ID: $Id$ + * Copyright: (c) 2002-2003 Universität Karlsruhe + * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE. + */ + + +/** + * @file irdom_t.h + * + * Dominator information private datastructures. + * + * @author Goetz Lindenmaier + * + */ -/* $Id$ */ # ifndef _IRDOM_T_H_ # define _IRDOM_T_H_ @@ -15,9 +28,17 @@ /** For dominator information */ typedef struct dom_info { - struct ir_node *idom; /**< immediate CFG dominator */ - int pre_num; /**< pre-order graph-walk number */ - int dom_depth; /**< depth in dominator-tree */ + struct ir_node *idom; /**< immediate CFG dominator */ + struct ir_node *next; /**< The next node in the dominated + list of @c idom. */ + struct ir_node *first; /**< The first node in the list of nodes + this nodes dominates immediately. */ + unsigned tree_pre_num; /**< The pre-order number from a dfs walk + over the dominator tree. */ + unsigned max_subtree_pre_num; /**< The largest tree pre num found in the + dominator subtree of this node. */ + int pre_num; /**< pre-order graph-walk number */ + int dom_depth; /**< depth in dominator-tree */ } dom_info; #endif /* _IRDOM_T_H_ */