This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

A linux/alpha bug in egcs


While compiling linux 2.0.31 on linux/alpa, I encountered an egcs
bug:

# gcc -O -S foo.c 
foo.c: In function `flush_to_ldisc':
foo.c:21: virtual memory exhausted

I am using egcs-971031.

-- 
H.J. Lu (hjl@gnu.ai.mit.edu)
---foo.c---
struct tty_struct
{
  int x;
};

void	receive_buf(struct tty_struct *, const unsigned char *cp,
			       char *fp, int count);
void flush_to_ldisc(void *private_)
{
	struct tty_struct *tty = (struct tty_struct *) private_;
	unsigned char	*cp;
	char		*fp;
	int		count;
	if (tty) {
		__asm__ __volatile__( "bis %0,%0,$16\n\t" "call_pal 53" : : "r" ( 7 ) : "$0", "$1", "$16", "$22", "$23", "$24", "$25", "memory")  ;
	} else {
		__asm__ __volatile__( "bis %0,%0,$16\n\t" "call_pal 53" : : "r" ( 7 ) : "$0", "$1", "$16", "$22", "$23", "$24", "$25", "memory")  ;
	}
	__asm__ __volatile__( "bis %0,%0,$16\n\t" "call_pal 53" : : "r" ( 0 ) : "$0", "$1", "$16", "$22", "$23", "$24", "$25", "memory")  ;
	receive_buf(tty, cp, fp, count);
}


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]