[Bug middle-end/37316] [4.4 Regression] Small structs are not passed correctly on hppa64-*-*

dave at hiauly1 dot hia dot nrc dot ca gcc-bugzilla@gcc.gnu.org
Sat Oct 25 17:50:00 GMT 2008



------- Comment #19 from dave at hiauly1 dot hia dot nrc dot ca  2008-10-25 17:48 -------
Subject: Re:  [4.4 Regression] Small structs are not passed correctly on
hppa64-*-*

> @@ -9277,7 +9281,7 @@
>  	      offset += 8;
>  	    }
>  
> -	  return gen_rtx_PARALLEL (mode, gen_rtvec_v (ub, loc));
> +	  return gen_rtx_PARALLEL (BLKmode, gen_rtvec_v (ub, loc));
>  	}
>       }
>    else

Actually, I see that by treating aggregate, complex and vector arguments
as BLKmode, we avoid the conversion of the PARALLEL to a REG (i.e., the
call to emit_group_store in assign_parm_remove_parallels).  Given the
issues Jakub pointed out with emit_group_store, this seems desireable
but I'm not sure.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37316



More information about the Gcc-bugs mailing list