------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-09-14 21:29 ------- Subject: Bug 23868
CVSROOT: /cvs/gcc Module name: gcc Branch: sh-elf-4_1-branch Changes by: [EMAIL PROTECTED] 2005-09-14 21:29:08 Modified files: gcc/config/sh : sh.c sh.h sh.md gcc/doc : tm.texi Log message: 2005-09-14 J"orn Rennecke <[EMAIL PROTECTED]> Kaz Kojima <[EMAIL PROTECTED]> PR middle-end/23868 http://gcc.gnu.org/ml/gcc-patches/2005-08/msg00129.html * target.h (struct gcc_target): Add new member calls.apply_result_mode. * target-def.h (TARGET_APPLY_RESULT_MODE): Define. (TARGET_CALLS): Add TARGET_APPLY_RESULT_MODE. * targhooks.c (regs.h, hard-reg-set.h): Include. (apply_result_mode_1reg, apply_result_mode_scanreg): New functions. * targhooks.h (apply_result_mode_1reg): Declare. (apply_result_mode_scanreg): Likewise. * buitins.c (apply_result_size): Use targetm.apply_result_mode. * doc/tm.texi (TARGET_APPLY_RESULT_MODE): Document. * mode-switching.c (create_pre_exit): Cope with USEs made by builtin_return which are wider than the last function result USE. 2005-09-14 J"orn Rennecke <[EMAIL PROTECTED]> PR middle-end/23868 http://gcc.gnu.org/ml/gcc-patches/2005-08/msg00129.html * sh.c (sh_apply_result_mode): New function. (TARGET_APPLY_RESULT_MODE): Redefine. * sh.md (UNSPEC_CALL_RESULT): New constant. (untyped_call_result): New pattern. (untyped_call): Use it to make function result assignments visible. Remove expander predicate. (untyped_return): New pattern. * sh.h (HARD_REGNO_MODE_OK): Fix handling of DCmode. (LEGITIMIZE_RELOAD_ADDRESS): For TARGET_SHMEDIA32, reload inside of 64 bit reg+reg address as needed. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.c.diff?cvsroot=gcc&only_with_tag=sh-elf-4_1-branch&r1=1.319.2.9&r2=1.319.2.10 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.h.diff?cvsroot=gcc&only_with_tag=sh-elf-4_1-branch&r1=1.262.2.8&r2=1.262.2.9 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sh/sh.md.diff?cvsroot=gcc&only_with_tag=sh-elf-4_1-branch&r1=1.191.2.5&r2=1.191.2.6 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/tm.texi.diff?cvsroot=gcc&only_with_tag=sh-elf-4_1-branch&r1=1.421.2.5&r2=1.421.2.6 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23868