Lines Matching refs:block

36   // First compute which FPU registers are live at the start of each basic block
59 // the block must not have any spill moves at the beginning (checked by assertions)
63 // NOTE: the check for number_of_preds > 1 is necessary. A block with only one
64 // predecessor may have spill moves at the begin of the block.
66 // to decide if the register is live or not at the block begin -> the
73 iw.walk_to(id); // walk after the first instruction (always a label) of the block
98 tty->print("FPU regs for block %d, LIR instr %d): ", b->block_id(), id); regs.print_on(tty); tty->print_cr("");
124 // Set up to process block
125 BlockBegin* block = allocator()->block_at(i);
126 intArray* fpu_stack_state = block->fpu_stack_state();
131 tty->print_cr("------- Begin of new Block %d -------", block->block_id());
136 block->end()->as_Base() != NULL ||
137 block->is_set(BlockBegin::exception_entry_flag),
150 tty->print("Reading FPU state for block %d:", block->block_id());
156 allocate_block(block);
161 void FpuStackAllocator::allocate_block(BlockBegin* block) {
163 LIR_OpList* insts = block->lir()->instructions_list();
164 set_lir(block->lir());
185 if (branch != NULL && branch->block() != NULL) {
189 bool required_merge = merge_fpu_stack_with_successors(block);
207 // Propagate stack when block does not end with branch
209 merge_fpu_stack_with_successors(block);
1138 bool FpuStackAllocator::merge_fpu_stack_with_successors(BlockBegin* block) {
1142 block->block_id(), pos());
1149 int number_of_sux = block->number_of_sux();
1151 if (number_of_sux == 1 && block->sux_at(0)->number_of_preds() > 1) {
1153 // If this block is the first predecessor, cleanup the current stack and propagate it
1154 // If this block is not the first predecessor, a stack merge will be necessary
1156 BlockBegin* sux = block->sux_at(0);
1162 // the block must only have one successor because critical edges must been split
1174 BitMap live_fpu_regs = block->sux_at(0)->fpu_register_usage();
1198 BlockBegin* sux = block->sux_at(i);
1202 assert(block == sux->pred_at(j), "all critical edges must be broken");
1229 BlockBegin* sux = block->sux_at(i);