From: Jeffrey A Law Date: Tue, 3 Aug 1999 20:17:38 +0000 (+0000) Subject: pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for PA1.1 and above. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=156e68b7562a3fbdac0c27d2e4806623b7d188c6;p=gcc.git pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for PA1.1 and above. * pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for PA1.1 and above. (CLASS_MAX_NREGS): Likewise. From-SVN: r28478 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index df51bf60f76..b51cc4155ed 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Tue Aug 3 14:14:52 1999 Jeffrey A Law (law@cygnus.com) + + * pa.h (HARD_REGNO_NREGS): FP registers are always 4 bytes wide for + PA1.1 and above. + (CLASS_MAX_NREGS): Likewise. + Tue Aug 3 03:51:20 1999 Jeffrey A Law (law@cygnus.com) * cse.c (cse_insn): Fix dumb thinko in last change. diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index fe51937f70f..5bb196cf9fe 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -563,7 +563,8 @@ int lhs_lshift_cint_operand (); The floating point registers are 64 bits wide. Snake fp regs are 32 bits wide */ #define HARD_REGNO_NREGS(REGNO, MODE) \ - (!TARGET_PA_11 && FP_REGNO_P (REGNO) ? 1 \ + (FP_REGNO_P (REGNO) \ + ? (!TARGET_PA_11 ? 1 : (GET_MODE_SIZE (MODE) + 4 - 1) / 4) \ : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)) /* Value is 1 if hard register REGNO can hold a value of machine-mode MODE. @@ -783,8 +784,10 @@ int zdepi_cint_p (); /* Return the maximum number of consecutive registers needed to represent mode MODE in a register of class CLASS. */ #define CLASS_MAX_NREGS(CLASS, MODE) \ - (!TARGET_PA_11 && ((CLASS) == FP_REGS || (CLASS) == FPUPPER_REGS) ? 1 : \ - ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)) + ((CLASS) == FP_REGS || (CLASS) == FPUPPER_REGS \ + ? (!TARGET_PA_11 ? 1 : (GET_MODE_SIZE (MODE) + 4 - 1) / 4) \ + : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)) + /* Stack layout; function entry, exit and calling. */