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()
230 uint32_t build_flags, zend_ssa *ssa, zend_dfg *dfg) /* {{{ */ { in place_essa_pis() argument
348 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
351 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
355 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, bt, var1))) { in place_essa_pis()
363 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
367 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
371 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var1))) { in place_essa_pis()
375 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var1))) { in place_essa_pis()
383 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
386 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
390 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, bt, var2))) { in place_essa_pis()
398 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
402 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
406 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var2))) { in place_essa_pis()
410 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var2))) { in place_essa_pis()
424 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
427 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
431 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
434 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
445 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
449 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
456 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
461 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
490 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
493 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bf, var))) { in place_essa_pis()
497 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, bt, var))) { in place_essa_pis()
517 if ((pi = add_pi(arena, op_array, dfg, ssa, j, bt, var))) { in place_essa_pis()
887 zend_dfg dfg; in zend_build_ssa() local
901 dfg.vars = op_array->last_var + op_array->T; in zend_build_ssa()
902 dfg.size = set_size = zend_bitset_len(dfg.vars); in zend_build_ssa()
903 dfg.tmp = do_alloca((set_size * sizeof(zend_ulong)) * (blocks_count * 4 + 1), dfg_use_heap); in zend_build_ssa()
904 memset(dfg.tmp, 0, (set_size * sizeof(zend_ulong)) * (blocks_count * 4 + 1)); in zend_build_ssa()
905 dfg.def = dfg.tmp + set_size; in zend_build_ssa()
906 dfg.use = dfg.def + set_size * blocks_count; in zend_build_ssa()
907 dfg.in = dfg.use + set_size * blocks_count; in zend_build_ssa()
908 dfg.out = dfg.in + set_size * blocks_count; in zend_build_ssa()
910 if (zend_build_dfg(op_array, &ssa->cfg, &dfg, build_flags) != SUCCESS) { in zend_build_ssa()
911 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
916 zend_dump_dfg(op_array, &ssa->cfg, &dfg); in zend_build_ssa()
919 def = dfg.def; in zend_build_ssa()
920 in = dfg.in; in zend_build_ssa()
923 phi = dfg.use; in zend_build_ssa()
928 place_essa_pis(arena, script, op_array, build_flags, ssa, &dfg); in zend_build_ssa()
965 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
1019 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()
1024 free_alloca(dfg.tmp, dfg_use_heap); in zend_build_ssa()