* A helper struct for the bias walker.
*/
typedef struct bias_walk {
- int start_block_bias; /**< The bias at the end of the start block. */
- int between_size;
- ir_node *start_block; /**< The start block of the current graph. */
+ int start_block_bias; /**< The bias at the end of the start block. */
+ ir_node *start_block; /**< The start block of the current graph. */
} bias_walk;
/**
/* fill in real stack frame size */
if (be_get_IncSP_align(irn)) {
/* patch IncSP to produce an aligned stack pointer */
- ir_type *between_type = layout->between_type;
- int between_size = get_type_size_bytes(between_type);
- int alignment = 1 << arch_env->stack_alignment;
- int delta = (real_bias + ofs + between_size) & (alignment - 1);
+ int const between_size = get_type_size_bytes(layout->between_type);
+ int const alignment = 1 << arch_env->stack_alignment;
+ int const delta = (real_bias + ofs + between_size) & (alignment - 1);
assert(ofs >= 0);
if (delta > 0) {
be_set_IncSP_offset(irn, ofs + alignment - delta);
/* Determine the stack bias at the end of the start block. */
bw.start_block_bias = process_stack_bias(get_irg_start_block(irg),
stack_layout->initial_bias);
- bw.between_size = get_type_size_bytes(stack_layout->between_type);
/* fix the bias is all other blocks */
bw.start_block = get_irg_start_block(irg);
new_sp_req = OALLOCZ(obst, arch_register_req_t);
new_sp_req->type = arch_register_req_type_limited
| arch_register_req_type_produces_sp;
- new_sp_req->cls = arch_register_get_class(arch_env->sp);
+ new_sp_req->cls = arch_env->sp->reg_class;
new_sp_req->width = 1;
limited_bitset = rbitset_obstack_alloc(obst, new_sp_req->cls->n_regs);