/*
- * 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.
*
*/
/**
- * Instructions
- *
- * A data structure to treat nodes and node-proj collections uniformly.
+ * @file
+ * @brief A data structure to treat nodes and node-proj collections uniformly.
+ * @author Sebastian Hack
+ * @version $Id$
*/
+#ifndef FIRM_BE_BEINSN_T_H
+#define FIRM_BE_BEINSN_T_H
-#ifndef _BEINSN_T_H
-#define _BEINSN_T_H
-
+#include "firm_types.h"
#include "bitset.h"
+#include "obst.h"
-#include "bearch_t.h"
+#include "bearch.h"
+#include "beirg.h"
typedef struct _be_operand_t be_operand_t;
typedef struct _be_insn_t be_insn_t;
typedef struct _be_insn_env_t be_insn_env_t;
struct _be_operand_t {
- ir_node *irn; /**< firm node of the insn this operand blongs to */
- ir_node *carrier; /**< node representing the operand value (proj or the node itself for defs, the value itself for uses */
+ ir_node *irn; /**< Firm node of the insn this operand belongs to */
+ ir_node *carrier; /**< node representing the operand value (Proj or the node itself for defs, the value itself for uses */
be_operand_t *partner; /**< used in bechordal later... (TODO what does it do?) */
bitset_t *regs; /**< admissible register bitset */
int pos; /**< pos of the operand (0 to n are inputs, -1 to -n are outputs) */
be_insn_env_t *be_insn_env_init(be_insn_env_t *ie, const be_irg_t *birg, const arch_register_class_t *cls, struct obstack *obst);
-#endif /* _BEINSN_T_H */
+#endif /* FIRM_BE_BEINSN_T_H */