xref: /csrg-svn/sys/vax/inline/libcpats.c (revision 23345)
1*23345Smckusick /*
2*23345Smckusick  * Copyright (c) 1984 Regents of the University of California.
3*23345Smckusick  * All rights reserved.  The Berkeley software License Agreement
4*23345Smckusick  * specifies the terms and conditions for redistribution.
5*23345Smckusick  */
616959Smckusick 
716959Smckusick #ifndef lint
8*23345Smckusick static char sccsid[] = "@(#)libcpats.c	1.3 (Berkeley) 06/08/85";
916959Smckusick #endif not lint
1016959Smckusick 
1116963Smckusick #include "inline.h"
1216959Smckusick 
1316959Smckusick /*
1416959Smckusick  * Pattern table for the C library.
1516959Smckusick  */
1616959Smckusick struct pats libc_ptab[] = {
1716959Smckusick 
1816959Smckusick #ifdef vax
1916959Smckusick 	{ "1,_fgetc\n",
2016959Smckusick "	sobgeq	*(sp),1f\n\
2116959Smckusick 	calls	$1,__filbuf\n\
2216959Smckusick 	jbr     2f\n\
2316959Smckusick 1:\n\
2416959Smckusick 	addl3	$4,(sp)+,r1\n\
2516959Smckusick 	movzbl	*(r1),r0\n\
2616959Smckusick 	incl	(r1)\n\
2716959Smckusick 2:\n" },
2816959Smckusick 
2916959Smckusick 	{ "2,_fputc\n",
3016959Smckusick "	sobgeq	*4(sp),1f\n\
3116959Smckusick 	calls	$2,__flsbuf\n\
3216959Smckusick 	jbr	2f\n\
3316959Smckusick 1:\n\
3416959Smckusick 	movq	(sp)+,r0\n\
3516959Smckusick 	movb	r0,*4(r1)\n\
3616959Smckusick 	incl	4(r1)\n\
3716959Smckusick 2:\n" },
3816959Smckusick 
3916959Smckusick 	{ "1,_strlen\n",
4016959Smckusick "	movl	(sp)+,r5\n\
4116959Smckusick 	movl	r5,r1\n\
4216959Smckusick 1:\n\
4316959Smckusick 	locc	$0,$65535,(r1)\n\
4416959Smckusick 	jeql	1b\n\
4516959Smckusick 	subl3	r5,r1,r0\n" },
4616959Smckusick #endif vax
4716959Smckusick 
4816959Smckusick #ifdef mc68000
4916959Smckusick /* someday... */
5016959Smckusick #endif mc68000
5116959Smckusick 
5216959Smckusick 	{ "", "" }
5316959Smckusick };
54