calloc.lst 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. GAS LISTING /tmp/ccIhQdwj.s page 1
  2. 1 .file "calloc.c"
  3. 2 __SP_H__ = 0x3e
  4. 3 __SP_L__ = 0x3d
  5. 4 __SREG__ = 0x3f
  6. 5 __RAMPZ__ = 0x3b
  7. 6 __tmp_reg__ = 0
  8. 7 __zero_reg__ = 1
  9. 8 .section .text.calloc,"ax",@progbits
  10. 9 .global calloc
  11. 10 .type calloc, @function
  12. 11 calloc:
  13. 12 0000 0F93 push r16
  14. 13 0002 1F93 push r17
  15. 14 0004 CF93 push r28
  16. 15 0006 DF93 push r29
  17. 16 /* prologue: function */
  18. 17 /* frame size = 0 */
  19. 18 /* stack size = 4 */
  20. 19 .L__stack_usage = 4
  21. 20 0008 689F mul r22,r24
  22. 21 000a 8001 movw r16,r0
  23. 22 000c 699F mul r22,r25
  24. 23 000e 100D add r17,r0
  25. 24 0010 789F mul r23,r24
  26. 25 0012 100D add r17,r0
  27. 26 0014 1124 clr r1
  28. 27 0016 C801 movw r24,r16
  29. 28 0018 0E94 0000 call malloc
  30. 29 001c EC01 movw r28,r24
  31. 30 001e 0097 sbiw r24,0
  32. 31 0020 01F0 breq .L2
  33. 32 0022 A801 movw r20,r16
  34. 33 0024 60E0 ldi r22,0
  35. 34 0026 70E0 ldi r23,0
  36. 35 0028 0E94 0000 call memset
  37. 36 .L2:
  38. 37 002c CE01 movw r24,r28
  39. 38 /* epilogue start */
  40. 39 002e DF91 pop r29
  41. 40 0030 CF91 pop r28
  42. 41 0032 1F91 pop r17
  43. 42 0034 0F91 pop r16
  44. 43 0036 0895 ret
  45. 44 .size calloc, .-calloc
  46. 45 .ident "GCC: (GNU) 5.3.0"
  47. GAS LISTING /tmp/ccIhQdwj.s page 2
  48. DEFINED SYMBOLS
  49. *ABS*:0000000000000000 calloc.c
  50. /tmp/ccIhQdwj.s:2 *ABS*:000000000000003e __SP_H__
  51. /tmp/ccIhQdwj.s:3 *ABS*:000000000000003d __SP_L__
  52. /tmp/ccIhQdwj.s:4 *ABS*:000000000000003f __SREG__
  53. /tmp/ccIhQdwj.s:5 *ABS*:000000000000003b __RAMPZ__
  54. /tmp/ccIhQdwj.s:6 *ABS*:0000000000000000 __tmp_reg__
  55. /tmp/ccIhQdwj.s:7 *ABS*:0000000000000001 __zero_reg__
  56. /tmp/ccIhQdwj.s:11 .text.calloc:0000000000000000 calloc
  57. UNDEFINED SYMBOLS
  58. malloc
  59. memset