patch-2.1.79 linux/drivers/sbus/char/sbuscons.c
Next file: linux/drivers/sbus/char/su.c
Previous file: linux/drivers/sbus/char/sab82532.c
Back to the patch index
Back to the overall index
- Lines: 60
- Date:
Mon Jan 12 15:15:45 1998
- Orig file:
v2.1.78/linux/drivers/sbus/char/sbuscons.c
- Orig date:
Thu Sep 4 17:07:31 1997
diff -u --recursive --new-file v2.1.78/linux/drivers/sbus/char/sbuscons.c linux/drivers/sbus/char/sbuscons.c
@@ -1,4 +1,4 @@
-/* $Id: sbuscons.c,v 1.7 1997/08/28 09:30:07 davem Exp $
+/* $Id: sbuscons.c,v 1.10 1998/01/07 06:37:22 baccala Exp $
* sbuscons.c: Routines specific to SBUS frame buffer consoles.
*
* Copyright (C) 1995 Peter Zaitcev (zaitcev@lab.ipmce.su)
@@ -1168,7 +1168,7 @@
const int cpl = chars_per_line;
/* The register assignment is important here, do not modify without touching the assembly code as well */
register unsigned int x1 __asm__("g4"), x2 __asm__("g5"), x3 __asm__("g2"), x4 __asm__("g3"), flags __asm__("g7");
- register unsigned int *dst __asm__("g1");
+ register unsigned int *dst;
#else
const int ipl = ints_per_line;
unsigned int data2, data3, data4;
@@ -1182,9 +1182,9 @@
if (j == ' ') /* space is quite common, so we optimize a bit */ {
#ifdef ASM_BLITC
#define BLITC_SPACE \
- "\n\t std %%g4, [%%g1]" \
- "\n\t std %%g4, [%%g1 + %0]" \
- "\n\t add %%g1, %1, %%g1"
+ "\n\t std %3, [%0]" \
+ "\n\t std %3, [%0 + %1]" \
+ "\n\t add %0, %2, %0"
#define BLITC_SPC \
"\n\t std %0, [%1]" \
"\n\t std %0, [%1 + %2]"
@@ -1195,7 +1195,7 @@
x3 = cpl << 1;
__asm__ __volatile__ (
- "\n\t mov %2, %3"
+ "\n\t mov %3, %4"
BLITC_SPACE
BLITC_SPACE
BLITC_SPACE
@@ -1203,12 +1203,19 @@
BLITC_SPACE
BLITC_SPACE
BLITC_SPACE
- : : "r" (cpl), "r" (x3), "r" (x1), "r" (x2));
+ : "=r" (dst)
+ : "r" (cpl), "r" (x3), "r" (x1), "r" (x2));
__save_and_cli (flags);
if (idx != cursor_pos)
- __asm__ __volatile__ (BLITC_SPC : : "r" (x1), "r" (dst), "r" (cpl));
+ __asm__ __volatile__ (
+ BLITC_SPC
+ : /* no outputs */
+ : "r" (x1), "r" (dst), "r" (cpl));
else
- __asm__ __volatile__ (BLITC_SPC : : "r" (x1), "r" (under_cursor), "i" (8));
+ __asm__ __volatile__ (BLITC_SPC
+ : /* no outputs */
+ : "r" (x1), "r" (under_cursor),
+ "i" (8));
__restore_flags (flags);
#else
bgmask = attrib >> 4;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov