|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T m
Length: 2425 (0x979) Types: TextFile Names: »machpats.c«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦526ad3590⟧ »EUUGD11/gnu-31mar87/X.V10.R4.tar.Z« └─⟦2109abc41⟧ └─⟦this⟧ »./X.V10R4/inline/machpats.c«
/* Copyright (c) 1984 Regents of the University of California */ #ifndef lint static char sccsid[] = "@(#)machpats.c 1.3 (Berkeley) 8/19/84"; #endif not lint #include "inline.h" /* * Pattern table for special VAX instructions. */ struct pats machine_ptab[] = { #ifdef vax { "3,_blkcpy\n", " movl (sp)+,r1\n\ movl (sp)+,r3\n\ jbr 2f\n\ 1:\n\ subl2 r0,(sp)\n\ movc3 r0,(r1),(r3)\n\ 2:\n\ movzwl $65535,r0\n\ cmpl (sp),r0\n\ jgtr 1b\n\ movl (sp)+,r0\n\ movc3 r0,(r1),(r3)\n" }, { "3,_bcopy\n", " movl (sp)+,r1*\n\ movl (sp)+,r3*\n\ movl (sp)+,r5$\n\ movc3 r5,(r1),(r3)\n" }, { "3,_ovbcopy\n", " movl (sp)+,r3*\n\ movl (sp)+,r4*\n\ movl (sp)+,r5$\n\ movc3 r5,(r3),(r4)\n" }, { "3,_blkcmp\n", " movl (sp)+,r1\n\ movl (sp)+,r3\n\ jbr 2f\n\ 1:\n\ subl2 r0,(sp)\n\ cmpc3 r0,(r1),(r3)\n\ bneq 3f\n\ 2:\n\ movzwl $65535,r0\n\ cmpl (sp),r0\n\ jgtr 1b\n\ movl (sp)+,r0\n\ cmpc3 r0,(r1),(r3)\n\ 3:\n" }, { "3,_bcmp\n", " movl (sp)+,r1*\n\ movl (sp)+,r3*\n\ movl (sp)+,r5$\n\ cmpc3 r5,(r1),(r3)\n" }, { "2,_blkclr\n", " movl (sp)+,r3\n\ jbr 2f\n\ 1:\n\ subl2 r0,(sp)\n\ movc5 $0,(r3),$0,r0,(r3)\n\ 2:\n\ movzwl $65535,r0\n\ cmpl (sp),r0\n\ jgtr 1b\n\ movl (sp)+,r0\n\ movc5 $0,(r3),$0,r0,(r3)\n" }, { "2,_bzero\n", " movl (sp)+,r3*\n\ movl (sp)+,r5$\n\ movc5 $0,(r3),$0,r5,(r3)\n" }, { "3,_llocc\n", " movl (sp)+,r4$\n\ movl (sp)+,r5\n\ movl (sp)+,r1\n\ 1:\n\ movzwl $65535,r0\n\ cmpl r5,r0\n\ jleq 1f\n\ subl2 r0,r5\n\ locc r4,r0,(r1)\n\ jeql 1b\n\ addl2 r5,r0\n\ jbr 2f\n\ 1:\n\ locc r4,r5,(r1)\n\ 2:\n" }, { "3,_locc\n", " movl (sp)+,r3$\n\ movl (sp)+,r4$\n\ movl (sp)+,r5*\n\ locc r3,r4,(r5)\n" }, { "4,_scanc\n", " movl (sp)+,r2$\n\ movl (sp)+,r3*\n\ movl (sp)+,r4*\n\ movl (sp)+,r5$\n\ scanc r2,(r3),(r4),r5\n" }, { "3,_skpc\n", " movl (sp)+,r3$\n\ movl (sp)+,r4$\n\ movl (sp)+,r5*\n\ skpc r3,r4,(r5)\n" }, { "2,_insque\n", " movl (sp)+,r4*\n\ movl (sp)+,r5*\n\ insque (r4),(r5)\n" }, { "1,_remque\n", " movl (sp)+,r5*\n\ remque (r5),r0\n" }, { "3,_extv\n", " movl (sp)+,r2*\n\ movl (sp)+,r3$\n\ movl (sp)+,r4$\n\ extv r3,r4,(r2),r0\n"}, { "3,_extzv\n", " movl (sp)+,r2*\n\ movl (sp)+,r3$\n\ movl (sp)+,r4$\n\ extzv r3,r4,(r2),r0\n"}, { "4,_insv\n", " movl (sp)+,r2*\n\ movl (sp)+,r3$\n\ movl (sp)+,r4$\n\ movl (sp)+,r5$\n\ insv r5,r3,r4,(r2)\n"}, #endif vax #ifdef mc68000 /* someday... */ #endif mc68000 { "", "" } };