Lines Matching refs:j
245 int j, blocks_count = ssa->cfg.blocks_count; in place_essa_pis() local
246 for (j = 0; j < blocks_count; j++) { in place_essa_pis()
248 zend_op *opline = op_array->opcodes + blocks[j].start + blocks[j].len - 1; in place_essa_pis()
252 if ((blocks[j].flags & ZEND_BB_REACHABLE) == 0 || blocks[j].len == 0) { in place_essa_pis()
260 bf = blocks[j].successors[0]; in place_essa_pis()
261 bt = blocks[j].successors[1]; in place_essa_pis()
264 bt = blocks[j].successors[0]; in place_essa_pis()
265 bf = blocks[j].successors[1]; in place_essa_pis()
270 if ((pi = add_pi(arena, op_array, dfg, ssa, j, blocks[j].successors[0], var))) { in place_essa_pis()
278 if ((pi = add_pi(arena, op_array, dfg, ssa, j, blocks[j].successors[1], var))) { in place_essa_pis()
290 if (blocks[j].len == 1) { in place_essa_pis()
368 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
371 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
375 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
378 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
383 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
387 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
391 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
395 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
403 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
406 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
410 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
413 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
418 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
422 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
426 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
430 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
444 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
447 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
451 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
454 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
465 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
469 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
476 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
481 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
510 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
513 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
517 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
520 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
534 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
825 int i, j; in zend_ssa_rename() local
878 for (j = 0; j < blocks[succ].predecessors_count; j++) { in zend_ssa_rename()
879 p->sources[j] = var[p->var]; in zend_ssa_rename()
887 for (j = 0; j < blocks[succ].predecessors_count; j++) in zend_ssa_rename()
888 if (ssa->cfg.predecessors[blocks[succ].predecessor_offset + j] == n) { in zend_ssa_rename()
891 ZEND_ASSERT(j < blocks[succ].predecessors_count); in zend_ssa_rename()
892 p->sources[j] = var[p->var]; in zend_ssa_rename()
893 if (fe_fetch_ssa_op && i == 0 && p->sources[j] == fe_fetch_ssa_op->op2_def) { in zend_ssa_rename()
895 p->sources[j] = fe_fetch_ssa_op->op2_use; in zend_ssa_rename()
904 for (j = 0; j < blocks[succ].predecessors_count; j++) { in zend_ssa_rename()
905 if (ssa->cfg.predecessors[blocks[succ].predecessor_offset + j] == n) { in zend_ssa_rename()
909 ZEND_ASSERT(j < blocks[succ].predecessors_count); in zend_ssa_rename()
910 q->sources[j] = p->ssa_var; in zend_ssa_rename()
920 j = blocks[n].children; in zend_ssa_rename()
921 while (j >= 0) { in zend_ssa_rename()
923 if (zend_ssa_rename(op_array, build_flags, ssa, var, j) == FAILURE) in zend_ssa_rename()
925 j = blocks[j].next_child; in zend_ssa_rename()
944 int i, j, k, changed; in zend_build_ssa() local
987 for (j = 0; j < blocks_count; j++) { in zend_build_ssa()
988 zend_bitset def_j = def + j * set_size, phi_j = phi + j * set_size; in zend_build_ssa()
989 if ((blocks[j].flags & ZEND_BB_REACHABLE) == 0) { in zend_build_ssa()
992 if (blocks[j].predecessors_count > 1) { in zend_build_ssa()
993 if (blocks[j].flags & ZEND_BB_IRREDUCIBLE_LOOP) { in zend_build_ssa()
997 zend_bitset_union(phi_j, in + (j * set_size), set_size); in zend_build_ssa()
999 for (k = 0; k < blocks[j].predecessors_count; k++) { in zend_build_ssa()
1000 i = ssa->cfg.predecessors[blocks[j].predecessor_offset + k]; in zend_build_ssa()
1001 while (i != -1 && i != blocks[j].idom) { in zend_build_ssa()
1003 phi_j, phi_j, def + (i * set_size), in + (j * set_size), set_size); in zend_build_ssa()
1023 for (j = 0; j < blocks_count; j++) { in zend_build_ssa()
1024 if ((blocks[j].flags & ZEND_BB_REACHABLE) == 0) { in zend_build_ssa()
1027 if (!zend_bitset_empty(phi + j * set_size, set_size)) { in zend_build_ssa()
1028 ZEND_BITSET_REVERSE_FOREACH(phi + j * set_size, set_size, i) { in zend_build_ssa()
1031 ZEND_MM_ALIGNED_SIZE(sizeof(int) * blocks[j].predecessors_count) + in zend_build_ssa()
1032 sizeof(void*) * blocks[j].predecessors_count); in zend_build_ssa()
1035 memset(phi->sources, 0xff, sizeof(int) * blocks[j].predecessors_count); in zend_build_ssa()
1036 …(((char*)phi->sources) + ZEND_MM_ALIGNED_SIZE(sizeof(int) * ssa->cfg.blocks[j].predecessors_count)… in zend_build_ssa()
1044 zend_ssa_phi **pp = &ssa_blocks[j].phis; in zend_build_ssa()
1067 for (j = 0; j < op_array->last_var; j++) { in zend_build_ssa()
1068 var[j] = j; in zend_build_ssa()
1166 int j; in zend_ssa_compute_use_def_chains() local
1168 for (j = 0; j < ssa->cfg.blocks[i].predecessors_count; j++) { in zend_ssa_compute_use_def_chains()
1171 ZEND_ASSERT(phi->sources[j] >= 0); in zend_ssa_compute_use_def_chains()
1172 p = ssa_vars[phi->sources[j]].phi_use_chain; in zend_ssa_compute_use_def_chains()
1174 p = zend_ssa_next_use_phi(ssa, phi->sources[j], p); in zend_ssa_compute_use_def_chains()
1177 phi->use_chains[j] = ssa_vars[phi->sources[j]].phi_use_chain; in zend_ssa_compute_use_def_chains()
1178 ssa_vars[phi->sources[j]].phi_use_chain = phi; in zend_ssa_compute_use_def_chains()
1317 int j; in zend_ssa_next_use_phi_ptr() local
1318 for (j = 0; j < ssa->cfg.blocks[p->block].predecessors_count; j++) { in zend_ssa_next_use_phi_ptr()
1319 if (p->sources[j] == var) { in zend_ssa_next_use_phi_ptr()
1320 return &p->use_chains[j]; in zend_ssa_next_use_phi_ptr()
1383 int j, var_num = phi->sources[pred_offset]; in zend_ssa_remove_phi_source() local
1394 for (j = 0; j < predecessors_count; j++) { in zend_ssa_remove_phi_source()
1395 if (phi->sources[j] == var_num) { in zend_ssa_remove_phi_source()
1396 if (j < pred_offset) { in zend_ssa_remove_phi_source()
1398 } else if (j >= pred_offset) { in zend_ssa_remove_phi_source()
1399 phi->use_chains[j] = next_phi; in zend_ssa_remove_phi_source()
1460 int j; in zend_ssa_remove_predecessor() local
1466 for (j = 0; j < next_block->predecessors_count; j++) { in zend_ssa_remove_predecessor()
1467 if (predecessors[j] == from) { in zend_ssa_remove_predecessor()
1468 pred_offset = j; in zend_ssa_remove_predecessor()
1506 int j; in zend_ssa_remove_block() local
1517 for (j = block->start; j < block->start + block->len; j++) { in zend_ssa_remove_block()
1518 if (op_array->opcodes[j].opcode == ZEND_NOP) { in zend_ssa_remove_block()
1522 zend_ssa_remove_defs_of_instr(ssa, &ssa->ops[j]); in zend_ssa_remove_block()
1523 zend_ssa_remove_instr(ssa, &op_array->opcodes[j], &ssa->ops[j]); in zend_ssa_remove_block()
1534 int j, s; in zend_ssa_remove_block_from_cfg() local
1542 for (j = 0; j < block->predecessors_count; j++) { in zend_ssa_remove_block_from_cfg()
1543 if (predecessors[j] >= 0) { in zend_ssa_remove_block_from_cfg()
1544 zend_basic_block *prev_block = &ssa->cfg.blocks[predecessors[j]]; in zend_ssa_remove_block_from_cfg()
1563 j = ssa->cfg.blocks[block->idom].children; in zend_ssa_remove_block_from_cfg()
1564 if (j == i) { in zend_ssa_remove_block_from_cfg()
1566 } else if (j >= 0) { in zend_ssa_remove_block_from_cfg()
1567 while (ssa->cfg.blocks[j].next_child >= 0) { in zend_ssa_remove_block_from_cfg()
1568 if (ssa->cfg.blocks[j].next_child == i) { in zend_ssa_remove_block_from_cfg()
1569 ssa->cfg.blocks[j].next_child = block->next_child; in zend_ssa_remove_block_from_cfg()
1572 j = ssa->cfg.blocks[j].next_child; in zend_ssa_remove_block_from_cfg()
1665 int j; in zend_ssa_rename_var_uses() local
1671 for (j = 0; j < ssa->cfg.blocks[phi->block].predecessors_count; j++) { in zend_ssa_rename_var_uses()
1672 if (phi->sources[j] == new) { in zend_ssa_rename_var_uses()
1673 existing_use_chain_ptr = &phi->use_chains[j]; in zend_ssa_rename_var_uses()
1678 for (j = 0; j < ssa->cfg.blocks[phi->block].predecessors_count; j++) { in zend_ssa_rename_var_uses()
1679 if (phi->sources[j] == new) { in zend_ssa_rename_var_uses()
1681 } else if (phi->sources[j] == old) { in zend_ssa_rename_var_uses()
1682 phi->sources[j] = new; in zend_ssa_rename_var_uses()
1688 phi->use_chains[j] = *existing_use_chain_ptr; in zend_ssa_rename_var_uses()
1691 phi->use_chains[j] = new_var->phi_use_chain; in zend_ssa_rename_var_uses()
1696 phi->use_chains[j] = NULL; in zend_ssa_rename_var_uses()