https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84877
--- Comment #17 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #15 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> --- > Created attachment 46574 > --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46574&action=edit > patch for the case that the stack is sufficiently aligned [...] > I have attached a patch to preserve the alignment of the passed type for the > case that the stack is already sufficiently aligned. This patch breaks sparc-sun-solaris2.11 bootstrap with an ICE while compiling stage2 function.c: during RTL pass: expand /vol/gcc/src/hg/trunk/local/gcc/function.c: In function 'void assign_parm_find_data_types(assign_parm_data_all*, tree, assign_parm_data_one*)': /vol/gcc/src/hg/trunk/local/gcc/function.c:2426:49: internal compiler error: in assign_stack_temp_for_type, at function.c:880 2426 | else if (targetm.calls.strict_argument_naming (all->args_so_far)) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ 0x11bc22f assign_stack_temp_for_type(machine_mode, poly_int<1u, long long>, tree_node*) /vol/gcc/src/hg/trunk/local/gcc/function.c:878 0x11bc963 assign_temp(tree_node*, int, int) /vol/gcc/src/hg/trunk/local/gcc/function.c:1016 0xeab99b initialize_argument_information /vol/gcc/src/hg/trunk/local/gcc/calls.c:2087 0xeb1957 expand_call(tree_node*, rtx_def*, int) /vol/gcc/src/hg/trunk/local/gcc/calls.c:3605 0x112a247 expand_expr_real_1(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /vol/gcc/src/hg/trunk/local/gcc/expr.c:11044 0x111919b expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier, rtx_def**, bool) /vol/gcc/src/hg/trunk/local/gcc/expr.c:8286 0x110a06b store_expr(tree_node*, rtx_def*, int, bool, bool) /vol/gcc/src/hg/trunk/local/gcc/expr.c:5685 0x11085bf expand_assignment(tree_node*, tree_node*, bool) /vol/gcc/src/hg/trunk/local/gcc/expr.c:5447 0xed8cb3 expand_call_stmt /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:2727 0xedd453 expand_gimple_stmt_1 /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:3708 0xedde3b expand_gimple_stmt /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:3867 0xee937f expand_gimple_basic_block /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:5907 0xeeb7c3 execute /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:6530