|
|
1.1 ! root 1: /* Copyright (c) 1984 Regents of the University of California */ ! 2: ! 3: #ifndef lint ! 4: static char sccsid[] = "@(#)machpats.c 1.3 (Berkeley) 8/19/84"; ! 5: #endif not lint ! 6: ! 7: #include "inline.h" ! 8: ! 9: /* ! 10: * Pattern table for special VAX instructions. ! 11: */ ! 12: struct pats machine_ptab[] = { ! 13: ! 14: #ifdef vax ! 15: { "3,_blkcpy\n", ! 16: " movl (sp)+,r1\n\ ! 17: movl (sp)+,r3\n\ ! 18: jbr 2f\n\ ! 19: 1:\n\ ! 20: subl2 r0,(sp)\n\ ! 21: movc3 r0,(r1),(r3)\n\ ! 22: 2:\n\ ! 23: movzwl $65535,r0\n\ ! 24: cmpl (sp),r0\n\ ! 25: jgtr 1b\n\ ! 26: movl (sp)+,r0\n\ ! 27: movc3 r0,(r1),(r3)\n" }, ! 28: ! 29: { "3,_bcopy\n", ! 30: " movl (sp)+,r1*\n\ ! 31: movl (sp)+,r3*\n\ ! 32: movl (sp)+,r5$\n\ ! 33: movc3 r5,(r1),(r3)\n" }, ! 34: ! 35: { "3,_ovbcopy\n", ! 36: " movl (sp)+,r3*\n\ ! 37: movl (sp)+,r4*\n\ ! 38: movl (sp)+,r5$\n\ ! 39: movc3 r5,(r3),(r4)\n" }, ! 40: ! 41: { "3,_blkcmp\n", ! 42: " movl (sp)+,r1\n\ ! 43: movl (sp)+,r3\n\ ! 44: jbr 2f\n\ ! 45: 1:\n\ ! 46: subl2 r0,(sp)\n\ ! 47: cmpc3 r0,(r1),(r3)\n\ ! 48: bneq 3f\n\ ! 49: 2:\n\ ! 50: movzwl $65535,r0\n\ ! 51: cmpl (sp),r0\n\ ! 52: jgtr 1b\n\ ! 53: movl (sp)+,r0\n\ ! 54: cmpc3 r0,(r1),(r3)\n\ ! 55: 3:\n" }, ! 56: ! 57: { "3,_bcmp\n", ! 58: " movl (sp)+,r1*\n\ ! 59: movl (sp)+,r3*\n\ ! 60: movl (sp)+,r5$\n\ ! 61: cmpc3 r5,(r1),(r3)\n" }, ! 62: ! 63: { "2,_blkclr\n", ! 64: " movl (sp)+,r3\n\ ! 65: jbr 2f\n\ ! 66: 1:\n\ ! 67: subl2 r0,(sp)\n\ ! 68: movc5 $0,(r3),$0,r0,(r3)\n\ ! 69: 2:\n\ ! 70: movzwl $65535,r0\n\ ! 71: cmpl (sp),r0\n\ ! 72: jgtr 1b\n\ ! 73: movl (sp)+,r0\n\ ! 74: movc5 $0,(r3),$0,r0,(r3)\n" }, ! 75: ! 76: { "2,_bzero\n", ! 77: " movl (sp)+,r3*\n\ ! 78: movl (sp)+,r5$\n\ ! 79: movc5 $0,(r3),$0,r5,(r3)\n" }, ! 80: ! 81: { "3,_llocc\n", ! 82: " movl (sp)+,r4$\n\ ! 83: movl (sp)+,r5\n\ ! 84: movl (sp)+,r1\n\ ! 85: 1:\n\ ! 86: movzwl $65535,r0\n\ ! 87: cmpl r5,r0\n\ ! 88: jleq 1f\n\ ! 89: subl2 r0,r5\n\ ! 90: locc r4,r0,(r1)\n\ ! 91: jeql 1b\n\ ! 92: addl2 r5,r0\n\ ! 93: jbr 2f\n\ ! 94: 1:\n\ ! 95: locc r4,r5,(r1)\n\ ! 96: 2:\n" }, ! 97: ! 98: { "3,_locc\n", ! 99: " movl (sp)+,r3$\n\ ! 100: movl (sp)+,r4$\n\ ! 101: movl (sp)+,r5*\n\ ! 102: locc r3,r4,(r5)\n" }, ! 103: ! 104: { "4,_scanc\n", ! 105: " movl (sp)+,r2$\n\ ! 106: movl (sp)+,r3*\n\ ! 107: movl (sp)+,r4*\n\ ! 108: movl (sp)+,r5$\n\ ! 109: scanc r2,(r3),(r4),r5\n" }, ! 110: ! 111: { "3,_skpc\n", ! 112: " movl (sp)+,r3$\n\ ! 113: movl (sp)+,r4$\n\ ! 114: movl (sp)+,r5*\n\ ! 115: skpc r3,r4,(r5)\n" }, ! 116: ! 117: { "2,_insque\n", ! 118: " movl (sp)+,r4*\n\ ! 119: movl (sp)+,r5*\n\ ! 120: insque (r4),(r5)\n" }, ! 121: ! 122: { "1,_remque\n", ! 123: " movl (sp)+,r5*\n\ ! 124: remque (r5),r0\n" }, ! 125: ! 126: { "3,_extv\n", ! 127: " movl (sp)+,r2*\n\ ! 128: movl (sp)+,r3$\n\ ! 129: movl (sp)+,r4$\n\ ! 130: extv r3,r4,(r2),r0\n"}, ! 131: ! 132: { "3,_extzv\n", ! 133: " movl (sp)+,r2*\n\ ! 134: movl (sp)+,r3$\n\ ! 135: movl (sp)+,r4$\n\ ! 136: extzv r3,r4,(r2),r0\n"}, ! 137: ! 138: { "4,_insv\n", ! 139: " movl (sp)+,r2*\n\ ! 140: movl (sp)+,r3$\n\ ! 141: movl (sp)+,r4$\n\ ! 142: movl (sp)+,r5$\n\ ! 143: insv r5,r3,r4,(r2)\n"}, ! 144: ! 145: #endif vax ! 146: ! 147: #ifdef mc68000 ! 148: /* someday... */ ! 149: #endif mc68000 ! 150: ! 151: { "", "" } ! 152: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.