2003-12-02 Alexandre Oliva * 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".