[PATCH] New port m32r-linux target

Nick Clifton nickc@redhat.com
Wed Dec 31 12:21:00 GMT 2003


Hi Kazuhiro,

> This patch is for m32r-linux and PIC support.

I have applied all of this patch apart from one section:

> gcc/ChangeLog
> 2003-12-22 Kazuhiro Inaoka < inaoka dot kazuhiro at renesas dot com >
>
>       Support PIC. Support m32r-linux target, Support TRAMPOLINE.
>       * config.sub: Added little-endian-target.

This file is not in the gcc/ directory.  It is a top level file and it
is maintained separately from gcc.  I cannot approve changes to this
file, so you will need to submit a separate patch to:

  config-patches@gnu.org


Also, your ChangeLog entry included this line:

>         * doc/invoke.texi: Add -mflush-func, -mflush-trap options.

But there was no patch to add this documentation.  I have taken the
libiberty of generating my own patch (attached) which is my guess as
to what was intended here.  Please let me know if you have any problems
with it.


Finally, I have also generated a small gcc web page patch (attached)
to announce the available of an m32r-linux target in gcc 3.4.  I have
not mentioned the support for little-endian code generation since I
think you said that this was still unfinished ?

> gcc/ChangeLog        
> 2003-12-31  Kazuhiro Inaoka  <inaoka.kazuhiro@renesas.com>
> 
> 	* config.gcc: Added m32r-linux m32rle-elf and m32le-linux targets.
> 	* doc/invoke.texi: Document -mflush-func, -mflush-trap options.
> 	Also add documentation for -mdebug, -malign-loops, -missue-rate,
> 	and -mbranch-cost options.
> 	* config/m32r/t-linux: New file: m32r-linux support.
> 	* config/m32r/xm-linux.h: Likewise.
> 	* config/m32r/xm-m32r.h: Likewise.
> 	* config/m32r/linux.h: Likewise.
> 	* config/m32r/little.h: New file: Little endian code generation
> 	support.
> 	* config/m32r/m32r-protos.h (m32r_legitimize_pic_address,
> 	m32r_legitimate_pic_operand_p, load_pic_register): Add
> 	prototypes.
> 	* config/m32r/m32r.c (m32r_init): Add options for cache-flush.
> 	(addr24_operand): Changes for PIC code generation.
> 	* config/m32r/m32r.h (LABEL_ALIGN): Define to calculate PNOP
> 	length at labels.
> 	(ASM_SPEC): Add PIC support.
> 	(FUNCTION_PROFILER): New define.
> 	(TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE): Changed to support
> 	trampoline.
> 	(CONDITIONAL_REGISTER_USAGE, CONSTANT_ADDRESS_P,
> 	 LEGITIMIZE_ADDRESS, JUMP_TABLES_IN_TEXT_SECTION,
> 	 PIC_OFFSET_TABLE_REGNUM, FINALIZE_PIC, LEGITIMATE_PIC_OPERAND_P,
> 	 ASM_OUTPUT_ADDR_DIFF_ELT, CASE_VECTOR_MODE): Define for PIC.
> 	(move_src_operand, m32r_compute_frame_size, m32r_expand_prologue,
> 	 m32r_finalize_pic): Changes for PIC and profile support.
> 	(global_offset_table, load_pic_register, m32r_legitimate_pic_operand_p,
> 	 m32r_legitimize_pic_address): Add for PIC support.
> 	(m32r_file_start): Changed for little-endian-target.
> 	* config/m32r/m32r.md (mvqi, movhi, movsi, movdi, movsf, movdf,
> 	tablejump, tablejump_insn, call, call_value, call_value_via_label):
> 	Changes for PIC.
> 	(pic_load_addr, get_pc, builtin_setjmp_receiver): Added for PIC.
> 	(flush_icache): Changes for cache-flush trap.

Approved and applied.

Cheers
        Nick

-------------- next part --------------
A non-text attachment was scrubbed...
Name: invoke.texi.patch
Type: text/x-patch
Size: 4746 bytes
Desc: Patch to update m32r documentation in gcc/doc/invoke.texi
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20031231/a62c987c/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: changes.html.patch
Type: text/x-patch
Size: 853 bytes
Desc: Patch to mention new support for m32r-linux target
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20031231/a62c987c/attachment-0001.bin>


More information about the Gcc-patches mailing list