|
|
1.1 root 1: #
2: # *reserved addressing modes event test
3: #
4: # R6 = PC that failed
5: # R0 = error code
6: # 1 - expected reserved addr mode fault didnot happen
7: # R1,R2 = opcodes of instruction should cause fault
8: # 2 - Error in PC pushed on the stack
9: # R1 = actual, R2 = expected
10: # 3 - Error in PSL pushed on the stack
11: # R1 = actual, R2 = expected
12: # 4 - Too many parameters pushed on the stack
13: #
14:
15: .globl _raddr_evt
16: _raddr_evt:
17: .word 0x1fff
18: mtpr $31,$IPL /* Set IPL to HIGH */
19: clrl _Icnt
20: movab (sp),_savvec0 /* Save currnet SP */
21: mtpr _savvec0,$ISP /* Set ISP = current SP */
22: movl _scb+RAVEC,_savvec2 /* Save reserved addr. mode vector */
23: movab radrmd,_scb+RAVEC /* Set new vector */
24: movl $-1,-(sp) /* Push marker on stack */
25: movab _pcb0,r1 /* Init PCBB */
26: mtpr r1,$PCBB
1.1.1.2 ! root 27: mfpr $KSP,_savvec9 /* Save kernal stack pointer */
! 28: mfpr $USP,_savveca /* Save user stack pointer */
1.1 root 29: movab resadr,r6 /* R6 = PC that failed */
30: movab table,r8 /* R8 = addr of object table */
31: trynext:
32: movl (r8),resadr
33: addl2 $4,r8
34: movl (r8),resadr+4
35: mtpr $0xff,$PACC /* Purge all code cache */
36: incl _Icnt
37: movpsl r7 /* R7 = saved PSL */
38: jmp resadr
39: .align 2
40: resadr: /* This is where inst. with reserved */
41: .byte 0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10
42: /* addressing mode is stored and */
43: /* executed */
44: movl $1,r0 /* ERROR : No fault happen .. */
45: movl resadr,r1 /* R1+R2 = opcode and operands that */
46: movl resadr+4,r2 /* should cause fault . */
47: jmp *badrtn
48: #
49: # ************************************************
50: # Event handler for Reserved addressing mode fault
51: # ************************************************
52: #
53: .align 2
54: radrmd:
55: movl (sp)+,r1 /* R1 = actual PC pop from stack */
56: movab resadr,r2 /* R2 = expected PC */
57: cmpl r1,r2
58: beql 1f
59: movl $2,r0 /* Error : wrong PC on stack */
60: jmp *badrtn /* R1 = actual; R2 = expected */
61:
62: 1: movl (sp)+,r1 /* R1 = actual PSL pop from stack */
63: andl2 $0xffffffc0,r1 /* Mask out PSW flags */
64: andl3 $0xffffffc0,r7,r2 /* R2 = expected PSL */
65: cmpl r2,r1
66: beql 1f
67: movl $3,r0 /* Error : wrong PSL on stack */
68: jmp *badrtn /* R1 = actual; R2 = expected */
69: 1:
70: cmpl $-1,(sp) /* SP now should point at the marker */
71: beql 1f
72: movl $4,r0 /* Error : Too many parameters pushed on SP */
73: jmp *badrtn
74: 1:
75: addl2 $4,r8 /* Increment table ptr to next lgword */
76: movl (r8),r1
77: cmpl $0xffffffff,r1 /* Is this the last one ? */
78: beql 1f
79: brw trynext /* If not try again .. */
80: #
81: # All done; return to monitor
82: #
83: 1:
84: movl _savvec0,sp
1.1.1.2 ! root 85: mtpr _savvec0,$ISP /* restore Interrupt stack pointer */
! 86: mtpr _savvec9,$KSP /* restore kernal stack pointer */
! 87: mtpr _savveca,$USP /* restore user stack pointer */
1.1 root 88: movl _savvec2,_scb+RAVEC /* Restore reserved addr. mode vector */
89: ret
90: #
91: #
92: # WARNING: If reserved addressing change, so do the following table
93: #
94: .align 2
95: table:
96:
97: .byte 0x0d,0x5f,0x51,00,0x10,0x10,0x10,0x10 /* movl r15,r1 */
98: .byte 0x0d,0x51,0x5f,00,0x10,0x10,0x10,0x10 /* movl r1,r15 */
99: .byte 0x0d,0x5e,0x51,00,0x10,0x10,0x10,0x10 /* movl r14,r1 */
100: .byte 0xe9,0x55,0x51,00,0x10,0x10,0x10,0x10 /* movab r5,r1 */
101:
102:
103: .byte 0x0d,0x41,0x52,0x55,00,0x10,0x10,0x10 /* movl r2[r1],r5 */
104: .byte 0x0d,0x41,0x01,0x55,00,0x10,0x10,0x10 /* movl 1[r1],r5 */
105: .byte 0x0d,0x41,0x88,0x70,0x55,00,0x10,0x10 /* movl 0x88[r1],r5*/
106: .byte 0x0d,0x41,0x6e,0x55,00,0x10,0x10,0x10/* movl (r14)[r1],r5*/
107: .byte 0x0d,0x41,0x7e,0x55,00,0x10,0x10,0x10/* movl -(sp)[r1],r5*/
108: .byte 0x0d,0x41,0x8e,0x55,00,0x10,0x10,0x10/* movl (sp)+[r1],r5*/
109: .byte 0x0d,0x41,0xae,0x08,0x55,00,0x10,0x10 /* movl 1(sp)[r1],r5*/
110: .byte 0x0d,0x41,0xce,0x01,0x08,0x55,00,0x10 /* movl 0x101(sp),r5 */
111:
112: /* movl 0x00000108(sp),r5 */
113: .byte 0x0d,0x41,0xee,0x00,0x00,0x01,0x08,0x55
114:
115: .byte 0x5a,0x14,0x51,0x54,00,0x10,0x10,0x10/* shrq $0x14,r1,r4*/
116: .byte 0x4a,0x14,0x50,0x53,00,0x10,0x10,0x10/* shlq $0x14,r0,r3*/
117: .byte 0x0d,0x6f,0x50,00,0x10,0x10,0x10,0x10/* movl (r15),r0 */
118: .byte 0xe9,0x01,0x51,00,0x10,0x10,0x10,0x10/* movab $1,r1 */
119: .byte 0xe9,0x88,0x70,0x51,00,0x10,0x10,0x10/* movab $0x70,r1 */
120: .byte 0x0d,0x51,0x01,00,0x10,0x10,0x10,0x10/* movl r1,$1 */
121: .byte 0x0d,0x51,0x88,0x70,00,0x10,0x10,0x10/* movl r1,$0x70 */
122: .byte 0x0d,0x7e,0x55,00,0x10,0x10,0x10,0x10/* movl -(sp),r5 */
123: .byte 0xe9,0x7e,0x55,00,0x10,0x10,0x10,0x10/* movab -(sp),r5 */
124: .byte 0x0d,0x55,0x8e,00,0x10,0x10,0x10,0x10/* movl r5,(sp)+ */
125: .byte 0xe9,0x8e,0x55,00,0x10,0x10,0x10,0x10/* movab (sp)+,r5 */
126: .byte 0xfe,0x01,0x65,00,0x10,0x10,0x10,0x10/* callf $1,(r5) */
127: .byte 0xfe,0x88,0x70,0x65,00,0x10,0x10,0x10/* callf $0x70,(r5)*/
128: .byte 0xfe,0x55,0xaf,0x02,00,0x10,0x10,0x10/* callf r5,$02 */
129: .byte 0xfe,0x01,0x41,0xaf,0x01,00,0x10,0x10/* callf $1,$0x1[r1]*/
130: .byte 0x09,0x01,0x7e,00,0x10,0x10,0x10,0x10/* movb $1,-(sp) */
131: .byte 0x0b,0x01,0x7e,00,0x10,0x10,0x10,0x10/* movw $1,-(sp) */
132: .byte 0x09,0x8e,0x55,00,0x10,0x10,0x10,0x10/* movb (sp)+,r5 */
133: .byte 0x0b,0x8e,0x55,00,0x10,0x10,0x10,0x10/* movw (sp)+,r5 */
134:
135: /* The following are additions */
136:
137: .byte 0x71,0x51,0x10,0x10,0x10,0x10,0x10,0x10 /*jmp r1 */
138: .byte 0xf9,0x51,0x10,0x10,0x10,0x10,0x10,0x10 /*pushab r1 */
139: .byte 0xfd,0x51,0x10,0x10,0x10,0x10,0x10,0x10 /*pushal r1 */
140: .byte 0xfb,0x51,0x10,0x10,0x10,0x10,0x10,0x10 /*pushaw r1 */
141: .byte 0xf0,0x51,0x10,0x10,0x10,0x10,0x10,0x10 /*remque r1 */
142:
143: /* one operand instruction -- immidiate operand */
144:
145: .byte 0x49,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*clrb $0xabcdef40*/
146: .byte 0x4d,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*clrl */
147: .byte 0x4b,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*clrw */
148: .byte 0x79,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*decb */
149: .byte 0x7d,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*decl */
150: .byte 0x7b,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*decw */
151: .byte 0x69,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*incb */
152: .byte 0x6d,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*incl */
153: .byte 0x6b,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*incw */
154: .byte 0x71,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*jmp */
155: .byte 0xf9,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*pushab */
156: .byte 0xfd,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*pushal */
157: .byte 0xfb,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*pushaw */
158: .byte 0xf0,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*remque */
159: .byte 0xcd,0x8f,0xab,0xcd,0xef,0x40,0x10,0x10 /*movpsl */
160:
161: /* Two operand instructions -- 2nd operand = immidiate */
162:
163: .byte 0x8e,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10
164: /*adda r1,$0xabcdef40 */
165: .byte 0x08,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*addb2 */
166: .byte 0x0c,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*addl2 */
167: .byte 0x0a,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*addw2 */
168: .byte 0x8d,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*adwc */
169: .byte 0xa8,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*andb2 */
170: .byte 0xac,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*andl2 */
171: .byte 0xaa,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*andw2 */
172: .byte 0x89,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtbl */
173: .byte 0x99,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtbw */
174: .byte 0x6f,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtlb */
175: .byte 0x7f,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtlw */
176: .byte 0x33,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtwb */
177: .byte 0x23,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*cvtwl */
178: .byte 0x6c,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*divl2 */
179: .byte 0x6e,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*divl2u */
180: .byte 0xbe,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*ffc */
181: .byte 0xae,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*ffs */
182: .byte 0x29,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mcomb */
183: .byte 0x2d,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mcoml */
184: .byte 0x2b,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mcomw */
185: # .byte 0xbd,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mfpr */
186: .byte 0xe8,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mnegb */
187: .byte 0xec,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mnegl */
188: .byte 0xea,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mnegw */
189: .byte 0x68,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*modl2 */
190: .byte 0x6a,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*modl2u */
191: .byte 0x09,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movb */
192: .byte 0x0d,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movl */
193: .byte 0x0b,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movw */
194: .byte 0xa9,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movzbl */
195: .byte 0xb9,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movzbw */
196: .byte 0xc3,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*movzwl */
197: .byte 0x4c,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*mull2 */
198: .byte 0x88,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*orb2 */
199: .byte 0x8c,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*orl2 */
200: .byte 0x8a,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*orw2 */
201: .byte 0x9d,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*sbwc */
202: .byte 0xbb,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*storer */
203: .byte 0x9e,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*suba */
204: .byte 0x28,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*subb2 */
205: .byte 0x2c,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*subl2 */
206: .byte 0x2a,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*subw2 */
207: .byte 0xc8,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*xorb2 */
208: .byte 0xcc,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*xorl2 */
209: .byte 0xca,0x51,0x8f,0xab,0xcd,0xef,0x40,0x10 /*xorw2 */
210:
211: # Three operand instructions -- last oprnd = immediate
212:
213: .byte 0x18,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*addb3 r2,r1,imdiate*/
214: .byte 0x1c,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*addl3 */
215: .byte 0x1a,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*addw3 */
216: .byte 0xb8,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*andb3 */
217: .byte 0xbc,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*andl3 */
218: .byte 0xba,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*andw3 */
219: .byte 0x7c,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*divl3 */
220: #
221: # These opcodes are nolonger exist
222: #
223: # .byte 0x7e,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 divl3u
224: # .byte 0x78,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 modl3
225: # .byte 0x7a,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 modl3u
226: #
227: .byte 0x5c,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*mull3 */
228: .byte 0x98,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orb3 */
229: .byte 0x9c,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orl3 */
230: .byte 0x9a,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orw3 */
231: .byte 0xc0,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*prober */
232: .byte 0xd0,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*probew */
233: .byte 0x48,0x51,0x52,0x8f,0xab,0xcd,0xef,0x40 /*shll */
234: .byte 0x4a,0x51,0x52,0x8f,0xab,0xcd,0xef,0x40 /*shlq */
235: .byte 0x58,0x51,0x52,0x8f,0xab,0xcd,0xef,0x40 /*shrl */
236: .byte 0x5a,0x51,0x52,0x8f,0xab,0xcd,0xef,0x40 /*shrq */
237: .byte 0x38,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*subb3 */
238: .byte 0x3c,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*subl3 */
239: .byte 0x3a,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*subw3 */
240: .byte 0xd8,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orb3 */
241: .byte 0xdc,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orl3 */
242: .byte 0xda,0x52,0x51,0x8f,0xab,0xcd,0xef,0x40 /*orw3 */
243:
244: /* remaining instructions -- illegal operands */
245:
246: .byte 0xe0,0x50,0x9f,0x00,0x00,0x00,0x00,0x10
247: /*insque r0,*$testloc */
248: .byte 0xe0,0x10,0x9f,0x00,0x00,0x00,0x00,0x10
249: /*insque $0x10,*$testloc */
250: .byte 0xe0,0x9f,0x00,0x00,0x00,0x00,0x50,0x10
251: /*insque *$testloc,r0 */
252: .byte 0xe0,0x9f,0x00,0x00,0x00,0x00,0x10,0x10
253: /*insque *$testloc,0x10 */
254: .byte 0x5e,0x50,0x51,0x20,0x53,0x10,0x10,0x10
255: /*ediv r0,r1,$0x20,r3 */
256: # .byte 0x5e,0x50,0x51,0x52,0x20,0x10,0x10,0x10
257: /*ediv r0,r1,r2,$0x20 */
258: # .byte 0x4e,0x50,0x51,0x52,0x20,0x10,0x10,0x10
259: /*emul r0,r1,r2,$0x20 */
260: .byte 0xe9,0x50,0x9f,0x00,0x00,0x00,0x00,0x10
261: /*movab r0,*$testloc */
262: .byte 0xed,0x50,0x9f,0x00,0x00,0x00,0x00,0x10
263: /*moval r0,*$testloc */
264: .byte 0xeb,0x50,0x9f,0x00,0x00,0x00,0x00,0x10
265: /*movaw r0,*$testloc */
266: .byte 0xe9,0x10,0x9f,0x00,0x00,0x00,0x00,0x10
267: /*movab $0x10,*$testloc */
268: .byte 0xed,0x10,0x9f,0x00,0x00,0x00,0x00,0x10
269: /*moval $0x10,*$testloc */
270: .byte 0xeb,0x10,0x9f,0x00,0x00,0x00,0x00,0x10
271: /*movaw $0x10,*$testloc */
272: .byte 0xe9,0x9f,0x00,0x00,0x00,0x00,0x20,0x10
273: /*movab *$testloc,$0x20 */
274: .byte 0xed,0x9f,0x00,0x00,0x00,0x00,0x20,0x10
275: /*moval *$testloc,$0x20 */
276: .byte 0xeb,0x9f,0x00,0x00,0x00,0x00,0x20,0x10
277: /*movaw *$testloc,$0x20 */
278: .byte 0x3f,0x51,0x20,0x11,0x10,0x10,0x10,0x10
279: /*aobleq r1,$0x20,$0x11 */
280: .byte 0x2f,0x51,0x20,0x11,0x10,0x10,0x10,0x10
281: /*aoblss r1,$0x20,$0x11 */
282: .byte 0x1e,0x51,0x20,0x53,0x10,0x10,0x10,0x10
283: /*bbc r1,0x20,0x53 */
284: .byte 0x0e,0x51,0x20,0x53,0x10,0x10,0x10,0x10
285: /*bbs r1,0x20,0x53 */
286: .byte 0x5f,0x51,0x20,0x53,0x10,0x10,0x10,0x10
287: /*bbssi r1,0x20,0x53 */
288: .byte 0xc0,0x50,0x51,0x52,0x10,0x10,0x10,0x10
289: /*prober r0,r1,r2 */
290: .byte 0xd0,0x50,0x51,0x52,0x10,0x10,0x10,0x10
291: /*probew r0,r1,r2 */
292: .byte 0xbf,0x50,0x52,0x10,0x10,0x10,0x10,0x10
293: /*calls r0,r2 */
294: .byte 0xbf,0x20,0x20,0x10,0x10,0x10,0x10,0x10
295: /*calls $0x20,0x20 */
296:
297: /* callf instruction -- all modes illegal except */
298: /* The following : */
299: /* 1st operand = literal or immidiate byte */
300: /* 2nd operand = pc relative or absolute */
301: /* callf illegal operand,legal operand */
302:
303: .byte 0xfe,0x50,0x9f,0x00,0x00,0x00,0x01,0x10
304: /*callf r0, *$loc */
305: .byte 0xfe,0x60,0xaf,0x20,0x10,0x10,0x10,0x10
306: /*callf (r0),loc */
307: .byte 0xfe,0xa0,0x20,0xaf,0x20,0x10,0x10,0x10
308: .byte 0xfe,0xc0,0x00,0x20,0xaf,0x20,0x10,0x10
309: .byte 0xfe,0xe0,0x00,0x00,0x00,0x20,0xaf,0x20
310: .byte 0xfe,0xb0,0x20,0xaf,0x20,0x10,0x10,0x10
311: .byte 0xfe,0xd0,0x00,0x20,0xaf,0x20,0x10,0x10
312: .byte 0xfe,0xf0,0x00,0x00,0x00,0x20,0xaf,0x20
313: # .byte 0xfe,0x89,0x00,0x20,0xaf,0x20,0x10,0x10
314: # .byte 0xfe,0x8f,0x00,0x00,0x00,0x20,0xaf,0x20
315: .byte 0xfe,0xbf,0x20,0xaf,0x20,0x10,0x10,0x10
316: .byte 0xfe,0xdf,0x00,0x20,0xaf,0x20,0x10,0x10
317: .byte 0xfe,0xff,0x00,0x00,0x00,0x20,0xaf,0x20
318: .byte 0xfe,0xaf,0x20,0xaf,0x20,0x10,0x10,0x10
319: .byte 0xfe,0xcf,0x00,0x20,0xaf,0x20,0x10,0x10
320: .byte 0xfe,0xef,0x00,0x00,0x00,0x20,0xaf,0x20
321: .byte 0xfe,0x7e,0xaf,0x20,0x10,0x10,0x10,0x10
322: .byte 0xfe,0x8e,0xaf,0x20,0x10,0x10,0x10,0x10
323: .byte 0xfe,0x9e,0xaf,0x20,0x10,0x10,0x10,0x10
324: .byte 0xfe,0x9f,0x00,0x00,0x00,0x20,0xaf,0x20
325: .byte 0xfe,0x41,0xaf,0x01,0xaf,0x20,0x10,0x10
326:
327: /* callf legal operand,illegal operand */
328:
329: .byte 0xfe,0x10,0x50,0x10,0x10,0x10,0x10,0x10
330: /*callf $0x10,r0 */
331: .byte 0xfe,0x10,0x60,0x10,0x10,0x10,0x10,0x10
332: /*callf $0x10,(r0) */
333: .byte 0xfe,0x10,0xa0,0x20,0x10,0x10,0x10,0x10
334: .byte 0xfe,0x10,0xc0,0x00,0x20,0x10,0x10,0x10
335: .byte 0xfe,0x10,0xe0,0x00,0x00,0x00,0x20,0x10
336: .byte 0xfe,0x10,0xb0,0x20,0x10,0x10,0x10,0x10
337: .byte 0xfe,0x10,0xd0,0x00,0x20,0x10,0x10,0x10
338: .byte 0xfe,0x10,0xf0,0x00,0x00,0x00,0x20,0x10
339: .byte 0xfe,0x10,0x89,0x00,0x20,0x10,0x10,0x10
340: .byte 0xfe,0x10,0x8f,0x00,0x00,0x00,0x20,0x10
341: .byte 0xfe,0x10,0xbf,0x20,0x10,0x10,0x10,0x10
342: .byte 0xfe,0x10,0xdf,0x00,0x20,0x10,0x10,0x10
343: .byte 0xfe,0x10,0xff,0x00,0x00,0x00,0x20,0x10
344: .byte 0xfe,0x10,0x20,0x10,0x10,0x10,0x10,0x10
345: .byte 0xfe,0x10,0x88,0x20,0x10,0x10,0x10,0x10
346: .byte 0xfe,0x10,0x7e,0x10,0x10,0x10,0x10,0x10
347: .byte 0xfe,0x10,0x8e,0x10,0x10,0x10,0x10,0x10
348: .byte 0xfe,0x10,0x9e,0x10,0x10,0x10,0x10,0x10
349: .byte 0xfe,0x10,0x41,0xaf,0x01,0x10,0x10,0x10
350: .byte 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff /*end of table*/
351:
352: # These are taken out !!
353: # .byte 0x0d,0x41,0x9e,0x55,00,10,10,10 movl *(sp)+[r1],r5
354: # .byte 0x09,0x6e,0x55,00,10,10,10,10 movb (sp),r5
355: # .byte 0x0b,0x6e,0x55,00,10,10,10,10 movw (sp),r5
356: #
357:
358: .align 2
359: _Icnt: .long 0 /* Which instruction is testing .. */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.