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