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