📄 itest.s
字号:
clr.b 0x0+0x8(%a0) clr.b 0x2+0x8(%a0) clr.b 0x4+0x8(%a0) clr.b 0x6+0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.l %d0,(0x8,%a0) mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.b 0x6+0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x4+0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x2+0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x0+0x8(%a0),%d1 cmp.l %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error################################ movep.l (0x8,%a0),%d0 ################################movp_13: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA(%a6),%a0 mov.b &0xaa,0x0+0x8(%a0) mov.b &0xaa,0x2+0x8(%a0) mov.b &0xaa,0x4+0x8(%a0) mov.b &0xaa,0x6+0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.l (0x8,%a0),%d0 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0xaaaaaaaa,IREGS(%a6) mov.l &0xaaaaaaaa,%d1 cmp.l %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error################################# movep.w %d0,(-0x8,%a0) #################################movp_14: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x8(%a6),%a0 mov.w &0xaaaa,%d0 clr.b 0x0-0x8(%a0) clr.b 0x2-0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.w %d0,(-0x8,%a0) mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.b 0x2-0x8(%a0),%d1 lsl.w &0x8,%d1 mov.b 0x0-0x8(%a0),%d1 cmp.w %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error################################# movep.w (-0x8,%a0),%d0 #################################movp_15: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x8(%a6),%a0 mov.b &0xaa,0x0-0x8(%a0) mov.b &0xaa,0x2-0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.w (-0x8,%a0),%d0 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.w &0xaaaa,IREGS+0x2(%a6) mov.w &0xaaaa,%d1 cmp.w %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error################################# movep.l %d0,(-0x8,%a0) #################################movp_16: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x8(%a6),%a0 mov.l &0xaaaaaaaa,%d0 clr.b 0x0-0x8(%a0) clr.b 0x2-0x8(%a0) clr.b 0x4-0x8(%a0) clr.b 0x8-0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.l %d0,(-0x8,%a0) mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.b 0x6-0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x4-0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x2-0x8(%a0),%d1 lsl.l &0x8,%d1 mov.b 0x0-0x8(%a0),%d1 cmp.l %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error################################# movep.l (-0x8,%a0),%d0 #################################movp_17: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x8(%a6),%a0 mov.b &0xaa,0x0-0x8(%a0) mov.b &0xaa,0x2-0x8(%a0) mov.b &0xaa,0x4-0x8(%a0) mov.b &0xaa,0x8-0x8(%a0) mov.w &0x001f,ICCR(%a6) mov.w &0x1f,%cc movm.l &0x7fff,IREGS(%a6) movp.l (-0x8,%a0),%d0 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0xaaaaaaaa,IREGS(%a6) mov.l &0xaaaaaaaa,%d1 cmp.l %d0,%d1 bne.l error bsr.l chkregs tst.b %d0 bne.l error mov.l TESTCTR(%a6),%d1 clr.l %d0 rts###########################################################divul_str: string "\t64-bit divide..." align 0x4divul_0: addq.l &0x1,TESTCTR(%a6)# movm.l DEF_REGS(%pc),&0x3fff# clr.l %d1# mov.l &0x99999999,%d2# mov.l &0x88888888,%d3# mov.w &0x001e,ICCR(%a6)# mov.w &0x001f,%cc# movm.l &0x7fff,IREGS(%a6)# divu.l %d1,%d2:%d3# mov.w %cc,SCCR(%a6)# movm.l &0x7fff,SREGS(%a6)# bsr.l chkregs# tst.b %d0# bne.l errordivul_1: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x00000001,%d1 mov.l &0x00000000,%d2 mov.l &0x00000000,%d3 mov.w &0x0014,ICCR(%a6) mov.w &0x001f,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_2: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x44444444,%d1 mov.l &0x00000000,%d2 mov.l &0x55555555,%d3 mov.w &0x0010,ICCR(%a6) mov.w &0x001f,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0x11111111,IREGS+0x8(%a6) mov.l &0x00000001,IREGS+0xc(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_3: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x55555555,%d1 mov.l &0x00000000,%d2 mov.l &0x44444444,%d3 mov.w &0x0014,ICCR(%a6) mov.w &0x001f,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0x44444444,IREGS+0x8(%a6) mov.l &0x00000000,IREGS+0xc(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_4: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x11111111,%d1 mov.l &0x44444444,%d2 mov.l &0x44444444,%d3 mov.w &0x001e,ICCR(%a6) mov.w &0x001d,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_5: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0xfffffffe,%d1 mov.l &0x00000001,%d2 mov.l &0x00000002,%d3 mov.w &0x001e,ICCR(%a6) mov.w &0x001d,%cc movm.l &0x7fff,IREGS(%a6) divs.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_6: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0xfffffffe,%d1 mov.l &0x00000001,%d2 mov.l &0x00000000,%d3 mov.w &0x0018,ICCR(%a6) mov.w &0x001d,%cc movm.l &0x7fff,IREGS(%a6) divs.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0x00000000,IREGS+0x8(%a6) mov.l &0x80000000,IREGS+0xc(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_7: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x00000002,%d1 mov.l &0x00000001,%d2 mov.l &0x00000000,%d3 mov.w &0x001e,ICCR(%a6) mov.w &0x001d,%cc movm.l &0x7fff,IREGS(%a6) divs.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_8: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0xffffffff,%d1 mov.l &0xfffffffe,%d2 mov.l &0xffffffff,%d3 mov.w &0x0008,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_9: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0xffffffff,%d1 mov.l &0xfffffffe,%d2 mov.l &0xffffffff,%d3 mov.w &0x0008,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) divu.l &0xffffffff,%d2:%d2 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0xffffffff,IREGS+0x8(%a6) bsr.l chkregs tst.b %d0 bne.l errordivul_10: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff mov.l &0x0000ffff,%d1 mov.l &0x00000001,%d2 mov.l &0x55555555,%d3 mov.w &0x0000,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) divu.l %d1,%d2:%d3 mov.w %cc,SCCR(%a6) movm.l &0x7fff,SREGS(%a6) mov.l &0x0000aaab,IREGS+0x8(%a6) mov.l &0x00015556,IREGS+0xc(%a6) bsr.l chkregs tst.b %d0 bne.l error mov.l TESTCTR(%a6),%d1 clr.l %d0 rts###########################################################cas_str: string "\tcas..." align 0x4cas0: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 mov.w &0xaaaa,(%a0) mov.w &0xaaaa,%d1 mov.w &0xbbbb,%d2 mov.w &0x0014,ICCR(%a6) mov.w &0x0010,%cc movm.l &0x7fff,IREGS(%a6) cas.w %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.w (%a0),%d3 mov.w &0xbbbb,IREGS+0xc+0x2(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas1: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 mov.w &0xeeee,(%a0) mov.w &0x0000aaaa,%d1 mov.w &0x0000bbbb,%d2 mov.w &0x0000,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas.w %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.w (%a0),%d3 mov.w &0xeeee,IREGS+0x4+0x2(%a6) mov.w &0xeeee,IREGS+0xc+0x2(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas2: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x2(%a6),%a0 mov.l &0xaaaaaaaa,(%a0) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.w &0x0004,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas.l %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.l (%a0),%d3 mov.l &0xbbbbbbbb,IREGS+0xc(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas3: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x2(%a6),%a0 mov.l &0xeeeeeeee,(%a0) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.w &0x0000,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas.l %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.l (%a0),%d3 mov.l &0xeeeeeeee,IREGS+0x4(%a6) mov.l &0xeeeeeeee,IREGS+0xc(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas4: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 mov.l &0xaaaaaaaa,(%a0) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.w &0x0004,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas.l %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.l (%a0),%d3 mov.l &0xbbbbbbbb,IREGS+0xc(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas5: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 mov.l &0x7fffffff,(%a0) mov.l &0x80000000,%d1 mov.l &0xbbbbbbbb,%d2 mov.w &0x001b,ICCR(%a6) mov.w &0x0010,%cc movm.l &0x7fff,IREGS(%a6) cas.l %d1,%d2,(%a0) # Dc,Du,<ea> mov.w %cc,SCCR(%a6) mov.l (%a0),%d3 mov.l &0x7fffffff,IREGS+0x4(%a6) mov.l &0x7fffffff,IREGS+0xc(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l error mov.l TESTCTR(%a6),%d1 clr.l %d0 rts###########################################################cas2_str: string "\tcas2..." align 0x4cas20: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x0(%a6),%a0 lea DATA+0x4(%a6),%a1 mov.l &0xaaaaaaaa,(%a0) mov.l &0xbbbbbbbb,(%a1) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.l &0xcccccccc,%d3 mov.l &0xdddddddd,%d4 mov.w &0x0014,ICCR(%a6) mov.w &0x0010,%cc movm.l &0x7fff,IREGS(%a6) cas2.l %d1:%d2,%d3:%d4,(%a0):(%a1) # Dc1:Dc2,Du1:Du2,(Rn1):(Rn2) mov.w %cc,SCCR(%a6) mov.l (%a0),%d5 mov.l (%a1),%d6 mov.l &0xcccccccc,IREGS+0x14(%a6) mov.l &0xdddddddd,IREGS+0x18(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas21: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 lea DATA+0x5(%a6),%a1 mov.l &0xaaaaaaaa,(%a0) mov.l &0xbbbbbbbb,(%a1) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.l &0xcccccccc,%d3 mov.l &0xdddddddd,%d4 mov.w &0x0014,ICCR(%a6) mov.w &0x0010,%cc movm.l &0x7fff,IREGS(%a6) cas2.l %d1:%d2,%d3:%d4,(%a0):(%a1) # Dc1:Dc2,Du1:Du2,(Rn1):(Rn2) mov.w %cc,SCCR(%a6) mov.l (%a0),%d5 mov.l (%a1),%d6 mov.l &0xcccccccc,IREGS+0x14(%a6) mov.l &0xdddddddd,IREGS+0x18(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas22: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x2(%a6),%a0 lea DATA+0x6(%a6),%a1 mov.l &0xaaaaaaaa,(%a0) mov.l &0xbbbbbbbb,(%a1) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.l &0xcccccccc,%d3 mov.l &0xdddddddd,%d4 mov.w &0x0014,ICCR(%a6) mov.w &0x0010,%cc movm.l &0x7fff,IREGS(%a6) cas2.l %d1:%d2,%d3:%d4,(%a0):(%a1) # Dc1:Dc2,Du1:Du2,(Rn1):(Rn2) mov.w %cc,SCCR(%a6) mov.l (%a0),%d5 mov.l (%a1),%d6 mov.l &0xcccccccc,IREGS+0x14(%a6) mov.l &0xdddddddd,IREGS+0x18(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas23: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x0(%a6),%a0 lea DATA+0x4(%a6),%a1 mov.l &0xeeeeeeee,(%a0) mov.l &0xbbbbbbbb,(%a1) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.l &0xcccccccc,%d3 mov.l &0xdddddddd,%d4 mov.w &0x0000,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas2.l %d1:%d2,%d3:%d4,(%a0):(%a1) # Dc1:Dc2,Du1:Du2,(Rn1):(Rn2) mov.w %cc,SCCR(%a6) mov.l (%a0),%d5 mov.l (%a1),%d6 mov.l &0xeeeeeeee,IREGS+0x4(%a6) mov.l &0xbbbbbbbb,IREGS+0x8(%a6) mov.l &0xeeeeeeee,IREGS+0x14(%a6) mov.l &0xbbbbbbbb,IREGS+0x18(%a6) movm.l &0x7fff,SREGS(%a6) bsr.l chkregs tst.b %d0 bne.l errorcas24: addq.l &0x1,TESTCTR(%a6) movm.l DEF_REGS(%pc),&0x3fff lea DATA+0x1(%a6),%a0 lea DATA+0x5(%a6),%a1 mov.l &0xeeeeeeee,(%a0) mov.l &0xbbbbbbbb,(%a1) mov.l &0xaaaaaaaa,%d1 mov.l &0xbbbbbbbb,%d2 mov.l &0xcccccccc,%d3 mov.l &0xdddddddd,%d4 mov.w &0x0000,ICCR(%a6) mov.w &0x0000,%cc movm.l &0x7fff,IREGS(%a6) cas2.l %d1:%d2,%d3:%d4,(%a0):(%a1) # Dc1:Dc2,Du1:Du2,(Rn1):(Rn2)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -