|
|
1.1 root 1:
2: /* andl3 mask,src,dest */
3: /* Combination = 4,4,1 */
4: /* mask src dest */
5: /* ---- --- ---- */
6: /* 4 4 1 */
7: /* 4 1 4 */
8: /* 1 4 4 */
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 _ca441
41: _ca441: callf $4,_setjmp /* save context */
42: movab _ca441,_stpc /* save subtest pc */
43: movl $1,_subtst /* subtest number */
44: movl $4,_no_opr /* number of operands used */
45: 0: movl base_add,r4
46: movl $1,r5 /*index for mask */
47: movl $2,r6 /*index for source */
48: movl $DEST,r3
49: movl r4,_opr /* first operand */
50: movl r5,_opr + 4 /* second operand */
51: movl r6,_opr + 8 /* third operand */
52: movl r3,_opr + 12 /* fourth operand */
53: andl3 *l^64020(r4)[r5],*l^64020(r4)[r6],r3
54: cmpl $0,r3
55: beql 1f
56: er1: bbs $0,_scoplp,0b /* if set scope loop on error */
57: movl $1,_ercode /* error code data miscompare */
58: movl r3,_actual /* actual data */
59: movl $0,_expected /* expected data */
60: jmp *badrtn /*error - mode = 441 */
61: 1: bbs $0,_force_lp,0b /* if set loop on subtest */
62: 1: callf $4,_setjmp /* save context */
63: movab 1b,_stpc /* save subtest pc */
64: movl $2,_subtst /* subtest number */
65: movl $4,_no_opr /* number of operands used */
66: 0: movl $SRC,r3
67: movl $3,r6 /*dest index */
68: movl $DEST,dest
69: movl r4,_opr /* first operand */
70: movl r5,_opr + 4 /* second operand */
71: movl r3,_opr + 8 /* third operand */
72: movl r6,_opr + 12 /* fourth operand */
73: andl3 *l^64020(r4)[r5],r3,*l^64020(r4)[r6]
74: cmpl $0,dest
75: beql 2f
76: er2: bbs $0,_scoplp,0b /* if set scope loop on error */
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 = 414 */
81: 2: bbs $0,_force_lp,0b /* if set loop on subtest */
82: 2: callf $4,_setjmp /* save context */
83: movab 2b,_stpc /* save subtest pc */
84: movl $3,_subtst /* subtest number */
85: movl $4,_no_opr /* number of operands used */
86: 0: movl $MASK,r3
87: movl $2,r5
88: movl $SRC,src
89: movl $DEST,dest
90: movl r3,_opr /* first operand */
91: movl r4,_opr + 4 /* second operand */
92: movl r5,_opr + 8 /* third operand */
93: movl r6,_opr + 12 /* fourth operand */
94: andl3 r3,*l^64020(r4)[r5],*l^64020(r4)[r6]
95: cmpl $0,dest
96: beql 3f
97: er3: bbs $0,_scoplp,0b /* if set scope loop on error */
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 = 144 */
102: 3: bbs $0,_force_lp,0b /* if set loop on subtest */
103: movl $0,_ercode /* no error code */
104: jmp *return /*end of test - goto monitor */
105:
106: /* end of file */
107:
108:
109:
110:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.