[Patch, microblaze]: Add TARGET_ASM_OUTPUT_MI_THUNK to support varargs thunk

Michael Eager eager@eagerm.com
Mon Jul 15 15:55:00 GMT 2013


On 07/14/13 21:37, David Holsgrove wrote:
> Hi Michael,
>
>> -----Original Message-----
>> From: Michael Eager [mailto:eager@eagerm.com]
>> Sent: Saturday, 13 July 2013 9:33 am
>> To: David Holsgrove
>> Cc: gcc-patches@gcc.gnu.org; Edgar Iglesias; John Williams; Vinod Kathail;
>> Vidhumouli Hunsigida; Nagaraju Mekala; Tom Shui
>> Subject: Re: [Patch, microblaze]: Add TARGET_ASM_OUTPUT_MI_THUNK to
>> support varargs thunk
>>
>> On 03/18/13 05:49, David Holsgrove wrote:
>>> Changelog
>>>
>>> 2013-03-18  David Holsgrove <david.holsgrove@xilinx.com>
>>>
>>>    * gcc/config/microblaze/microblaze.c: Add microblaze_asm_output_mi_thunk
>>>      and define TARGET_ASM_OUTPUT_MI_THUNK and
>> TARGET_ASM_CAN_OUTPUT_MI_THUNK
>>
>> Sorry it has taken so long to review this patch.
>>
>> The gcc microblaze-xilinx-elf build with this patch fails here:
>>
>> +microblaze_asm_output_mi_thunk (FILE *file, tree thunk_fndecl
>> ATTRIBUTE_UNUSED,
>> +				HOST_WIDE_INT delta, HOST_WIDE_INT
>> vcall_offset,
>> +				tree function)
>> ...
>> +  emit_insn (gen_jump (funexp));
>>
>> (actually, in output_operand() downstream from this statement) while compiling
>> c++98/strstream.cc, with an error that the "%l" operand was not a label.
>>
>> This is the first occasion when this routine is called.
>>
>
> I had sent a separate patch which should have been applied prior to this one which
> extended the jump insn to accommodate branching without the "%l" print operand,
> but I've since reworked our thunk support to avoid needing this second patch.

When that patch was not accepted, I moved on to the next submission.
Please make sure that patches identify that they are dependent on
previous patches.

Thanks for reworking the patch to be independent.

> I'll post updated patches on the other threads out for review now.

Thanks.


-- 
Michael Eager	 eager@eagercon.com
1960 Park Blvd., Palo Alto, CA 94306  650-325-8077



More information about the Gcc-patches mailing list