From 2425db7e1783d3e8f599051367bff707467c89ef Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Mon, 4 Mar 1996 15:38:50 -0800 Subject: (PASS_IN_REG_P): Don't reject BLKmode for SH3e. For SH3e, do reject parameter that won't fit entirely in registers. From-SVN: r11424 --- gcc/config/sh/sh.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'gcc') diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 13ff97d..6f260fc 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -732,8 +732,7 @@ struct sh_args { #define PASS_IN_REG_P(CUM, MODE, TYPE) \ (ROUND_REG ((CUM), (MODE)) < NPARM_REGS (MODE) \ && ((TYPE) == 0 || ! TREE_ADDRESSABLE ((tree)(TYPE))) \ - /* ??? This is questionable. Should perhaps be deleted. */ \ - && (! TARGET_SH3E || (TYPE) == 0 || (MODE) != BLKmode)) + && (TARGET_SH3E && (ROUND_REG((CUM), (MODE)) + (GET_MODE_SIZE(MODE)/4) < NPARM_REGS (MODE)))) /* Define where to put the arguments to a function. Value is zero to push the argument on the stack, -- cgit v1.1