Lines Matching refs:a6

276 set EXC_A6,		EXC_AREGS+(6*4)		# offset of a6
399 link.w %a6,&-LOCAL_SIZE # create room for stack frame
401 movm.l &0x3fff,EXC_DREGS(%a6) # store d0-d7/a0-a5
402 mov.l (%a6),EXC_A6(%a6) # store a6
404 btst &0x5,EXC_ISR(%a6) # from s or u mode?
408 mov.l %a0,EXC_A7(%a6) # store a7
411 lea 0xc(%a6),%a0
412 mov.l %a0,EXC_A7(%a6) # store corrected sp
417 clr.b SPCOND_FLG(%a6) # clear "special case" flag
419 mov.w EXC_ISR(%a6),EXC_CC(%a6) # store cc copy on stack
420 mov.l EXC_IPC(%a6),EXC_EXTWPTR(%a6) # store extwptr on stack
426 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
427 addq.l &0x4,EXC_EXTWPTR(%a6) # incr instruction ptr
429 mov.l %d0,EXC_OPWORD(%a6) # store extword on stack
482 btst &0x5,EXC_ISR(%a6) # supervisor mode?
484 btst &mia7_bit,SPCOND_FLG(%a6) # was a7 changed?
486 btst &0x7,EXC_ISR(%a6) # is trace enabled?
497 btst &mia7_bit,SPCOND_FLG(%a6) # was a7 changed?
500 btst &idbyz_bit,SPCOND_FLG(%a6) # did divide-by-zero occur?
504 btst &0x5,EXC_ISR(%a6) # supervisor mode?
512 btst &idbyz_bit,SPCOND_FLG(%a6) # did divide-by-zero occur?
514 tst.b EXC_ISR(%a6) # no; is trace enabled?
549 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
550 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
565 cmpi.b SPCOND_FLG(%a6),&ichk_flg
576 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
581 btst &0x5,EXC_ISR(%a6) # user or supervisor?
584 mov.l EXC_A7(%a6),%a0 # fetch user stack pointer
588 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
590 btst &0x7,EXC_ISR(%a6) # is trace mode on?
593 mov.l EXC_EXTWPTR(%a6),EXC_IPC(%a6) # new pc on stack frame
594 mov.l EXC_A6(%a6),(%a6) # prepare new a6 for unlink
595 unlk %a6 # unlink stack frame
624 mov.l EXC_A6(%a6),-0x4(%a6)
625 mov.w EXC_ISR(%a6),0x0(%a6)
626 mov.l EXC_IPC(%a6),0x8(%a6)
627 mov.l EXC_EXTWPTR(%a6),0x2(%a6)
628 mov.w &0x2024,0x6(%a6)
629 sub.l &0x4,%a6
630 unlk %a6
653 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
654 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
656 mov.w EXC_ISR(%a6),(%a6) # put new SR on stack
657 mov.l EXC_IPC(%a6),0x8(%a6) # put "Current PC" on stack
658 mov.l EXC_EXTWPTR(%a6),0x2(%a6) # put "Next PC" on stack
659 mov.w &0x2018,0x6(%a6) # put Vector Offset on stack
661 mov.l EXC_A6(%a6),%a6 # restore a6
687 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
688 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
690 mov.w EXC_ISR(%a6),(%a6) # put new SR on stack
691 mov.l EXC_IPC(%a6),0x8(%a6) # put "Current PC" on stack
692 mov.l EXC_EXTWPTR(%a6),0x2(%a6) # put "Next PC" on stack
693 mov.w &0x2014,0x6(%a6) # put Vector Offset on stack
695 mov.l EXC_A6(%a6),%a6 # restore a6
724 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
725 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
727 mov.l EXC_IPC(%a6),0xc(%a6) # put "Current PC" on stack
728 mov.w &0x2014,0xa(%a6) # put Vector Offset on stack
729 mov.l EXC_EXTWPTR(%a6),0x6(%a6) # put "Next PC" on stack
731 mov.l EXC_A6(%a6),%a6 # restore a6
762 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
763 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
765 mov.l EXC_IPC(%a6),0xc(%a6) # put "Current PC" on stack
766 mov.w &0x2024,0xa(%a6) # put Vector Offset on stack
767 mov.l EXC_EXTWPTR(%a6),0x6(%a6) # put "Next PC" on stack
769 mov.l EXC_A6(%a6),%a6 # restore a6
789 mov.b EXC_CC+1(%a6),EXC_ISR+1(%a6) # insert new ccodes
790 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
792 mov.w &0x00f4,0xe(%a6) # put Vector Offset on stack
793 mov.l EXC_EXTWPTR(%a6),0xa(%a6) # put "Next PC" on stack
794 mov.w EXC_ISR(%a6),0x8(%a6) # put SR on stack
796 mov.l EXC_A6(%a6),%a6 # restore a6
806 mov.l %a0,(%a6) # save address
807 mov.l %d0,-0x4(%a6) # save partial fslw
809 lea -64(%a6),%sp
810 movm.l (%sp)+,&0x7fff # restore d0-d7/a0-a6
829 movm.l EXC_DREGS(%a6),&0x3fff # restore d0-d7/a0-a5
830 unlk %a6 # unlink frame
848 cmpi.b SPCOND_FLG(%a6),&restore_flg # do we need a restore?
851 mov.b EXC_SAVREG(%a6),%d0 # regno to restore
852 mov.l EXC_SAVVAL(%a6),(EXC_AREGS,%a6,%d0.l*4) # restore value
917 mov.w EXC_OPWORD(%a6),%d0 # fetch opcode word
1005 mov.l EXC_A0(%a6),%a0 # Get current a0
1009 mov.l EXC_A1(%a6),%a0 # Get current a1
1013 mov.l EXC_A2(%a6),%a0 # Get current a2
1017 mov.l EXC_A3(%a6),%a0 # Get current a3
1021 mov.l EXC_A4(%a6),%a0 # Get current a4
1025 mov.l EXC_A5(%a6),%a0 # Get current a5
1029 mov.l EXC_A6(%a6),%a0 # Get current a6
1033 mov.l EXC_A7(%a6),%a0 # Get current a7
1041 mov.l EXC_A0(%a6),%a0 # load current value
1043 mov.l %d0,EXC_A0(%a6) # save incremented value
1045 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1046 mov.b &0x0,EXC_SAVREG(%a6) # save regno, too
1047 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1052 mov.l EXC_A1(%a6),%a0 # load current value
1054 mov.l %d0,EXC_A1(%a6) # save incremented value
1056 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1057 mov.b &0x1,EXC_SAVREG(%a6) # save regno, too
1058 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1063 mov.l EXC_A2(%a6),%a0 # load current value
1065 mov.l %d0,EXC_A2(%a6) # save incremented value
1067 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1068 mov.b &0x2,EXC_SAVREG(%a6) # save regno, too
1069 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1074 mov.l EXC_A3(%a6),%a0 # load current value
1076 mov.l %d0,EXC_A3(%a6) # save incremented value
1078 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1079 mov.b &0x3,EXC_SAVREG(%a6) # save regno, too
1080 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1085 mov.l EXC_A4(%a6),%a0 # load current value
1087 mov.l %d0,EXC_A4(%a6) # save incremented value
1089 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1090 mov.b &0x4,EXC_SAVREG(%a6) # save regno, too
1091 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1096 mov.l EXC_A5(%a6),%a0 # load current value
1098 mov.l %d0,EXC_A5(%a6) # save incremented value
1100 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1101 mov.b &0x5,EXC_SAVREG(%a6) # save regno, too
1102 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1107 mov.l EXC_A6(%a6),%a0 # load current value
1109 mov.l %d0,EXC_A6(%a6) # save incremented value
1111 mov.l %a0,EXC_SAVVAL(%a6) # save in case of access error
1112 mov.b &0x6,EXC_SAVREG(%a6) # save regno, too
1113 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1117 mov.b &mia7_flg,SPCOND_FLG(%a6) # set "special case" flag
1120 mov.l EXC_A7(%a6),%a0 # load current value
1122 mov.l %d0,EXC_A7(%a6) # save incremented value
1129 mov.l EXC_A0(%a6),%d0 # Get current a0
1130 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1132 mov.l %d0,EXC_A0(%a6) # Save decr value
1135 mov.b &0x0,EXC_SAVREG(%a6) # save regno, too
1136 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1140 mov.l EXC_A1(%a6),%d0 # Get current a1
1141 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1143 mov.l %d0,EXC_A1(%a6) # Save decr value
1146 mov.b &0x1,EXC_SAVREG(%a6) # save regno, too
1147 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1151 mov.l EXC_A2(%a6),%d0 # Get current a2
1152 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1154 mov.l %d0,EXC_A2(%a6) # Save decr value
1157 mov.b &0x2,EXC_SAVREG(%a6) # save regno, too
1158 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1162 mov.l EXC_A3(%a6),%d0 # Get current a3
1163 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1165 mov.l %d0,EXC_A3(%a6) # Save decr value
1168 mov.b &0x3,EXC_SAVREG(%a6) # save regno, too
1169 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1173 mov.l EXC_A4(%a6),%d0 # Get current a4
1174 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1176 mov.l %d0,EXC_A4(%a6) # Save decr value
1179 mov.b &0x4,EXC_SAVREG(%a6) # save regno, too
1180 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1184 mov.l EXC_A5(%a6),%d0 # Get current a5
1185 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1187 mov.l %d0,EXC_A5(%a6) # Save decr value
1190 mov.b &0x5,EXC_SAVREG(%a6) # save regno, too
1191 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1195 mov.l EXC_A6(%a6),%d0 # Get current a6
1196 mov.l %d0,EXC_SAVVAL(%a6) # save in case of access error
1198 mov.l %d0,EXC_A6(%a6) # Save decr value
1201 mov.b &0x6,EXC_SAVREG(%a6) # save regno, too
1202 mov.b &restore_flg,SPCOND_FLG(%a6) # set flag
1206 mov.b &mda7_flg,SPCOND_FLG(%a6) # set "special case" flag
1208 mov.l EXC_A7(%a6),%d0 # Get current a7
1210 mov.l %d0,EXC_A7(%a6) # Save decr value
1218 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1219 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1226 add.l EXC_A0(%a6),%a0 # a0 + d16
1230 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1231 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1238 add.l EXC_A1(%a6),%a0 # a1 + d16
1242 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1243 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1250 add.l EXC_A2(%a6),%a0 # a2 + d16
1254 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1255 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1262 add.l EXC_A3(%a6),%a0 # a3 + d16
1266 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1267 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1274 add.l EXC_A4(%a6),%a0 # a4 + d16
1278 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1279 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1286 add.l EXC_A5(%a6),%a0 # a5 + d16
1290 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1291 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1298 add.l EXC_A6(%a6),%a0 # a6 + d16
1302 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1303 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1310 add.l EXC_A7(%a6),%a0 # a7 + d16
1322 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1323 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1331 mov.l (EXC_AREGS,%a6,%d1.w*4),%a0 # put base in a0
1350 mov.l (EXC_DREGS,%a6,%d1.w*4),%d1 # fetch index reg value
1377 mov.b &immed_flg,SPCOND_FLG(%a6) # set immediate flag
1379 mov.l EXC_EXTWPTR(%a6),%a0 # fetch extension word ptr
1386 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1387 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1400 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1401 addq.l &0x4,EXC_EXTWPTR(%a6) # incr instruction ptr
1414 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1415 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1423 add.l EXC_EXTWPTR(%a6),%a0 # pc + d16
1437 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1438 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1444 mov.l EXC_EXTWPTR(%a6),%a0 # put base in a0
1466 mov.l (EXC_DREGS,%a6,%d1.w*4),%d1 # fetch index reg value
1501 mov.l (EXC_DREGS,%a6,%d2.w*4),%d2
1519 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1520 addq.l &0x4,EXC_EXTWPTR(%a6) # incr instruction ptr
1528 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1529 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1546 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1547 addq.l &0x4,EXC_EXTWPTR(%a6) # incr instruction ptr
1556 mov.l EXC_EXTWPTR(%a6),%a0 # fetch instruction addr
1557 addq.l &0x2,EXC_EXTWPTR(%a6) # incr instruction ptr
1652 mov.w EXC_OPWORD(%a6),%d1 # fetch the opcode word
1657 mov.l (EXC_AREGS,%a6,%d0.w*4),%a0 # fetch ay
1659 add.w EXC_EXTWORD(%a6),%a0 # add: an + sgn_ext(disp)
1670 mov.l (EXC_DREGS,%a6,%d0.w*4), %d0 # fetch dx
1793 mov.b EXC_OPWORD(%a6),%d1
1797 mov.l %d2,(EXC_DREGS,%a6,%d1.w*4) # store dx
1823 mov.b EXC_OPWORD(%a6),%d1
1827 mov.w %d2,(EXC_DREGS+2,%a6,%d1.w*4) # store dx
1897 mov.b EXC_EXTWORD(%a6), %d0 # fetch hi extension word
1901 mov.l (EXC_DREGS,%a6,%d0.w*4), %d2 # get regval
1903 cmpi.b EXC_OPWORD(%a6), &0x2 # what size is operation?
1944 btst &0x7, EXC_EXTWORD(%a6) # address compare?
1968 btst &0x7, EXC_EXTWORD(%a6) # address compare?
1993 mov.w EXC_CC(%a6), %d4 # fetch old ccodes
1996 mov.w %d4, EXC_CC(%a6) # save new ccodes
1998 btst &0x3, EXC_EXTWORD(%a6) # separate chk2,cmp2
2011 mov.b &ichk_flg,SPCOND_FLG(%a6) # set "special case" flag
2087 mov.b EXC_OPWORD+1(%a6), %d0
2092 mov.b EXC_OPWORD+1(%a6), %d0 # extract Dn from opcode
2094 mov.l (EXC_DREGS,%a6,%d0.w*4), %d7 # fetch divisor from register
2099 mov.b EXC_EXTWORD+1(%a6), %d0 # extract Dr from extword
2100 mov.b EXC_EXTWORD(%a6), %d1 # extract Dq from extword
2104 mov.w %d0, NDRSAVE(%a6) # save Dr for later
2105 mov.w %d1, NDQSAVE(%a6) # save Dq for later
2108 mov.l (EXC_DREGS,%a6,%d0.w*4), %d5 # get dividend hi
2109 mov.l (EXC_DREGS,%a6,%d1.w*4), %d6 # get dividend lo
2112 btst &0x3, EXC_EXTWORD(%a6) # signed or unsigned?
2118 slt NDIVISOR(%a6) # save sign of divisor
2126 slt NDIVIDEND(%a6) # save sign of dividend
2165 btst &0x3, EXC_EXTWORD(%a6) # do divs, divu separately
2169 tst.b NDIVIDEND(%a6) # remainder has same sign
2173 mov.b NDIVISOR(%a6), %d0
2174 eor.b %d0, NDIVIDEND(%a6) # chk if quotient is negative
2192 mov.w EXC_CC(%a6), %cc
2194 mov.w %cc, EXC_CC(%a6)
2196 mov.w NDRSAVE(%a6), %d0 # get Dr off stack
2197 mov.w NDQSAVE(%a6), %d1 # get Dq off stack
2201 mov.l %d5, (EXC_DREGS,%a6,%d0.w*4) # save remainder
2202 mov.l %d6, (EXC_DREGS,%a6,%d1.w*4) # save quotient
2207 bset &0x1, EXC_CC+1(%a6) # 'V' set on overflow
2208 bclr &0x0, EXC_CC+1(%a6) # 'C' cleared on overflow
2213 andi.b &0x1e, EXC_CC+1(%a6) # clear 'C' bit on divbyzero
2214 ori.b &idbyz_flg,SPCOND_FLG(%a6) # set "special case" flag
2277 clr.l DDNORMAL(%a6) # count of shifts for normalization
2278 clr.b DDSECOND(%a6) # clear flag for quotient digits
2283 addq.l &0x1, DDNORMAL(%a6) # count normalization shifts
2366 tst.b DDSECOND(%a6) # both q words done?
2370 mov.w %d1, DDQUOTIENT(%a6)
2376 st DDSECOND(%a6) # second digit
2380 mov.w %d1, DDQUOTIENT+2(%a6)
2385 mov.l DDNORMAL(%a6), %d7 # get norm shift count
2394 mov.l DDQUOTIENT(%a6), %d6 # quotient
2433 cmpi.b SPCOND_FLG(%a6),&immed_flg # immediate addressing mode?
2449 addq.l &0x4,EXC_EXTWPTR(%a6)
2515 mov.b EXC_OPWORD+1(%a6), %d0 # extract src {mode,reg}
2523 mov.l (EXC_DREGS,%a6,%d0.w*4), %d3 # fetch multiplier
2528 mov.w EXC_EXTWORD(%a6), %d2 # fetch ext word
2534 mov.l (EXC_DREGS,%a6,%d2.w*4), %d4 # get multiplicand
2545 clr.b EXC_TEMP(%a6) # clear temp space
2546 btst &0x3, EXC_EXTWORD(%a6) # signed or unsigned?
2552 ori.b &0x1, EXC_TEMP(%a6) # save multiplier sgn
2559 eori.b &0x1, EXC_TEMP(%a6) # calculate correct sign
2615 tst.b EXC_TEMP(%a6) # should result be signed?
2632 mov.l %d3, (EXC_DREGS,%a6,%d2.w*4) # save lo(result)
2634 mov.l %d4, (EXC_DREGS,%a6,%d1.w*4) # save hi(result)
2642 mov.b EXC_CC+1(%a6), %d6 # fetch previous %ccr
2646 mov.b %d6, EXC_CC+1(%a6) # save new %ccr
2653 clr.l (EXC_DREGS,%a6,%d2.w*4) # save lo(result)
2654 clr.l (EXC_DREGS,%a6,%d1.w*4) # save hi(result)
2667 cmpi.b SPCOND_FLG(%a6),&immed_flg # immediate addressing mode?
2684 addq.l &0x4,EXC_EXTWPTR(%a6)
2765 mov.l %d0,EXC_TEMP+0x4(%a6) # store for possible restart
2770 mov.l (EXC_DREGS,%a6,%d0.w*4),%a1 # fetch ADDR2
2771 mov.l %a1,ADDR2(%a6)
2777 mov.l (EXC_DREGS,%a6,%d1.w*4),%d5 # fetch Update2 Op
2780 mov.l (EXC_DREGS,%a6,%d0.w*4),%d3 # fetch Compare2 Op
2781 mov.w %d0,DC2(%a6)
2783 mov.w EXC_EXTWORD(%a6),%d0
2788 mov.l (EXC_DREGS,%a6,%d0.w*4),%a0 # fetch ADDR1
2789 mov.l %a0,ADDR1(%a6)
2795 mov.l (EXC_DREGS,%a6,%d1.w*4),%d4 # fetch Update1 Op
2798 mov.l (EXC_DREGS,%a6,%d0.w*4),%d2 # fetch Compare1 Op
2799 mov.w %d0,DC1(%a6)
2801 btst &0x1,EXC_OPWORD(%a6) # word or long?
2804 btst &0x5,EXC_ISR(%a6) # user or supervisor?
2846 btst &0x1,EXC_OPWORD(%a6)
2849 mov.w EXC_CC(%a6),%cc # load old ccodes
2854 mov.w %cc,EXC_CC(%a6) # save new ccodes
2859 mov.w DC2(%a6),%d3 # fetch Dc2
2860 mov.w %d1,(2+EXC_DREGS,%a6,%d3.w*4) # store new Compare2 Op
2862 mov.w DC1(%a6),%d2 # fetch Dc1
2863 mov.w %d0,(2+EXC_DREGS,%a6,%d2.w*4) # store new Compare1 Op
2866 btst &0x5,EXC_ISR(%a6)
2870 mov.l ADDR1(%a6),%a0 # pass ADDR1
2875 mov.l ADDR2(%a6),%a0 # pass ADDR2
2880 mov.w EXC_CC(%a6),%cc # load old ccodes
2885 mov.w %cc,EXC_CC(%a6) # save new ccodes
2890 mov.w DC2(%a6),%d3 # fetch Dc2
2891 mov.l %d1,(EXC_DREGS,%a6,%d3.w*4) # store new Compare2 Op
2893 mov.w DC1(%a6),%d2 # fetch Dc1
2894 mov.l %d0,(EXC_DREGS,%a6,%d2.w*4) # store new Compare1 Op
2897 btst &0x5,EXC_ISR(%a6)
2901 mov.l ADDR1(%a6),%a0 # pass ADDR1
2906 mov.l ADDR2(%a6),%a0 # pass ADDR2
2913 mov.l EXC_TEMP+0x4(%a6),%d0
3005 btst &0x1,EXC_OPWORD(%a6) # word or long operation?
3011 mov.l %a0,ADDR(%a6) # save <ea> for possible restart
3018 mov.l %a0,ADDR(%a6) # save <ea> for possible restart
3022 mov.w EXC_EXTWORD(%a6),%d0 # fetch cas extension word
3027 mov.l (EXC_DREGS,%a6,%d0.w*4),%d2 # get update operand
3030 mov.l (EXC_DREGS,%a6,%d1.w*4),%d4 # get compare operand
3031 mov.w %d1,DC(%a6) # save Dc
3033 btst &0x5,EXC_ISR(%a6) # which mode for exception?
3049 btst &0x1,EXC_OPWORD(%a6)
3055 mov.w EXC_CC(%a6),%cc # restore cc
3057 mov.w %cc,EXC_CC(%a6) # save cc
3062 mov.w DC(%a6),%d3
3063 mov.w %d0,(EXC_DREGS+2,%a6,%d3.w*4) # Dc = destination
3066 mov.l ADDR(%a6),%a0 # pass addr
3068 btst &0x5,EXC_ISR(%a6)
3076 mov.w EXC_CC(%a6),%cc # restore cc
3078 mov.w %cc,EXC_CC(%a6) # save cc
3083 mov.w DC(%a6),%d3
3084 mov.l %d0,(EXC_DREGS,%a6,%d3.w*4) # Dc = destination
3087 mov.l ADDR(%a6),%a0 # pass addr
3089 btst &0x5,EXC_ISR(%a6)
3101 cmpi.b EXC_OPWORD+1(%a6),&0xfc # cas or cas2?
3104 mov.l ADDR(%a6),%a0 # load <ea>
3105 btst &0x1,EXC_OPWORD(%a6) # word or long operation?
3127 subq.l &0x8,%a6 # shift frame ptr down, too
3135 mov.w &0x4008,EXC_IVOFF(%a6) # put new stk fmt, voff
3136 mov.l %a2,EXC_IVOFF+0x2(%a6) # put faulting addr on stack
3137 mov.l %d0,EXC_IVOFF+0x6(%a6) # put FSLW on stack
3138 movm.l EXC_DREGS(%a6),&0x3fff # restore user regs
3139 unlk %a6 # unlink stack frame