fread.s 578 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. .file "fread.c"
  2. #NO_APP
  3. .text
  4. tigcc_compiled.:
  5. #APP
  6. .set _A_LINE,0xA000
  7. #NO_APP
  8. .text
  9. .even
  10. .globl fread
  11. fread:
  12. movm.l #0x1f30,-(%sp)
  13. move.l %a0,%a3
  14. move.w %d0,%d7
  15. move.w %d1,%d6
  16. move.l %a1,%a2
  17. move.w 10(%a1),%d0
  18. move.w %d0,%d4
  19. and.w #64,%d4
  20. or.w #64,%d0
  21. move.w %d0,10(%a1)
  22. clr.w %d5
  23. jbra .L2
  24. .even
  25. .L12:
  26. move.l %a2,%a0
  27. jbsr fgetc
  28. tst.w %d0
  29. jblt .L11
  30. move.b %d0,(%a3)+
  31. addq.w #1,%d3
  32. .L6:
  33. cmp.w %d3,%d7
  34. jbhi .L12
  35. addq.w #1,%d5
  36. .L2:
  37. clr.w %d3
  38. cmp.w %d5,%d6
  39. jbhi .L6
  40. .L11:
  41. or.w #-65,%d4
  42. and.w %d4,10(%a2)
  43. move.w %d5,%d0
  44. movm.l (%sp)+,#0xcf8
  45. rts