------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-07-14 07:46 ------- Subject: Bug 22347
CVSROOT: /cvs/gcc Module name: gcc Changes by: [EMAIL PROTECTED] 2005-07-14 07:46:23 Modified files: gcc : ChangeLog gcc/config/i386: i386-protos.h i386.c i386.h Added files: gcc/testsuite/gcc.target/i386: sseregparm-3.c sseregparm-4.c sseregparm-5.c sseregparm-6.c sseregparm-7.c Log message: 2005-07-14 Richard Guenther <[EMAIL PROTECTED]> PR middle-end/22347 * config/i386/i386-protos.h (ix86_function_value): Change prototype to match new target hook. * config/i386/i386.c (ix86_value_regno): Change prototype to take extra type argument. (TARGET_FUNCTION_VALUE): Define. (ix86_function_ok_for_sibcall): Pass extra argument to ix86_value_regno, check return slot rtx for exact match. (ix86_function_value): Take extra parameter. Dispatch to ix86_value_regno with fndecl/fntype as provided. (ix86_value_regno): Handle extra type argument. * config/i386/i386.h (FUNCTION_VALUE): No longer define. * testsuite/gcc.target/i386/sseregparm-3.c: New testcase. * testsuite/gcc.target/i386/sseregparm-4.c: New testcase. * testsuite/gcc.target/i386/sseregparm-5.c: New testcase. * testsuite/gcc.target/i386/sseregparm-6.c: New testcase. * testsuite/gcc.target/i386/sseregparm-7.c: New testcase. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.9442&r2=2.9443 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386-protos.h.diff?cvsroot=gcc&r1=1.143&r2=1.144 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&r1=1.841&r2=1.842 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.h.diff?cvsroot=gcc&r1=1.440&r2=1.441 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/i386/sseregparm-3.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/i386/sseregparm-4.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/i386/sseregparm-5.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/i386/sseregparm-6.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.target/i386/sseregparm-7.c.diff?cvsroot=gcc&r1=NONE&r2=1.1 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22347