From: Andreas Krebbel Date: Thu, 7 Feb 2008 19:01:45 +0000 (+0000) Subject: s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit. X-Git-Tag: releases/gcc-4.3.0~239 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=96e2afa84b540bd4d2c6f019a1fa0ddbc64e565d;p=thirdparty%2Fgcc.git s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit. 2008-02-07 Andreas Krebbel * config/s390/s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit. From-SVN: r132172 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 370d11f08123..85c637492419 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,4 +1,8 @@ -2008-07-07 Richard Henderson +2008-02-07 Andreas Krebbel + + * config/s390/s390.h (FUNCTION_ARG_REGNO_P): Fix fprs for 64 bit. + +2008-02-07 Richard Henderson PR rtl-opt/33410 * config/alpha/alpha.c (alpha_emit_xfloating_compare): Use an diff --git a/gcc/config/s390/s390.h b/gcc/config/s390/s390.h index a19cdd4920fe..391ac1ce5e71 100644 --- a/gcc/config/s390/s390.h +++ b/gcc/config/s390/s390.h @@ -636,10 +636,11 @@ CUMULATIVE_ARGS; #define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \ s390_function_arg (&CUM, MODE, TYPE, NAMED) -/* Arguments can be placed in general registers 2 to 6, - or in floating point registers 0 and 2. */ +/* Arguments can be placed in general registers 2 to 6, or in floating + point registers 0 and 2 for 31 bit and fprs 0, 2, 4 and 6 for 64 + bit. */ #define FUNCTION_ARG_REGNO_P(N) (((N) >=2 && (N) <7) || \ - (N) == 16 || (N) == 17) + (N) == 16 || (N) == 17 || (TARGET_64BIT && ((N) == 18 || (N) == 19))) /* Scalar return values. */