public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Sandra Loosemore <sandra@codesourcery.com>
To: "binutils@sourceware.org" <binutils@sourceware.org>
Subject: [patch, nios2] use "sstatus" as primary name of r30
Date: Mon, 14 Oct 2013 00:53:00 -0000	[thread overview]
Message-ID: <525B406F.40904@codesourcery.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 347 bytes --]

Altera has requested that the register r30 disassemble using the 
symbolic name "sstatus" rather than "ba".  Both names are documented in 
the Nios II processor reference handbook.

I've checked in this patch to update the list of register names, a 
warning message that formerly used only the "ba" name, and the 
associated test cases.

-Sandra


[-- Attachment #2: binutils-fsf.log --]
[-- Type: text/x-log, Size: 497 bytes --]

2013-10-13  Sandra Loosemore  <sandra@codesourcery.com>

	opcodes/
	* nios2-opc.c (nios2_builtin_reg): Use "sstatus" rather than "ba"
	as the primary name of r30.

	gas/
	* config/tc-nios2.c (nios2_consume_arg): Make the "ba" warning
	also test/refer to "sstatus".  Reformat the warning message.

	gas/testsuite/
	* gas/nios2/warn_nobreak.l: Update text of warning messages.
	* gas/nios2/registers.s: Use "sstatus" rather than "ba"
	as the primary name of r30.
	* gas/nios2/registers.d: Likewise.

[-- Attachment #3: binutils-fsf.patch --]
[-- Type: text/x-patch, Size: 5682 bytes --]

Index: opcodes/nios2-opc.c
===================================================================
RCS file: /cvs/src/src/opcodes/nios2-opc.c,v
retrieving revision 1.6
diff -u -p -r1.6 nios2-opc.c
--- opcodes/nios2-opc.c	10 Jun 2013 01:04:42 -0000	1.6
+++ opcodes/nios2-opc.c	14 Oct 2013 00:24:26 -0000
@@ -58,7 +58,7 @@ const struct nios2_reg nios2_builtin_reg
   {"sp", 27},			/* stack pointer */
   {"fp", 28},			/* frame pointer */
   {"ea", 29},			/* exception return address */
-  {"ba", 30},			/* breakpoint return address */
+  {"sstatus", 30},		/* saved processor status */
   {"ra", 31},			/* return address */
 
   /* Alternative names for special registers.  */
@@ -71,7 +71,7 @@ const struct nios2_reg nios2_builtin_reg
   {"r28", 28},
   {"r29", 29},
   {"r30", 30},
-  {"sstatus", 30},
+  {"ba", 30},			/* breakpoint return address */
   {"r31", 31},
 
   /* Control register names.  */
Index: gas/config/tc-nios2.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-nios2.c,v
retrieving revision 1.6
diff -u -p -r1.6 tc-nios2.c
--- gas/config/tc-nios2.c	12 Jun 2013 23:11:57 -0000	1.6
+++ gas/config/tc-nios2.c	14 Oct 2013 00:24:25 -0000
@@ -1951,15 +1951,17 @@ nios2_consume_arg (nios2_insn_infoS *ins
       /* And whether we are using oci registers.  */
       if (!nios2_as_options.nobreak
 	  && (regno == 25 || strprefix (argstr, "bt")))
-	as_warn (_("The debugger will corrupt bt (r25). If you don't need to "
-		   "debug this\n"
-		   "code then use .set nobreak to turn off this warning."));
+	as_warn (_("The debugger will corrupt bt (r25).\n"
+		   "If you don't need to debug this "
+		   "code use .set nobreak to turn off this warning."));
 	
       if (!nios2_as_options.nobreak
-	  && (regno == 30 || strprefix (argstr, "ba")))
-	as_warn (_("The debugger will corrupt ba (r30). If you don't need to "
-		   "debug this\n"
-		   "code then use .set nobreak to turn off this warning."));
+	  && (regno == 30
+	      || strprefix (argstr, "ba")
+	      || strprefix (argstr, "sstatus")))
+	as_warn (_("The debugger will corrupt sstatus/ba (r30).\n"
+		   "If you don't need to debug this "
+		   "code use .set nobreak to turn off this warning."));
       break;
     case 'i':
     case 'u':
Index: gas/testsuite/gas/nios2/warn_nobreak.l
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/nios2/warn_nobreak.l,v
retrieving revision 1.1
diff -u -p -r1.1 warn_nobreak.l
--- gas/testsuite/gas/nios2/warn_nobreak.l	6 Feb 2013 23:22:16 -0000	1.1
+++ gas/testsuite/gas/nios2/warn_nobreak.l	14 Oct 2013 00:24:25 -0000
@@ -1,9 +1,9 @@
 .*warn_nobreak.s: Assembler messages:
-.*warn_nobreak.s:2: Warning: The debugger will corrupt ba \(r30\). If you don't need to debug this
-code then use .set nobreak to turn off this warning.
-.*warn_nobreak.s:3: Warning: The debugger will corrupt bt \(r25\). If you don't need to debug this
-code then use .set nobreak to turn off this warning.
-.*warn_nobreak.s:11: Warning: The debugger will corrupt ba \(r30\). If you don't need to debug this
-code then use .set nobreak to turn off this warning.
-.*warn_nobreak.s:12: Warning: The debugger will corrupt bt \(r25\). If you don't need to debug this
-code then use .set nobreak to turn off this warning.
+.*warn_nobreak.s:2: Warning: The debugger will corrupt sstatus/ba \(r30\).
+If you don't need to debug this code use .set nobreak to turn off this warning.
+.*warn_nobreak.s:3: Warning: The debugger will corrupt bt \(r25\).
+If you don't need to debug this code use .set nobreak to turn off this warning.
+.*warn_nobreak.s:11: Warning: The debugger will corrupt sstatus/ba \(r30\).
+If you don't need to debug this code use .set nobreak to turn off this warning.
+.*warn_nobreak.s:12: Warning: The debugger will corrupt bt \(r25\).
+If you don't need to debug this code use .set nobreak to turn off this warning.
Index: gas/testsuite/gas/nios2/registers.s
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/nios2/registers.s,v
retrieving revision 1.1
diff -u -p -r1.1 registers.s
--- gas/testsuite/gas/nios2/registers.s	12 Mar 2013 01:41:41 -0000	1.1
+++ gas/testsuite/gas/nios2/registers.s	14 Oct 2013 00:24:25 -0000
@@ -35,7 +35,7 @@ foo:
 	movi sp, 123
 	movi fp, 123
 	movi ea, 123
-	movi ba, 123
+	movi sstatus, 123
 	movi ra, 123
 # Alternative names for special registers
 	movi r0, 123
@@ -47,5 +47,5 @@ foo:
 	movi r28, 123
 	movi r29, 123
 	movi r30, 123
-	movi sstatus, 123
+	movi ba, 123
 	movi r31, 123
Index: gas/testsuite/gas/nios2/registers.d
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/nios2/registers.d,v
retrieving revision 1.2
diff -u -p -r1.2 registers.d
--- gas/testsuite/gas/nios2/registers.d	12 Mar 2013 21:34:58 -0000	1.2
+++ gas/testsuite/gas/nios2/registers.d	14 Oct 2013 00:24:25 -0000
@@ -36,7 +36,7 @@ Disassembly of section .text:
 0+006c <[^>]*> 06c01ec4 	movi	sp,123
 0+0070 <[^>]*> 07001ec4 	movi	fp,123
 0+0074 <[^>]*> 07401ec4 	movi	ea,123
-0+0078 <[^>]*> 07801ec4 	movi	ba,123
+0+0078 <[^>]*> 07801ec4 	movi	sstatus,123
 0+007c <[^>]*> 07c01ec4 	movi	ra,123
 0+0080 <[^>]*> 00001ec4 	movi	zero,123
 0+0084 <[^>]*> 00401ec4 	movi	at,123
@@ -46,6 +46,6 @@ Disassembly of section .text:
 0+0094 <[^>]*> 06c01ec4 	movi	sp,123
 0+0098 <[^>]*> 07001ec4 	movi	fp,123
 0+009c <[^>]*> 07401ec4 	movi	ea,123
-0+00a0 <[^>]*> 07801ec4 	movi	ba,123
-0+00a4 <[^>]*> 07801ec4 	movi	ba,123
+0+00a0 <[^>]*> 07801ec4 	movi	sstatus,123
+0+00a4 <[^>]*> 07801ec4 	movi	sstatus,123
 0+00a8 <[^>]*> 07c01ec4 	movi	ra,123

                 reply	other threads:[~2013-10-14  0:53 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=525B406F.40904@codesourcery.com \
    --to=sandra@codesourcery.com \
    --cc=binutils@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).