Lines Matching refs:dfg

47 static zend_bool needs_pi(const zend_op_array *op_array, zend_dfg *dfg, zend_ssa *ssa, int from, in…  in needs_pi()  argument
52 if (!DFG_ISSET(dfg->in, dfg->size, to, var)) { in needs_pi()
80 zend_arena **arena, const zend_op_array *op_array, zend_dfg *dfg, zend_ssa *ssa, in add_pi() argument
84 if (!needs_pi(op_array, dfg, ssa, from, to, var)) { in add_pi()
105 DFG_SET(dfg->def, dfg->size, to, var); in add_pi()
111 DFG_SET(dfg->use, dfg->size, to, var); in add_pi()
241 uint32_t build_flags, zend_ssa *ssa, zend_dfg *dfg) /* {{{ */ { in place_essa_pis() argument
351 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
354 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
358 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
361 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
366 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
370 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
374 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
378 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
386 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
389 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
393 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
396 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
401 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
405 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
409 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
413 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
427 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
430 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
434 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
437 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
448 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
452 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
459 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
464 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
493 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
496 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
500 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
503 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
520 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
866 zend_dfg dfg; in zend_build_ssa() local
880 dfg.vars = op_array->last_var + op_array->T; in zend_build_ssa()
881 dfg.size = set_size = zend_bitset_len(dfg.vars); in zend_build_ssa()
882 dfg.tmp = do_alloca((set_size * sizeof(zend_ulong)) * (blocks_count * 4 + 1), dfg_use_heap); in zend_build_ssa()
883 memset(dfg.tmp, 0, (set_size * sizeof(zend_ulong)) * (blocks_count * 4 + 1)); in zend_build_ssa()
884 dfg.def = dfg.tmp + set_size; in zend_build_ssa()
885 dfg.use = dfg.def + set_size * blocks_count; in zend_build_ssa()
886 dfg.in = dfg.use + set_size * blocks_count; in zend_build_ssa()
887 dfg.out = dfg.in + set_size * blocks_count; in zend_build_ssa()
889 if (zend_build_dfg(op_array, &ssa->cfg, &dfg, build_flags) != SUCCESS) { in zend_build_ssa()
890 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
895 zend_dump_dfg(op_array, &ssa->cfg, &dfg); in zend_build_ssa()
898 def = dfg.def; in zend_build_ssa()
899 in = dfg.in; in zend_build_ssa()
902 phi = dfg.use; in zend_build_ssa()
907 place_essa_pis(arena, script, op_array, build_flags, ssa, &dfg); in zend_build_ssa()
944 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
998 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
1003 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()