becopyopt: Inline the thin wrapper nodes_interfere(), so we do not need to fetch...
[libfirm] / include / libfirm / ircons.h
index edbe936..730fd2c 100644 (file)
@@ -1,20 +1,6 @@
 /*
- * Copyright (C) 1995-2010 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.
+ * Copyright (C) 2012 University of Karlsruhe.
  */
 
 /**
  *
  * Adds the node to the start block.
  *
- * Constructor for a Const node. The constant represents a target
- * value.  Sets the type information to type_unknown.  (No more
- * supported: If tv is entity derives a somehow useful type.)
+ * The constant represents a target value.
  *
  * @param *db    A pointer for debug information.
  * @param *irg   The IR graph the node  belongs to.
@@ -338,9 +322,7 @@ FIRM_API ir_node *new_rd_Const_long(dbg_info *db, ir_graph *irg,
  *
  * Adds the node to the start block.
  *
- * Constructor for a Const node. The constant represents a target
- * value.  Sets the type information to type_unknown.  (No more
- * supported: If tv is entity derives a somehow useful type.)
+ * The constant represents a target value.
  *
  * @param *irg   The IR graph the node  belongs to.
  * @param *mode  The mode of the operands and the results.
@@ -557,45 +539,6 @@ FIRM_API ir_node *new_SymConst(ir_mode *mode, union symconst_symbol value,
 
 /** @} */
 
-/** @addtogroup Conv
- * @{
- */
-
-/** Constructor for a strictConv node.
- *
- * @param db    A pointer for debug information.
- * @param block The IR block the node belongs to.
- * @param op    The operand.
- * @param mode  The mode of this the operand muss be converted .
- */
-FIRM_API ir_node *new_rd_strictConv(dbg_info *db, ir_node *block,
-                                    ir_node *op, ir_mode *mode);
-
-/** Constructor for a strictConv node.
- *
- * @param block The IR block the node belongs to.
- * @param op    The operand.
- * @param mode  The mode of this the operand muss be converted .
- */
-FIRM_API ir_node *new_r_strictConv(ir_node *block, ir_node *op, ir_mode *mode);
-
-/** Constructor for a strict Conv node.
- *
- * @param db    A pointer for debug information.
- * @param op    The operand.
- * @param mode  The mode of this the operand muss be converted .
- */
-FIRM_API ir_node *new_d_strictConv(dbg_info *db, ir_node *op, ir_mode *mode);
-
-/** Constructor for a strict Conv node.
- *
- * @param op    The operand.
- * @param mode  The mode of this the operand muss be converted .
- */
-FIRM_API ir_node *new_strictConv(ir_node *op, ir_mode *mode);
-
-/** @} */
-
 /** @addtogroup Sel
  * @{
  */
@@ -734,6 +677,7 @@ FIRM_API ir_node *new_DivRL(ir_node *memop, ir_node *op1, ir_node *op2,
  *
  * @param *db         A pointer for debug information.
  * @param *block      The block the node belong to.
+ * @param *mem        memory dependency
  * @param arity       The number of data inputs to the node.
  * @param *in         The array of length arity of data inputs.
  * @param *inputs     The array of length arity of input constraints.
@@ -743,7 +687,7 @@ FIRM_API ir_node *new_DivRL(ir_node *memop, ir_node *op1, ir_node *op2,
  * @param *clobber    The array of length n_clobber of clobbered registers.
  * @param *asm_text   The assembler text.
  */
-FIRM_API ir_node *new_rd_ASM(dbg_info *db, ir_node *block,
+FIRM_API ir_node *new_rd_ASM(dbg_info *db, ir_node *block, ir_node *mem,
                             int arity, ir_node *in[], ir_asm_constraint *inputs,
                             size_t n_outs, ir_asm_constraint *outputs,
                             size_t n_clobber, ident *clobber[],
@@ -752,6 +696,7 @@ FIRM_API ir_node *new_rd_ASM(dbg_info *db, ir_node *block,
 /** Constructor for an ASM pseudo node.
  *
  * @param *block      The block the node belong to.
+ * @param *mem        memory dependency
  * @param arity       The number of data inputs to the node.
  * @param *in         The array of length arity of data inputs.
  * @param *inputs     The array of length arity of input constraints.
@@ -761,7 +706,7 @@ FIRM_API ir_node *new_rd_ASM(dbg_info *db, ir_node *block,
  * @param *clobber    The array of length n_clobber of clobbered registers.
  * @param *asm_text   The assembler text.
  */
-FIRM_API ir_node *new_r_ASM(ir_node *block,
+FIRM_API ir_node *new_r_ASM(ir_node *block, ir_node *mem,
                             int arity, ir_node *in[], ir_asm_constraint *inputs,
                             size_t n_outs, ir_asm_constraint *outputs,
                             size_t n_clobber, ident *clobber[],
@@ -770,6 +715,7 @@ FIRM_API ir_node *new_r_ASM(ir_node *block,
 /** Constructor for an ASM pseudo node.
  *
  * @param *db         A pointer for debug information.
+ * @param *mem        memory dependency
  * @param arity       The number of data inputs to the node.
  * @param *in         The array of length arity of data inputs.
  * @param *inputs     The array of length arity of input constraints.
@@ -780,14 +726,15 @@ FIRM_API ir_node *new_r_ASM(ir_node *block,
  * @param *asm_text   The assembler text.
  * @ingroup ASM
  */
-FIRM_API ir_node *new_d_ASM(dbg_info *db, int arity, ir_node *in[],
-                            ir_asm_constraint *inputs,
+FIRM_API ir_node *new_d_ASM(dbg_info *db, ir_node *mem, int arity,
+                            ir_node *in[], ir_asm_constraint *inputs,
                             size_t n_outs, ir_asm_constraint *outputs,
                             size_t n_clobber, ident *clobber[],
                             ident *asm_text);
 
 /** Constructor for an ASM pseudo node.
  *
+ * @param *mem        memory dependency
  * @param arity       The number of data inputs to the node.
  * @param *in         The array of length arity of data inputs.
  * @param *inputs     The array of length arity of input constraints.
@@ -798,8 +745,9 @@ FIRM_API ir_node *new_d_ASM(dbg_info *db, int arity, ir_node *in[],
  * @param *asm_text   The assembler text.
  * @ingroup ASM
  */
-FIRM_API ir_node *new_ASM(int arity, ir_node *in[], ir_asm_constraint *inputs,
-                          size_t n_outs, ir_asm_constraint *outputs,
+FIRM_API ir_node *new_ASM(ir_node *mem, int arity, ir_node *in[],
+                          ir_asm_constraint *inputs, size_t n_outs,
+                          ir_asm_constraint *outputs,
                           size_t n_clobber, ident *clobber[], ident *asm_text);
 
 /** @} */