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