- reg = arch_get_irn_register(node);
- mem = be_get_Reload_mem(node);
- mode = get_irn_mode(node);
- irg = current_ir_graph;
- dbg = get_irn_dbg_info(node);
- block = get_nodes_block(node);
-
- if (mode_is_float(mode)) {
- if (USE_FPA(cg->isa)) {
- /* transform into fpaLdf */
- load = new_bd_arm_fpaLdf(dbg, block, ptr, mem, mode);
- sched_add_before(node, load);
- proj = new_rd_Proj(dbg, irg, block, load, mode, pn_arm_fpaLdf_res);
- arch_set_irn_register(proj, reg);
- } else {
- panic("peephole_be_Spill: spill not supported for this mode");
- }
- } else if (mode_is_dataM(mode)) {
- /* transform into Store */;
- load = new_bd_arm_Load(dbg, block, ptr, mem);
- sched_add_before(node, load);
- proj = new_rd_Proj(dbg, irg, block, load, mode_Iu, pn_arm_Load_res);
- arch_set_irn_register(proj, reg);