ir_graph *irg = get_irn_irg(block);
ir_node *sp = get_irg_frame(irg);
ir_node *nomem = get_irg_no_mem(irg);
- ir_node *stf = create_stf(dbgi, block, ftoi, sp, nomem, src_mode,
+ ir_node *stf = create_stf(dbgi, block, ftoi, sp, nomem, mode_fp,
NULL, 0, true);
ir_node *ld = new_bd_sparc_Ld_imm(dbgi, block, sp, stf, mode_gp,
NULL, 0, true);
(get_tarval_sub_bits(tv, 1) << 8) |
(get_tarval_sub_bits(tv, 2) << 16) |
(get_tarval_sub_bits(tv, 3) << 24);
- result[0] = create_int_const(block, val);
+ ir_node *valc = create_int_const(block, val);
if (bits == 64) {
- int32_t val = get_tarval_sub_bits(tv, 4) |
+ int32_t val2 = get_tarval_sub_bits(tv, 4) |
(get_tarval_sub_bits(tv, 5) << 8) |
(get_tarval_sub_bits(tv, 6) << 16) |
(get_tarval_sub_bits(tv, 7) << 24);
- result[1] = create_int_const(block, val);
+ ir_node *valc2 = create_int_const(block, val2);
+ result[0] = valc2;
+ result[1] = valc;
} else {
assert(bits == 32);
+ result[0] = valc;
result[1] = NULL;
}
} else {
case pn_Div_res:
return new_r_Proj(new_pred, res_mode, pn_sparc_SDiv_res);
case pn_Div_M:
- return new_r_Proj(new_pred, mode_gp, pn_sparc_SDiv_M);
+ return new_r_Proj(new_pred, mode_M, pn_sparc_SDiv_M);
default:
break;
}