-/* Discover if the stack pointer is modified in a function.
- Copyright (C) 2007
+/* Discover if the stack pointer is modified in a function.
+ Copyright (C) 2007, 2008, 2009
Free Software Foundation, Inc.
This file is part of GCC.
Only useful before prologues have been emitted. */
static void
-notice_stack_pointer_modification_1 (rtx x, rtx pat ATTRIBUTE_UNUSED,
+notice_stack_pointer_modification_1 (rtx x, const_rtx pat ATTRIBUTE_UNUSED,
void *data ATTRIBUTE_UNUSED)
{
if (x == stack_pointer_rtx
/* Assume that the stack pointer is unchanging if alloca hasn't
been used. */
- current_function_sp_is_unchanging = !current_function_calls_alloca;
+ current_function_sp_is_unchanging = !cfun->calls_alloca;
if (current_function_sp_is_unchanging)
FOR_EACH_BB (bb)
FOR_BB_INSNS (bb, insn)
return 0;
}
-struct tree_opt_pass pass_stack_ptr_mod =
+struct rtl_opt_pass pass_stack_ptr_mod =
{
- NULL, /* name */
+ {
+ RTL_PASS,
+ "*stack_ptr_mod", /* name */
NULL, /* gate */
rest_of_handle_stack_ptr_mod, /* execute */
NULL, /* sub */
NULL, /* next */
0, /* static_pass_number */
- 0, /* tv_id */
+ TV_NONE, /* tv_id */
0, /* properties_required */
0, /* properties_provided */
0, /* properties_destroyed */
0, /* todo_flags_start */
- 0, /* todo_flags_finish */
- 0 /* letter */
+ 0 /* todo_flags_finish */
+ }
};