This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [RFA] gas port for sh4a
- From: Michael Snyder <msnyder at redhat dot com>
- To: Nick Clifton <nickc at redhat dot com>
- Cc: gdb-patches at sources dot redhat dot com, binutils at sources dot redhat dot com
- Date: Thu, 04 Dec 2003 18:00:22 -0800
- Subject: Re: [RFA] gas port for sh4a
- Organization: Red Hat, Inc.
- References: <3FCD4560.60809@redhat.com> <m34qwgo5bp.fsf@redhat.com>
Nick Clifton wrote:
Hi Michael,
2003-12-02 Alexandre Oliva <aoliva@redhat.com>
* config/tc-sh.c: Add support for sh4a and no-fpu variants.
* testsuite/gas/sh/basic.exp: Call tests for sh4a.
* testsuite/gas/sh/{err-sh4a-fp.s, err-sh4a.s,
err-sh4al-dsp.s, sh4a-dsp.d, sh4a-dsp.s, sh4a-fp.d,
sh4a-fp.s, sh4a.d, sh4a.s, sh4al-dsp.d, sh4al-dsp.s:
New files, tests for sh4a and related variants.
Approved - but before applying please could you or Alex fix up the
problem pointed out by Andrew Stubbs (namly that the new command line
switches are not documented in the -help output) and the fact that
these options are not documented in the gas/doc/c-sh64.texi file.
One other thing - please could you add an entry to the gas/NEWS file
mentioning the new support.
OK, committed with the following amendments:
2003-12-02 Alexandre Oliva <aoliva@redhat.com>
* config/tc-sh.c: Add support for sh4a and no-fpu variants,
with appropriate additions to md_show_usage.
* testsuite/gas/sh/basic.exp: Call tests for sh4a.
* testsuite/gas/sh/{err-sh4a-fp.s, err-sh4a.s,
err-sh4al-dsp.s, sh4a-dsp.d, sh4a-dsp.s, sh4a-fp.d,
sh4a-fp.s, sh4a.d, sh4a.s, sh4al-dsp.d, sh4al-dsp.s:
New files, tests for sh4a and related variants.
* doc/c-sh.texi: Document new -isa options.
* doc/c-sh64.texi: Ditto.
* NEWS: Mention new support for sh4a.
Index: config/tc-sh.c
===================================================================
RCS file: /cvs/cvsfiles/devo/gas/config/tc-sh.c,v
retrieving revision 1.155.4.1
diff -p -r1.155.4.1 tc-sh.c
*** config/tc-sh.c 22 Sep 2003 21:56:18 -0000 1.155.4.1
--- config/tc-sh.c 4 Dec 2003 23:34:38 -0000
*************** SH options:\n\
*** 3041,3052 ****
-relax alter jump instructions for long displacements\n\
-small align sections to 4 byte boundaries, not 16\n\
-dsp enable sh-dsp insns, and disable floating-point ISAs.\n"));
#ifdef HAVE_SH64
fprintf (stream, _("\
- -isa=[shmedia set default instruction set for SH64\n\
- | SHmedia\n\
- | shcompact\n\
- | SHcompact]\n\
-abi=[32|64] set size of expanded SHmedia operands and object\n\
file type\n\
-shcompact-const-crange emit code-range descriptors for constants in\n\
--- 3041,3062 ----
-relax alter jump instructions for long displacements\n\
-small align sections to 4 byte boundaries, not 16\n\
-dsp enable sh-dsp insns, and disable floating-point ISAs.\n"));
+ fprintf (stream, _("\
+ -isa=[sh4\n\
+ | sh4a\n\
+ | dsp same as '-dsp'\n\
+ | fp\n"
+ #ifdef HAVE_SH64
+ "\
+ | shmedia set default instruction set for SH64\n\
+ | SHmedia\n\
+ | shcompact\n\
+ | SHcompact\n"
+ #endif
+ "\
+ | any]\n"));
#ifdef HAVE_SH64
fprintf (stream, _("\
-abi=[32|64] set size of expanded SHmedia operands and object\n\
file type\n\
-shcompact-const-crange emit code-range descriptors for constants in\n\
Index: doc/c-sh.texi
===================================================================
RCS file: /cvs/cvsfiles/devo/gas/doc/c-sh.texi,v
retrieving revision 1.6
diff -p -r1.6 c-sh.texi
*** doc/c-sh.texi 17 May 2003 19:11:05 -0000 1.6
--- doc/c-sh.texi 4 Dec 2003 23:34:38 -0000
*************** Align sections to 4 byte boundaries, not
*** 45,50 ****
--- 45,59 ----
@item -dsp
Enable sh-dsp insns, and disable sh3e / sh4 insns.
+ @item -isa=sh4 | sh4a
+ Specify the sh4 or sh4a instruction set.
+ @item -isa=dsp
+ Enable sh-dsp insns, and disable sh3e / sh4 insns.
+ @item -isa=fp
+ Enable sh2e, sh3e, sh4, and sh4a insn sets.
+ @item -isa=all
+ Enable sh1, sh2, sh2e, sh3, sh3e, sh4, sh4a, and sh-dsp insn sets.
+
@end table
@node SH Syntax
Index: doc/c-sh64.texi
===================================================================
RCS file: /cvs/cvsfiles/devo/gas/doc/c-sh64.texi,v
retrieving revision 1.6
diff -p -r1.6 c-sh64.texi
*** doc/c-sh64.texi 17 May 2003 19:11:05 -0000 1.6
--- doc/c-sh64.texi 4 Dec 2003 23:34:38 -0000
***************
*** 22,27 ****
--- 22,35 ----
@cindex SH64 ISA options
@cindex ISA options, SH64
+ @item -isa=sh4 | sh4a
+ Specify the sh4 or sh4a instruction set.
+ @item -isa=dsp
+ Enable sh-dsp insns, and disable sh3e / sh4 insns.
+ @item -isa=fp
+ Enable sh2e, sh3e, sh4, and sh4a insn sets.
+ @item -isa=all
+ Enable sh1, sh2, sh2e, sh3, sh3e, sh4, sh4a, and sh-dsp insn sets.
@item -isa=shmedia | -isa=shcompact
Specify the default instruction set. @code{SHmedia} specifies the
32-bit opcodes, and @code{SHcompact} specifies the 16-bit opcodes
Index: NEWS
===================================================================
RCS file: /cvs/src/src/gas/NEWS,v
retrieving revision 1.51
diff -p -r1.51 NEWS
*** NEWS 3 Dec 2003 17:42:12 -0000 1.51
--- NEWS 5 Dec 2003 01:52:34 -0000
***************
*** 1,9 ****
-*- text -*-
* Support for Renesas M32R2 added.
! * Limited support for Mapping Symbols as specified in the ARM ELF specification
! has been added to the arm assembler.
* On ARM architectures, added a new gas directive ".unreq" that undoes
definitions created by ".req".
--- 1,11 ----
-*- text -*-
+ * Added support for sh4a and variants.
+
* Support for Renesas M32R2 added.
! * Limited support for Mapping Symbols as specified in the ARM ELF
! specification has been added to the arm assembler.
* On ARM architectures, added a new gas directive ".unreq" that undoes
definitions created by ".req".