X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fana%2Firdom_t.h;h=24a10a6ee4d00091d24c8ab9a964f8b5f0ce756b;hb=ff0e8d7fcb34481652f0bf521ba04b1eca5e2106;hp=c5abd03069185ca7d4a700e84eed4faf27925b59;hpb=5e78c49f69b1b370275e4638a5db6a7b49ad0f6d;p=libfirm diff --git a/ir/ana/irdom_t.h b/ir/ana/irdom_t.h index c5abd0306..24a10a6ee 100644 --- a/ir/ana/irdom_t.h +++ b/ir/ana/irdom_t.h @@ -1,18 +1,24 @@ -/* Copyright (C) 2002 by Universitaet Karlsruhe -* All rights reserved. -*/ +/* + * 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 * - * dDominator information private datastructures. + * Dominator information private datastructures. * * @author Goetz Lindenmaier * */ - -/* $Id$ */ - # ifndef _IRDOM_T_H_ # define _IRDOM_T_H_ @@ -20,9 +26,16 @@ /** 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 */ + ir_node *idom; /**< immediate CFG dominator */ + ir_node *next; /**< The next node in the dominated list of @c idom. */ + 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_ */