summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am1
-rw-r--r--src/VISmoveImage.s8
2 files changed, 7 insertions, 2 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 91464fd..606624f 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -29,6 +29,7 @@ sunffb_drv_la_LDFLAGS = -module -avoid-version
sunffb_drv_ladir = @moduledir@/drivers
if SPARC
+AM_CFLAGS += -DUSE_VIS
SPARC_ASM_SRC = ffb_asm.s VISmoveImage.s
endif
diff --git a/src/VISmoveImage.s b/src/VISmoveImage.s
index bf9c71d..dcb0929 100644
--- a/src/VISmoveImage.s
+++ b/src/VISmoveImage.s
@@ -76,6 +76,10 @@
*/
#if defined(__sparc_v9__) || defined(__sparcv9) || defined(__arch64__)
+
+.register %g2, #scratch
+.register %g3, #scratch
+
#define SMUL mulx
#define ICC xcc
.register %g2,#scratch
@@ -780,7 +784,7 @@ roll_wide:
sub %tmp3, %rightw, %curw
return: return %i7+8
- wr %g0, 0, %fprs
+ wr %g0, 4, %fprs
narrowst:
and %leftw, 0x38, %tmp1
@@ -2175,7 +2179,7 @@ rroll_wide:
sub %curw, %rightw, %curw
rreturn:return %i7+8
- wr %g0, 0, %fprs
+ wr %g0, 4, %fprs
narrowstr:
cmp %rightw, 64