123345Smckusick /* 223345Smckusick * Copyright (c) 1984 Regents of the University of California. 323345Smckusick * All rights reserved. The Berkeley software License Agreement 423345Smckusick * specifies the terms and conditions for redistribution. 523345Smckusick */ 616959Smckusick 716959Smckusick #ifndef lint 8*27462Skarels static char sccsid[] = "@(#)libcpats.c 1.5 (Berkeley) 04/27/86"; 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 1924382Smckusick { 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 2924382Smckusick { 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" }, 38*27462Skarels #endif vax 3916959Smckusick 40*27462Skarels #ifdef mc68000 41*27462Skarels /* someday... */ 42*27462Skarels #endif mc68000 43*27462Skarels 44*27462Skarels { 0, "", "" } 45*27462Skarels }; 46*27462Skarels 47*27462Skarels struct pats vaxsubset_libc_ptab[] = { 48*27462Skarels 4924382Smckusick { 1, "_strlen\n", 5016959Smckusick " movl (sp)+,r5\n\ 5116959Smckusick movl r5,r1\n\ 5216959Smckusick 1:\n\ 53*27462Skarels tstb (r1)+\n\ 54*27462Skarels jneq 1b\n\ 55*27462Skarels decl r1\n\ 56*27462Skarels subl3 r5,r1,r0\n" }, 57*27462Skarels 58*27462Skarels { 0, "", "" } 59*27462Skarels }; 60*27462Skarels 61*27462Skarels struct pats vax_libc_ptab[] = { 62*27462Skarels 63*27462Skarels { 1, "_strlen\n", 64*27462Skarels " movl (sp)+,r5\n\ 65*27462Skarels movl r5,r1\n\ 66*27462Skarels 1:\n\ 6716959Smckusick locc $0,$65535,(r1)\n\ 6816959Smckusick jeql 1b\n\ 6916959Smckusick subl3 r5,r1,r0\n" }, 7016959Smckusick 7124382Smckusick { 0, "", "" } 7216959Smckusick }; 73