From: Doug Evans Date: Mon, 12 Dec 1994 18:14:40 +0000 (+0000) Subject: (locate_and_pad_parm): Don't call pad_below for BLKmode parms in regs. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ea5917da8d3794e8eb162ed1c6d6bb5a76ba2607;p=gcc.git (locate_and_pad_parm): Don't call pad_below for BLKmode parms in regs. From-SVN: r8645 --- diff --git a/gcc/function.c b/gcc/function.c index 7e50c844b7e..ba1265b3ace 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -4017,7 +4017,10 @@ locate_and_pad_parm (passed_mode, type, in_regs, fndecl, /* Pad_below needs the pre-rounded size to know how much to pad below so this must be done before rounding up. */ - if (where_pad == downward) + if (where_pad == downward + /* However, BLKmode args passed in regs have their padding done elsewhere. + The stack slot must be able to hold the entire register. */ + && !(in_regs && passed_mode == BLKmode)) pad_below (offset_ptr, passed_mode, sizetree); if (where_pad != none