/*
- * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
/**
* @file
- * @breif Declares different kind of edges between nodes
+ * @brief Declares different kind of edges between nodes
* @date 29.08.2006
* @author Sebastian Hack
*/
#ifndef FIRM_IR_IREDGEKINDS_H
#define FIRM_IR_IREDGEKINDS_H
+#include "begin.h"
+
/** Supported Edge kinds. */
-enum _ir_edge_kind_t {
- EDGE_KIND_NORMAL, /**< Normal data flow edges. */
- EDGE_KIND_BLOCK, /**< Block to Block control flow edges. */
- EDGE_KIND_DEP, /**< Dependency edges. */
+typedef enum ir_edge_kind_t {
+ EDGE_KIND_FIRST,
+ EDGE_KIND_NORMAL = EDGE_KIND_FIRST, /**< Normal data flow edges. */
+ EDGE_KIND_BLOCK, /**< Block to Block control flow edges. */
+ EDGE_KIND_DEP, /**< Dependency edges. */
EDGE_KIND_LAST
-};
-
-typedef enum _ir_edge_kind_t ir_edge_kind_t;
-
-/*
- * It's ugly but we need this forward ref.
- */
+} ir_edge_kind_t;
+ENUM_COUNTABLE(ir_edge_kind_t)
-void edges_notify_edge_kind(ir_node *src, int pos, ir_node *tgt, ir_node *old_tgt, ir_edge_kind_t kind, ir_graph *irg);
+#include "end.h"
#endif