aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.h
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2004-05-10 23:25:13 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2004-05-10 23:25:13 +0000
commit726d4cb79ca4a963491a2faeb74641e6ae716b74 (patch)
treeaeb2d5e436b16aa338bd7429b2513cc5e20811c8 /gcc/expr.h
parent0c196bf9d84c1d3b638bb4cd5f9e088b861afa08 (diff)
downloadgcc-726d4cb79ca4a963491a2faeb74641e6ae716b74.zip
gcc-726d4cb79ca4a963491a2faeb74641e6ae716b74.tar.gz
gcc-726d4cb79ca4a963491a2faeb74641e6ae716b74.tar.bz2
re PR target/15130 ([3.3/3.4][sh4-linux] miscompilation with -O2)
PR target/15130 * config/sh/sh-protos.h (sh_expand_epilogue): Change prototype. * config/sh/sh.c (output_stack_adjust): Take the sibcall epilogue into account. Compute the correct number of general registers for the return value. Generate a special push/pop sequence when failing to get a temporary register for non SHmedia epilogue. (sh_expand_epilogue): Add an argument to show whether it's for sibcall or not. Set the 3rd argument of output_stack_adjust to -1 if needed. (sh_need_epilogue): Call sh_expand_epilogue with 0. * config/sh/sh.md (sibcall_epilogue): Call sh_expand_epilogue with 1. (epilogue): Call sh_expand_epilogue with 0. From-SVN: r81683
Diffstat (limited to 'gcc/expr.h')
0 files changed, 0 insertions, 0 deletions