|
|
1.1 ! root 1: ! 2: /* andl3 mask,src,dest */ ! 3: /* Combination = 2,2,1 */ ! 4: /* mask src dest */ ! 5: /* ---- --- ---- */ ! 6: /* 2 2 1 */ ! 7: /* 2 1 2 */ ! 8: /* 1 2 2 */ ! 9: /* where 1 = register mode */ ! 10: /* 2 = (register) mode */ ! 11: /* 3 = immidiate mode */ ! 12: /* 4 = longword displacement deferred mode */ ! 13: ! 14: ! 15: /* Constants */ ! 16: ! 17: ! 18: .set MASK,0x55555555 ! 19: .set SRC,0xaaaaaaaa ! 20: .set DEST,-1 ! 21: ! 22: ! 23: /* */ ! 24: /* Syst.s - Constants */ ! 25: /* */ ! 26: .set IPL,8 ! 27: .set HIGH,31 ! 28: .set ZERO,0 ! 29: .set ONES,0xffffffff ! 30: .set N,8 ! 31: .set Z,4 ! 32: .set V,2 ! 33: .set C,1 ! 34: .set T,16 ! 35: .set IV,32 ! 36: .set FU,64 ! 37: .set DV,128 ! 38: .set PSWMASK,0x003f ! 39: ! 40: ! 41: .globl _ca221 ! 42: _ca221: callf $4,_setjmp /* save context */ ! 43: movab _ca221,_stpc /* save subtest pc */ ! 44: movl $1,_subtst /* subtest number */ ! 45: movl $3,_no_opr /* number of operands used */ ! 46: 0: movl ma,r3 ! 47: movl sa,r4 ! 48: movl $DEST,r5 ! 49: movl r3,_opr /* first operand */ ! 50: movl r4,_opr + 4 /* second operand */ ! 51: movl r5,_opr + 8 /* third operand */ ! 52: andl3 (r3),(r4),r5 ! 53: cmpl $0,r5 ! 54: beql 1f ! 55: er1: bbs $0,_scoplp,0b /* if set branch for scope loop */ ! 56: movl $1,_ercode /* error code data miscompare */ ! 57: movl r5,_actual /* actual data */ ! 58: movl $0,_expected /* expected data */ ! 59: jmp *badrtn /*error - mode = 221 */ ! 60: 1: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 61: 1: callf $4,_setjmp /* save context */ ! 62: movab 1b,_stpc /* save subtest pc */ ! 63: movl $2,_subtst /* subtest number */ ! 64: movl $3,_no_opr /* number of operands used */ ! 65: 0: movl $SRC,r4 ! 66: movl $MASK,mask ! 67: movl ma,r3 ! 68: movl $DEST,dest ! 69: movl da,r5 ! 70: movl r3,_opr /* first operand */ ! 71: movl r4,_opr + 4 /* second operand */ ! 72: movl r5,_opr + 8 /* third operand */ ! 73: andl3 (r3),r4,(r5) ! 74: cmpl $0,dest ! 75: beql 2f ! 76: er2: bbs $0,_scoplp,0b /* if set branch for scope loop */ ! 77: movl $1,_ercode /* error code data miscompare */ ! 78: movl dest,_actual /* actual data */ ! 79: movl $0,_expected /* expected data */ ! 80: jmp *badrtn /*error - mode = 212 */ ! 81: 2: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 82: 2: callf $4,_setjmp /* save context */ ! 83: movab 2b,_stpc /* save subtest pc */ ! 84: movl $3,_subtst /* subtest number */ ! 85: movl $3,_no_opr /* number of operands used */ ! 86: 0: movl $MASK,r3 ! 87: movl $SRC,src ! 88: movl sa,r4 ! 89: movl $DEST,dest ! 90: movl da,r5 ! 91: movl r3,_opr /* first operand */ ! 92: movl r4,_opr + 4 /* second operand */ ! 93: movl r5,_opr + 8 /* third operand */ ! 94: andl3 r3,(r4),(r5) ! 95: cmpl $0,dest ! 96: beql 3f ! 97: er3: bbs $0,_scoplp,0b /* if set branch for scope loop */ ! 98: movl $1,_ercode /* error code data miscompare */ ! 99: movl dest,_actual /* actual data */ ! 100: movl $0,_expected /* expected data */ ! 101: jmp *badrtn /*error - mode = 122 */ ! 102: movl $0,_ercode /* no error code */ ! 103: 3: bbs $0,_force_lp,0b /* if set loop on last subtest */ ! 104: jmp *return /*end of test - goto monitor */ ! 105: ! 106: /* end of file */ ! 107:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.