aboutsummaryrefslogtreecommitdiff
path: root/gcc/builtins.c
diff options
context:
space:
mode:
authorRichard Sandiford <richard.sandiford@arm.com>2015-07-05 07:52:32 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2015-07-05 07:52:32 +0000
commit4476e1a0be33ffe20597498e0e2549331ebbb2f9 (patch)
tree1bd85710447de0b17fabb16103093265b42a2709 /gcc/builtins.c
parenteb6f47fb90994bc9021b42119a51f56aa706fe14 (diff)
downloadgcc-4476e1a0be33ffe20597498e0e2549331ebbb2f9.zip
gcc-4476e1a0be33ffe20597498e0e2549331ebbb2f9.tar.gz
gcc-4476e1a0be33ffe20597498e0e2549331ebbb2f9.tar.bz2
gcc/
* target-insns.def (restore_stack_block, restore_stack_function) (restore_stack_nonlocal, save_stack_block, save_stack_function) (save_stack_nonlocal): New targetm instruction patterns. * builtins.c (expand_builtin_apply): Use them instead of HAVE_*/gen_* interface. * explow.c (emit_stack_save, emit_stack_restore): Likewise. From-SVN: r225426
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r--gcc/builtins.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c
index d953c63..3110d0a 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -1611,11 +1611,9 @@ expand_builtin_apply (rtx function, rtx arguments, rtx argsize)
NO_DEFER_POP;
/* Save the stack with nonlocal if available. */
-#ifdef HAVE_save_stack_nonlocal
- if (HAVE_save_stack_nonlocal)
+ if (targetm.have_save_stack_nonlocal ())
emit_stack_save (SAVE_NONLOCAL, &old_stack_level);
else
-#endif
emit_stack_save (SAVE_BLOCK, &old_stack_level);
/* Allocate a block of memory onto the stack and copy the memory
@@ -1732,11 +1730,9 @@ expand_builtin_apply (rtx function, rtx arguments, rtx argsize)
add_function_usage_to (call_insn, call_fusage);
/* Restore the stack. */
-#ifdef HAVE_save_stack_nonlocal
- if (HAVE_save_stack_nonlocal)
+ if (targetm.have_save_stack_nonlocal ())
emit_stack_restore (SAVE_NONLOCAL, old_stack_level);
else
-#endif
emit_stack_restore (SAVE_BLOCK, old_stack_level);
fixup_args_size_notes (call_insn, get_last_insn (), 0);