2005-01-19 Joel Sherrill <joel@OARcorp.com>

* pc386/console/vgainit.c, pc386/wd8003/wd8003.c, shared/comm/uart.c:
	Fix errors caught by gcc 4.x.
This commit is contained in:
Joel Sherrill
2005-01-19 21:27:39 +00:00
parent adc829ed5f
commit 16cc328967
4 changed files with 44 additions and 36 deletions

View File

@@ -1,3 +1,8 @@
2005-01-19 Joel Sherrill <joel@OARcorp.com>
* pc386/console/vgainit.c, pc386/wd8003/wd8003.c, shared/comm/uart.c:
Fix errors caught by gcc 4.x.
2004-09-24 Ralf Corsepius <ralf_corsepius@rtems.org>
* configure.ac: Require automake > 1.9.

View File

@@ -170,7 +170,7 @@ setmode(MODE mode)
/* VGA 800x600 16-color graphics (BIOS mode 0x29).
*/
static REGIO graphics_on[] = {
REGIO graphics_on[] = {
/* Reset attr F/F */
IN, ATTRREG, 0, 0, 0,

View File

@@ -281,7 +281,8 @@ wd_rxDaemon (void *arg)
unsigned int i2;
unsigned int len;
volatile unsigned char start, next, current;
char *shp, *temp;
unsigned char *shp, *temp;
unsigned short *real_short_ptr;
rtems_event_set events;
tport = wd_softc[0].port ;
@@ -308,9 +309,11 @@ wd_rxDaemon (void *arg)
if (current == start)
break;
/* real_short_ptr avoids cast on lvalue which gcc no longer allows */
shp = dp->base + 1 + (SHAPAGE * start);
next = *shp++;
len = *((short *)shp)++ - 4;
real_short_ptr = (unsigned short *)shp;
len = *(real_short_ptr)++ - 4;
if (next >= OUTPAGE){
next = 0;

View File

@@ -831,7 +831,7 @@ BSP_uart_termios_isr_com2()
}
/* ================= GDB support ===================*/
static int sav[4] __attribute__ ((unused));
int BSP_uart_dbgisr_com_regsav[4] __attribute__ ((unused));
/*
* Interrupt service routine for COM1 - all,
@@ -845,9 +845,9 @@ asm (".p2align 4");
asm (".text");
asm (".globl BSP_uart_dbgisr_com1");
asm ("BSP_uart_dbgisr_com1:");
asm (" movl %eax, sav"); /* Save eax */
asm (" movl %ebx, sav + 4"); /* Save ebx */
asm (" movl %edx, sav + 8"); /* Save edx */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav"); /* Save eax */
asm (" movl %ebx, BSP_uart_dbgisr_com_regsav + 4"); /* Save ebx */
asm (" movl %edx, BSP_uart_dbgisr_com_regsav + 8"); /* Save edx */
asm (" movl $0, %ebx"); /* Clear flag */
@@ -878,37 +878,37 @@ asm (" cmpl $0, %ebx");
asm (" je uart_dbgisr_com1_3");
/* Flag is set */
asm (" movl sav+4, %ebx"); /* Restore ebx */
asm (" movl sav+8, %edx"); /* Restore edx */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %ebx"); /* Restore ebx */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %edx"); /* Restore edx */
/* Set TF bit */
asm (" popl %eax"); /* Pop eip */
asm (" movl %eax, sav + 4"); /* Save it */
asm (" popl %eax"); /* Pop cs */
asm (" movl %eax, sav + 8"); /* Save it */
asm (" popl %eax"); /* Pop flags */
asm (" orl $0x100, %eax"); /* Modify it */
asm (" pushl %eax"); /* Push it back */
asm (" movl sav+8, %eax"); /* Put back cs */
asm (" popl %eax"); /* Pop eip */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav + 4"); /* Save it */
asm (" popl %eax"); /* Pop cs */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav + 8"); /* Save it */
asm (" popl %eax"); /* Pop flags */
asm (" orl $0x100, %eax"); /* Modify it */
asm (" pushl %eax"); /* Push it back */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %eax"); /* Put back cs */
asm (" pushl %eax");
asm (" movl sav+4, %eax"); /* Put back eip */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %eax"); /* Put back eip */
asm (" pushl %eax");
/* Acknowledge IRQ */
asm (" movb $0x20, %al");
asm (" outb %al, $0x20");
asm (" movl sav, %eax"); /* Restore eax */
asm (" iret"); /* Done */
asm (" movl BSP_uart_dbgisr_com_regsav, %eax"); /* Restore eax */
asm (" iret"); /* Done */
/* Flag is not set */
asm("uart_dbgisr_com1_3:");
asm (" movl sav+4, %ebx"); /* Restore ebx */
asm (" movl sav+8, %edx"); /* Restore edx */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %ebx"); /* Restore ebx */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %edx"); /* Restore edx */
/* Acknowledge irq */
asm (" movb $0x20, %al");
asm (" outb %al, $0x20");
asm (" movl sav, %eax"); /* Restore eax */
asm (" movl BSP_uart_dbgisr_com_regsav, %eax"); /* Restore eax */
asm (" iret"); /* Done */
/*
@@ -922,9 +922,9 @@ asm (".p2align 4");
asm (".text");
asm (".globl BSP_uart_dbgisr_com2");
asm ("BSP_uart_dbgisr_com2:");
asm (" movl %eax, sav"); /* Save eax */
asm (" movl %ebx, sav + 4"); /* Save ebx */
asm (" movl %edx, sav + 8"); /* Save edx */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav"); /* Save eax */
asm (" movl %ebx, BSP_uart_dbgisr_com_regsav + 4"); /* Save ebx */
asm (" movl %edx, BSP_uart_dbgisr_com_regsav + 8"); /* Save edx */
asm (" movl $0, %ebx"); /* Clear flag */
@@ -955,35 +955,35 @@ asm (" cmpl $0, %ebx");
asm (" je uart_dbgisr_com2_3");
/* Flag is set */
asm (" movl sav+4, %ebx"); /* Restore ebx */
asm (" movl sav+8, %edx"); /* Restore edx */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %ebx"); /* Restore ebx */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %edx"); /* Restore edx */
/* Set TF bit */
asm (" popl %eax"); /* Pop eip */
asm (" movl %eax, sav + 4"); /* Save it */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav + 4"); /* Save it */
asm (" popl %eax"); /* Pop cs */
asm (" movl %eax, sav + 8"); /* Save it */
asm (" movl %eax, BSP_uart_dbgisr_com_regsav + 8"); /* Save it */
asm (" popl %eax"); /* Pop flags */
asm (" orl $0x100, %eax"); /* Modify it */
asm (" pushl %eax"); /* Push it back */
asm (" movl sav+8, %eax"); /* Put back cs */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %eax"); /* Put back cs */
asm (" pushl %eax");
asm (" movl sav+4, %eax"); /* Put back eip */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %eax"); /* Put back eip */
asm (" pushl %eax");
/* Acknowledge IRQ */
asm (" movb $0x20, %al");
asm (" outb %al, $0x20");
asm (" movl sav, %eax"); /* Restore eax */
asm (" movl BSP_uart_dbgisr_com_regsav, %eax"); /* Restore eax */
asm (" iret"); /* Done */
/* Flag is not set */
asm("uart_dbgisr_com2_3:");
asm (" movl sav+4, %ebx"); /* Restore ebx */
asm (" movl sav+8, %edx"); /* Restore edx */
asm (" movl BSP_uart_dbgisr_com_regsav+4, %ebx"); /* Restore ebx */
asm (" movl BSP_uart_dbgisr_com_regsav+8, %edx"); /* Restore edx */
/* Acknowledge irq */
asm (" movb $0x20, %al");
asm (" outb %al, $0x20");
asm (" movl sav, %eax"); /* Restore eax */
asm (" movl BSP_uart_dbgisr_com_regsav, %eax"); /* Restore eax */
asm (" iret"); /* Done */