RFA: Update RX assembler files to conditionally avoid string instructions

Jeff Johnston jjohnstn@redhat.com
Thu Apr 9 15:20:00 GMT 2015


Ok by me.

-- Jeff J.

----- Original Message -----
From: "Nick Clifton" <nickc@redhat.com>
To: newlib@sourceware.org
Sent: Wednesday, April 8, 2015 12:52:36 PM
Subject: RFA: Update RX assembler files to conditionally avoid string instructions

Hi Guys,

  A problem has come to light with the RX string instructions (SMOVF,
  SUNTIL, etc).  They must not be used in the I/O address space as they 
  prefetch data from addresses that might be invalid.  So the attached
  patch adds alternative versions to all of the RX assembler source
  files that use these instructions, predicated on a C preprocessor
  macro called __RX_DISALLOW_STRING_INSNS__.  (A future patch to GCC
  will allow it to set this macro and create a multilib for it, but that
  has to wait until the gcc sources are unfrozen).

  Tested with no regressions on an rx-elf toolchain.

  OK to apply ?

Cheers
  Nick

newlib/ChangeLog
2015-04-08  Nick Clifton  <nickc@redhat.com>

	* libc/machine/rx/memchr.S: Add non-string insn using version.
	* libc/machine/rx/memcpy.S: Likewise.
	* libc/machine/rx/memmove.S: Likewise.
	* libc/machine/rx/mempcpy.S: Likewise.
	* libc/machine/rx/strcat.S: Likewise.
	* libc/machine/rx/strcmp.S: Likewise.
	* libc/machine/rx/strcpy.S: Likewise.
	* libc/machine/rx/strlen.S: Likewise.
	* libc/machine/rx/strncat.S: Likewise.
	* libc/machine/rx/strncmp.S: Likewise.
	* libc/machine/rx/strncpy.S: Likewise.

libgloss/ChangeLog
2015-04-08  Nick Clifton  <nickc@redhat.com>

	* rx/crt0.S (_start): If string instructions are not allowed,
	avoid using SMOVF.



[Text Documents:newlib.rx.patch]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/x-patch
Size: 10737 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/newlib/attachments/20150409/ec5b9c79/attachment.bin>


More information about the Newlib mailing list