Lines Matching refs:expr

163   tree expr;
364 maybe_get_stmt (tree expr)
366 if (TREE_CODE (expr) == SSA_NAME && !SSA_NAME_IS_DEFAULT_DEF (expr))
367 return SSA_NAME_DEF_STMT (expr);
375 maybe_get_assign (tree expr)
377 return safe_dyn_cast <gassign *> (maybe_get_stmt (expr));
396 strip_casts (tree expr)
400 tree type = TREE_TYPE (expr);
401 while (CONVERT_EXPR_P (expr)
402 && look_through_cast_p (type, TREE_OPERAND (expr, 0)))
403 expr = TREE_OPERAND (expr, 0);
407 gassign *assign = maybe_get_assign (expr);
411 expr = gimple_assign_rhs1 (assign);
415 return expr;
426 if (a->expr != b->expr)
427 return SSA_NAME_VERSION (a->expr) < SSA_NAME_VERSION (b->expr) ? -1 : 1;
446 dump_printf (flags, "%T", address.terms[i].expr);
464 hash.add_int (SSA_NAME_VERSION (info->terms[i].expr));
485 if (a->terms[i].expr != b->terms[i].expr
760 tree expr = worklist[i];
762 if (CONSTANT_CLASS_P (expr))
766 if (acceptable_multiplier_p (expr, multiplier))
771 else if (gimple *stmt = maybe_get_stmt (expr))
893 gassign *mult = maybe_get_assign (term.expr);
917 " * loop-invariant %T\n", term.expr, op1, op2);
935 gimple *setter = maybe_get_stmt (term.expr);
943 tree chrec = strip_casts (analyze_scalar_evolution (wrt_loop, term.expr));
948 "address term %T = %T\n", term.expr, chrec);
996 tree expr = term.expr, alt = NULL_TREE;
997 gassign *mult = maybe_get_assign (expr);
1000 expr = strip_casts (gimple_assign_rhs1 (mult));
1003 term.stride = expr;
1004 term.inner_likelihood = get_inner_likelihood (expr, term.multiplier);
1100 && !POINTER_TYPE_P (TREE_TYPE (address.terms[i].expr)))
1191 tree expr,
1196 if (TREE_CODE (expr) != SSA_NAME)
1202 if (expr_invariant_in_loop_p (loop, expr))
1212 address->terms[0].expr = expr;
1231 if (gassign *assign = maybe_get_assign (address->terms[i].expr))
1242 address->terms[i].expr = strip_casts (op1);
1253 address->terms[i].expr = strip_casts (op1);
1254 address->terms[j].expr = strip_casts (op2);
1264 address->terms[i].expr = strip_casts (op1);
1271 address->terms[i].expr = strip_casts (op1);
1279 if (TREE_CODE (address->terms[0].expr) != SSA_NAME
1287 address->base = address->terms[0].expr;
1294 if (TREE_CODE (address->terms[i].expr) != SSA_NAME)
1309 dump_printf_loc (MSG_NOTE, stmt, "recording address fragment %T", expr);
1348 loop_versioning::analyze_expr (gimple *stmt, tree expr)
1352 while (handled_component_p (expr))
1356 if (TREE_CODE (expr) == ARRAY_REF
1357 && acceptable_type_p (TREE_TYPE (expr), &type_size))
1359 TREE_OPERAND (expr, 1), type_size, 0);
1360 expr = TREE_OPERAND (expr, 0);
1365 if (TREE_CODE (expr) == MEM_REF
1366 && acceptable_type_p (TREE_TYPE (expr), &type_size))
1367 record_address_fragment (stmt, type_size, TREE_OPERAND (expr, 0), 1,
1370 TREE_INT_CST_LOW (TREE_OPERAND (expr, 1)));
1373 gcc_checking_assert (TREE_CODE (expr) != TARGET_MEM_REF);