summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRandolph Chung <tausq@parisc-linux.org>2005-10-21 22:48:34 -0400
committerKyle McMartin <kyle@parisc-linux.org>2005-10-21 22:48:34 -0400
commitfa681a1800a58234afe4d876c1752c0751826d22 (patch)
tree121863680509f24c2edc94009a703486b16e8768 /arch
parent7efe1611b2db9025ffc52a686897ab91820caeb4 (diff)
downloadlinux-fa681a1800a58234afe4d876c1752c0751826d22.tar.gz
linux-fa681a1800a58234afe4d876c1752c0751826d22.tar.bz2
linux-fa681a1800a58234afe4d876c1752c0751826d22.zip
[PARISC] Disable use of fpregs in pa_memcpy
Disable use of fpregs in pa_memcpy, and turn on the -mdisable-fpregs flag. Signed-off-by: Randolph Chung <tausq@parisc-linux.org> Signed-off-by: Kyle McMartin <kyle@parisc-linux.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/parisc/Makefile2
-rw-r--r--arch/parisc/lib/memcpy.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/parisc/Makefile b/arch/parisc/Makefile
index 3b339b1cce13..e3549f480fa5 100644
--- a/arch/parisc/Makefile
+++ b/arch/parisc/Makefile
@@ -43,7 +43,7 @@ cflags-y += -mno-space-regs -mfast-indirect-calls
# Currently we save and restore fpregs on all kernel entry/interruption paths.
# If that gets optimized, we might need to disable the use of fpregs in the
# kernel.
-#cflags-y += -mdisable-fpregs
+cflags-y += -mdisable-fpregs
# Without this, "ld -r" results in .text sections that are too big
# (> 0x40000) for branches to reach stubs.
diff --git a/arch/parisc/lib/memcpy.c b/arch/parisc/lib/memcpy.c
index feb1b9f42c2b..b7098035321f 100644
--- a/arch/parisc/lib/memcpy.c
+++ b/arch/parisc/lib/memcpy.c
@@ -339,6 +339,7 @@ unsigned long pa_memcpy(void *dstp, const void *srcp, unsigned long len)
pds = (double *)pcs;
pdd = (double *)pcd;
+#if 0
/* Copy 8 doubles at a time */
while (len >= 8*sizeof(double)) {
register double r1, r2, r3, r4, r5, r6, r7, r8;
@@ -366,6 +367,7 @@ unsigned long pa_memcpy(void *dstp, const void *srcp, unsigned long len)
fstdma(d_space, r8, pdd, pmc_store_exc);
len -= 8*sizeof(double);
}
+#endif
pws = (unsigned int *)pds;
pwd = (unsigned int *)pdd;