ashldi.s 391 B

123456789101112131415161718192021222324
  1. |ashldi3 routine copyright (C) 2002, Kevin Kofler
  2. .xdef __ashldi3
  3. .text
  4. __ashldi3:
  5. tst.w 12(%a7)
  6. bne.s .L__ashldi3_return0
  7. move.l 4(%a7),%d0
  8. move.l 8(%a7),%d1
  9. move.w 14(%a7),%d2
  10. beq.s .L__ashldi3_returnn
  11. subq.w #1,%d2
  12. .L__ashldi3_loop:
  13. add.l %d1,%d1
  14. addx.l %d0,%d0
  15. dbra.w %d2,.L__ashldi3_loop
  16. .L__ashldi3_returnn:
  17. rts
  18. .L__ashldi3_return0:
  19. moveq.l #0,%d0
  20. moveq.l #0,%d1
  21. rts