.file "bf.c" .text .align 2 .globl ext .type ext, @function ext: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%d2 move.l 12(%a6),%d0 move.l 16(%a6),%a0 move.l %d2,%d1 asr.l %d0,%d1 tst.l %a0 jbeq .L3 neg.l %d0 sub.l %a0,%d0 moveq.l #31,%d1 and.l %d1,%d0 move.l %d2,%d1 lsl.l %d0,%d1 moveq.l #32,%d0 sub.l %a0,%d0 asr.l %d0,%d1 .L3: move.l %d1,%d0 move.l (%sp)+,%d2 unlk %a6 rts .size ext, .-ext .align 2 .globl extu .type extu, @function extu: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%d2 move.l 12(%a6),%d0 move.l 16(%a6),%a0 move.l %d2,%d1 lsr.l %d0,%d1 tst.l %a0 jbeq .L6 neg.l %d0 sub.l %a0,%d0 moveq.l #31,%d1 and.l %d1,%d0 move.l %d2,%d1 lsl.l %d0,%d1 moveq.l #32,%d0 sub.l %a0,%d0 lsr.l %d0,%d1 .L6: move.l %d1,%d0 move.l (%sp)+,%d2 unlk %a6 rts .size extu, .-extu .align 2 .globl mak .type mak, @function mak: link.w %a6,#0 move.l %d2,-(%sp) move.l 8(%a6),%d2 move.l 12(%a6),%d1 move.l 16(%a6),%a0 move.l %d2,%d0 lsl.l %d1,%d0 tst.l %a0 jbeq .L9 moveq.l #32,%d0 sub.l %a0,%d0 lsl.l %d0,%d2 move.l %d2,%d0 neg.l %d1 sub.l %a0,%d1 moveq.l #31,%d2 and.l %d2,%d1 lsr.l %d1,%d0 .L9: move.l (%sp)+,%d2 unlk %a6 rts .size mak, .-mak .align 2 .globl rot .type rot, @function rot: link.w %a6,#0 move.l %d3,-(%sp) move.l %d2,-(%sp) move.l 8(%a6),%d1 move.l 12(%a6),%d2 move.l %d1,%d0 lsr.l %d2,%d0 neg.l %d2 moveq.l #31,%d3 and.l %d3,%d2 lsl.l %d2,%d1 or.l %d1,%d0 move.l (%sp)+,%d2 move.l (%sp)+,%d3 unlk %a6 rts .size rot, .-rot .section .rodata.str1.1,"aMS",@progbits,1 .LC0: .string "%x\n" .text .align 2 .globl main .type main, @function main: link.w %a6,#0 move.l %a3,-(%sp) move.l %a2,-(%sp) move.l 12(%a6),%a3 move.l 4(%a3),-(%sp) lea atoi,%a2 jbsr (%a2) move.l %d0,(%sp) move.l 8(%a3),-(%sp) jbsr (%a2) move.l %d0,(%sp) pea -1.w jbsr clr addq.w #8,%sp move.l %d0,(%sp) pea .LC0 jbsr printf move.l -8(%a6),%a2 move.l -4(%a6),%a3 unlk %a6 rts .size main, .-main .ident "GCC: (GNU) 3.3.2"