/*
- * Project: libFIRM
- * File name: ir/ir/iredges.h
- * Purpose: Public header for the automatically updating outs.
- * Author: Sebastian Hack
- * Created: 3.2.2005
- * CVS-ID: $Id$
- * Copyright: (c) 1998-2005 Universität Karlsruhe
- * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ *
+ * This file is part of libFirm.
+ *
+ * This file may be distributed and/or modified under the terms of the
+ * GNU General Public License version 2 as published by the Free Software
+ * Foundation and appearing in the file LICENSE.GPL included in the
+ * packaging of this file.
+ *
+ * Licensees holding valid libFirm Professional Edition licenses may use
+ * this file in accordance with the libFirm Commercial License.
+ * Agreement provided with the Software.
+ *
+ * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+ * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE.
*/
/**
- * Public header for the automatically updating outs.
- * @author Sebastian Hack
- * @date 3.2.2005
+ * @file
+ * @brief Public header for the automatically updating outs.
+ * @author Sebastian Hack
+ * @date 3.2.2005
+ * @version $Id$
*/
-
-#ifndef _FIRM_IR_EDGES_H
-#define _FIRM_IR_EDGES_H
+#ifndef FIRM_IR_IREDGES_H
+#define FIRM_IR_IREDGES_H
#include "firm_types.h"
#include "iredgekinds.h"
typedef struct _ir_edge_t ir_edge_t;
#endif
-#if 0
-#ifndef _IR_EDGE_KIND_TYPEDEF_
-#define _IR_EDGE_KIND_TYPEDEF_
-typedef enum _ir_edge_kind_t ir_edge_kind_t;
-#endif /* _IR_EDGE_KIND_TYPEDEF_ */
-#endif
-
/**
* Get the first edge pointing to some node.
* @note There is no order on out edges. First in this context only
*/
int edges_verify(ir_graph *irg);
+/**
+
+ * Set edge verification flag.
+
+ */
+void edges_init_dbg(int do_dbg);
+
/************************************************************************/
/* Begin Old Interface */
/************************************************************************/
+const ir_edge_t *get_irn_edge(ir_graph *irg, const ir_node *src, int pos);
+
#define edges_reroute(old, nw, irg) edges_reroute_kind(old, nw, EDGE_KIND_NORMAL, irg)
#define edges_activated(irg) (edges_activated_kind(irg, EDGE_KIND_NORMAL) && edges_activated_kind(irg, EDGE_KIND_BLOCK))
*/
extern void edges_notify_edge(ir_node *src, int pos, ir_node *tgt, ir_node *old_tgt, ir_graph *irg);
+void edges_reset_private_data(ir_graph *irg, int offset, size_t size);
+
/************************************************************************/
/* End Old Interface */
/************************************************************************/
-
-#endif /* _FIRM_IR_EDGES_H */
+#endif