Use is_Const_one() instead of tarval_is_one(get_Const_tarval()).
[libfirm] / ir / ir / ircons.c
index 7f6eab1..ee564ec 100644 (file)
@@ -382,6 +382,7 @@ NEW_BD_BINOP(Add)
 NEW_BD_BINOP(Sub)
 NEW_BD_UNOP(Minus)
 NEW_BD_BINOP(Mul)
+NEW_BD_BINOP(Mulh)
 NEW_BD_DIVOP(Quot)
 NEW_BD_DIVOP(DivMod)
 NEW_BD_DIVOP(Div)
@@ -503,6 +504,7 @@ new_bd_Load(dbg_info *db, ir_node *block,
        res->attr.load.exc.pin_state = op_pin_state_pinned;
        res->attr.load.load_mode     = mode;
        res->attr.load.volatility    = volatility_non_volatile;
+       res->attr.load.aligned       = align_is_aligned;
        res = optimize_node(res);
        IRN_VRFY_IRG(res, irg);
        return res;
@@ -521,6 +523,7 @@ new_bd_Store(dbg_info *db, ir_node *block,
        res = new_ir_node(db, irg, block, op_Store, mode_T, 3, in);
        res->attr.store.exc.pin_state = op_pin_state_pinned;
        res->attr.store.volatility    = volatility_non_volatile;
+       res->attr.store.aligned       = align_is_aligned;
        res = optimize_node(res);
        IRN_VRFY_IRG(res, irg);
        return res;
@@ -1022,6 +1025,7 @@ NEW_RD_BINOP(Add)
 NEW_RD_BINOP(Sub)
 NEW_RD_UNOP(Minus)
 NEW_RD_BINOP(Mul)
+NEW_RD_BINOP(Mulh)
 NEW_RD_DIVOP(Quot)
 NEW_RD_DIVOP(DivMod)
 NEW_RD_DIVOP(Div)
@@ -1523,6 +1527,10 @@ ir_node *new_r_Mul(ir_graph *irg, ir_node *block,
                    ir_node *op1, ir_node *op2, ir_mode *mode) {
        return new_rd_Mul(NULL, irg, block, op1, op2, mode);
 }
+ir_node *new_r_Mulh(ir_graph *irg, ir_node *block,
+                   ir_node *op1, ir_node *op2, ir_mode *mode) {
+       return new_rd_Mulh(NULL, irg, block, op1, op2, mode);
+}
 ir_node *new_r_Quot(ir_graph *irg, ir_node *block,
                     ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, op_pin_state state) {
        return new_rd_Quot(NULL, irg, block, memop, op1, op2, mode, state);
@@ -2645,6 +2653,7 @@ NEW_D_BINOP(Add)
 NEW_D_BINOP(Sub)
 NEW_D_UNOP(Minus)
 NEW_D_BINOP(Mul)
+NEW_D_BINOP(Mulh)
 
 /**
  * Allocate the frag array.
@@ -3216,6 +3225,9 @@ ir_node *new_Minus(ir_node *op,  ir_mode *mode) {
 ir_node *new_Mul(ir_node *op1, ir_node *op2, ir_mode *mode) {
        return new_d_Mul(NULL, op1, op2, mode);
 }
+ir_node *new_Mulh(ir_node *op1, ir_node *op2, ir_mode *mode) {
+       return new_d_Mulh(NULL, op1, op2, mode);
+}
 ir_node *new_Quot(ir_node *memop, ir_node *op1, ir_node *op2, ir_mode *mode, op_pin_state state) {
        return new_d_Quot(NULL, memop, op1, op2, mode, state);
 }