.file "memcpy-bi.c" .text .align 2 .globl check .type check, @function check: link.w %a6,#0 move.l 16(%a6),-(%sp) move.l 12(%a6),-(%sp) move.l 8(%a6),-(%sp) jbsr memcmp lea (12,%sp),%sp tst.l %d0 jbeq .L1 jbsr abort .align 2 .L1: unlk %a6 rts .size check, .-check .align 2 .globl main .type main, @function main: link.w %a6,#0 movm.l #0x2038,-(%sp) clr.l %d2 lea src,%a1 .align 2 .L8: move.l %d2,%d1 muls.l #1321528399,%d0:%d1 asr.l #3,%d0 move.l %d2,%d1 add.l %d1,%d1 subx.l %d1,%d1 sub.l %d1,%d0 move.l %d0,%a2 lea (%a2,%d0.l*2),%a0 lea (%a2,%a0.l*4),%a2 move.l %a2,%d0 add.l %d0,%d0 move.l %d2,%d1 sub.l %d0,%d1 move.l %d1,%d0 add.b #97,%d0 move.b %d0,(%a1,%d2.l) addq.l #1,%d2 moveq.l #79,%d0 cmp.l %d2,%d0 jbcc .L8 clr.l -(%sp) pea src pea dst lea check,%a2 jbsr (%a2) clr.b dst pea 1.w pea src pea dst lea memcpy,%a4 jbsr (%a4) pea 1.w pea src pea dst jbsr (%a2) clr.w dst lea (32,%sp),%sp move.l #2,(%sp) pea src pea dst jbsr (%a4) pea 2.w pea src pea dst jbsr (%a2) clr.w dst clr.b dst+2 pea 3.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #3,(%sp) pea src pea dst jbsr (%a2) clr.l dst pea 4.w pea src pea dst jbsr (%a4) pea 4.w pea src pea dst jbsr (%a2) clr.l dst clr.b dst+4 lea (32,%sp),%sp move.l #5,(%sp) pea src pea dst jbsr (%a4) pea 5.w pea src pea dst jbsr (%a2) clr.l dst clr.w dst+4 pea 6.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #6,(%sp) pea src pea dst jbsr (%a2) clr.l dst clr.w dst+4 clr.b dst+6 pea 7.w pea src pea dst jbsr (%a4) pea 7.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 lea (32,%sp),%sp move.l #8,(%sp) pea src pea dst jbsr (%a4) pea 8.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.b dst+8 pea 9.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #9,(%sp) pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.w dst+8 pea 10.w pea src pea dst jbsr (%a4) pea 10.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.w dst+8 clr.b dst+10 lea (32,%sp),%sp move.l #11,(%sp) pea src pea dst jbsr (%a4) pea 11.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.l dst+8 pea 12.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #12,(%sp) pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.l dst+8 clr.b dst+12 pea 13.w pea src pea dst jbsr (%a4) pea 13.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.l dst+8 clr.w dst+12 lea (32,%sp),%sp move.l #14,(%sp) pea src pea dst jbsr (%a4) pea 14.w pea src pea dst jbsr (%a2) clr.l dst clr.l dst+4 clr.l dst+8 clr.w dst+12 clr.b dst+14 pea 15.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #15,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 pea 16.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.b src+16,dst+16 pea 17.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.w src+16,dst+16 lea (32,%sp),%sp move.l #18,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.w src+16,dst+16 move.b src+18,dst+18 pea 19.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 pea 20.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.b src+20,dst+20 lea (32,%sp),%sp move.l #21,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.w src+20,dst+20 pea 22.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.w src+20,dst+20 move.b src+22,dst+22 pea 23.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 lea (32,%sp),%sp move.l #24,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.b src+24,dst+24 pea 25.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.w src+24,dst+24 pea 26.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.w src+24,dst+24 move.b src+26,dst+26 lea (32,%sp),%sp move.l #27,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 pea 28.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.b src+28,dst+28 pea 29.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.w src+28,dst+28 lea (32,%sp),%sp move.l #30,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.w src+28,dst+28 move.b src+30,dst+30 pea 31.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 pea 32.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.b src+32,dst+32 lea (32,%sp),%sp move.l #33,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.w src+32,dst+32 pea 34.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.w src+32,dst+32 move.b src+34,dst+34 pea 35.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 lea (32,%sp),%sp move.l #36,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.b src+36,dst+36 pea 37.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.w src+36,dst+36 pea 38.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.w src+36,dst+36 move.b src+38,dst+38 lea (32,%sp),%sp move.l #39,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 pea 40.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.b src+40,dst+40 pea 41.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.w src+40,dst+40 lea (32,%sp),%sp move.l #42,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.w src+40,dst+40 move.b src+42,dst+42 pea 43.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 pea 44.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.b src+44,dst+44 lea (32,%sp),%sp move.l #45,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.w src+44,dst+44 pea 46.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.w src+44,dst+44 move.b src+46,dst+46 pea 47.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 lea (32,%sp),%sp move.l #48,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.b src+48,dst+48 pea 49.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.w src+48,dst+48 pea 50.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.w src+48,dst+48 move.b src+50,dst+50 lea (32,%sp),%sp move.l #51,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.l src+48,dst+48 pea 52.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.l src+48,dst+48 move.b src+52,dst+52 pea 53.w pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.l src+48,dst+48 move.w src+52,dst+52 lea (32,%sp),%sp move.l #54,(%sp) pea src pea dst jbsr (%a2) pea 55.w clr.l -(%sp) pea dst lea memset,%a3 jbsr (%a3) pea 55.w pea src pea dst jbsr (%a4) lea (32,%sp),%sp move.l #55,(%sp) pea src pea dst jbsr (%a2) move.l src,dst move.l src+4,dst+4 move.l src+8,dst+8 move.l src+12,dst+12 move.l src+16,dst+16 move.l src+20,dst+20 move.l src+24,dst+24 move.l src+28,dst+28 move.l src+32,dst+32 move.l src+36,dst+36 move.l src+40,dst+40 move.l src+44,dst+44 move.l src+48,dst+48 move.l src+52,dst+52 pea 56.w pea src pea dst jbsr (%a2) pea 57.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #57,(%sp) pea src pea dst jbsr (%a4) pea 57.w pea src pea dst jbsr (%a2) pea 58.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #58,(%sp) pea src pea dst jbsr (%a4) pea 58.w pea src pea dst jbsr (%a2) pea 59.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #59,(%sp) pea src pea dst jbsr (%a4) pea 59.w pea src pea dst jbsr (%a2) pea 60.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #60,(%sp) pea src pea dst jbsr (%a4) pea 60.w pea src pea dst jbsr (%a2) pea 61.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #61,(%sp) pea src pea dst jbsr (%a4) pea 61.w pea src pea dst jbsr (%a2) pea 62.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #62,(%sp) pea src pea dst jbsr (%a4) pea 62.w pea src pea dst jbsr (%a2) pea 63.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #63,(%sp) pea src pea dst jbsr (%a4) pea 63.w pea src pea dst jbsr (%a2) pea 64.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #64,(%sp) pea src pea dst jbsr (%a4) pea 64.w pea src pea dst jbsr (%a2) pea 65.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #65,(%sp) pea src pea dst jbsr (%a4) pea 65.w pea src pea dst jbsr (%a2) pea 66.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #66,(%sp) pea src pea dst jbsr (%a4) pea 66.w pea src pea dst jbsr (%a2) pea 67.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #67,(%sp) pea src pea dst jbsr (%a4) pea 67.w pea src pea dst jbsr (%a2) pea 68.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #68,(%sp) pea src pea dst jbsr (%a4) pea 68.w pea src pea dst jbsr (%a2) pea 69.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #69,(%sp) pea src pea dst jbsr (%a4) pea 69.w pea src pea dst jbsr (%a2) pea 70.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #70,(%sp) pea src pea dst jbsr (%a4) pea 70.w pea src pea dst jbsr (%a2) pea 71.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #71,(%sp) pea src pea dst jbsr (%a4) pea 71.w pea src pea dst jbsr (%a2) pea 72.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #72,(%sp) pea src pea dst jbsr (%a4) pea 72.w pea src pea dst jbsr (%a2) pea 73.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #73,(%sp) pea src pea dst jbsr (%a4) pea 73.w pea src pea dst jbsr (%a2) pea 74.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #74,(%sp) pea src pea dst jbsr (%a4) pea 74.w pea src pea dst jbsr (%a2) pea 75.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #75,(%sp) pea src pea dst jbsr (%a4) pea 75.w pea src pea dst jbsr (%a2) pea 76.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #76,(%sp) pea src pea dst jbsr (%a4) pea 76.w pea src pea dst jbsr (%a2) pea 77.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #77,(%sp) pea src pea dst jbsr (%a4) pea 77.w pea src pea dst jbsr (%a2) pea 78.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #78,(%sp) pea src pea dst jbsr (%a4) pea 78.w pea src pea dst jbsr (%a2) pea 79.w clr.l -(%sp) pea dst jbsr (%a3) lea (32,%sp),%sp move.l #79,(%sp) pea src pea dst jbsr (%a4) pea 79.w pea src pea dst jbsr (%a2) clr.l %d0 movm.l -16(%a6),#0x1c04 unlk %a6 rts .size main, .-main .comm src,80,2 .comm dst,80,2 .ident "GCC: (GNU) 3.3.2"