vsscanf.lst 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. GAS LISTING /tmp/ccV8fGSz.s page 1
  2. 1 .file "vsscanf.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._sgetb,"ax",@progbits
  10. 9 .type _sgetb, @function
  11. 10 _sgetb:
  12. 11 0000 CF93 push r28
  13. 12 0002 DF93 push r29
  14. 13 /* prologue: function */
  15. 14 /* frame size = 0 */
  16. 15 /* stack size = 2 */
  17. 16 .L__stack_usage = 2
  18. 17 0004 FB01 movw r30,r22
  19. 18 0006 20E0 ldi r18,0
  20. 19 0008 30E0 ldi r19,0
  21. 20 .L2:
  22. 21 000a 2417 cp r18,r20
  23. 22 000c 3507 cpc r19,r21
  24. 23 000e 01F0 breq .L6
  25. 24 0010 EC01 movw r28,r24
  26. 25 0012 A881 ld r26,Y
  27. 26 0014 B981 ldd r27,Y+1
  28. 27 0016 6C91 ld r22,X
  29. 28 0018 6623 tst r22
  30. 29 001a 01F0 breq .L8
  31. 30 001c BD01 movw r22,r26
  32. 31 001e 6F5F subi r22,-1
  33. 32 0020 7F4F sbci r23,-1
  34. 33 0022 EC01 movw r28,r24
  35. 34 0024 7983 std Y+1,r23
  36. 35 0026 6883 st Y,r22
  37. 36 0028 6C91 ld r22,X
  38. 37 002a 6193 st Z+,r22
  39. 38 002c 2F5F subi r18,-1
  40. 39 002e 3F4F sbci r19,-1
  41. 40 0030 00C0 rjmp .L2
  42. 41 .L8:
  43. 42 0032 A901 movw r20,r18
  44. 43 .L6:
  45. 44 0034 CA01 movw r24,r20
  46. 45 /* epilogue start */
  47. 46 0036 DF91 pop r29
  48. 47 0038 CF91 pop r28
  49. 48 003a 0895 ret
  50. 49 .size _sgetb, .-_sgetb
  51. 50 .section .text.vsscanf,"ax",@progbits
  52. 51 .global vsscanf
  53. 52 .type vsscanf, @function
  54. 53 vsscanf:
  55. 54 0000 CF93 push r28
  56. 55 0002 DF93 push r29
  57. 56 0004 1F92 push __zero_reg__
  58. 57 0006 1F92 push __zero_reg__
  59. GAS LISTING /tmp/ccV8fGSz.s page 2
  60. 58 0008 CDB7 in r28,__SP_L__
  61. 59 000a DEB7 in r29,__SP_H__
  62. 60 /* prologue: function */
  63. 61 /* frame size = 2 */
  64. 62 /* stack size = 4 */
  65. 63 .L__stack_usage = 4
  66. 64 000c 9A01 movw r18,r20
  67. 65 000e 9A83 std Y+2,r25
  68. 66 0010 8983 std Y+1,r24
  69. 67 0012 AB01 movw r20,r22
  70. 68 0014 BE01 movw r22,r28
  71. 69 0016 6F5F subi r22,-1
  72. 70 0018 7F4F sbci r23,-1
  73. 71 001a 80E0 ldi r24,lo8(gs(_sgetb))
  74. 72 001c 90E0 ldi r25,hi8(gs(_sgetb))
  75. 73 001e 0E94 0000 call _getf
  76. 74 /* epilogue start */
  77. 75 0022 0F90 pop __tmp_reg__
  78. 76 0024 0F90 pop __tmp_reg__
  79. 77 0026 DF91 pop r29
  80. 78 0028 CF91 pop r28
  81. 79 002a 0895 ret
  82. 80 .size vsscanf, .-vsscanf
  83. 81 .ident "GCC: (GNU) 5.3.0"
  84. GAS LISTING /tmp/ccV8fGSz.s page 3
  85. DEFINED SYMBOLS
  86. *ABS*:0000000000000000 vsscanf.c
  87. /tmp/ccV8fGSz.s:2 *ABS*:000000000000003e __SP_H__
  88. /tmp/ccV8fGSz.s:3 *ABS*:000000000000003d __SP_L__
  89. /tmp/ccV8fGSz.s:4 *ABS*:000000000000003f __SREG__
  90. /tmp/ccV8fGSz.s:5 *ABS*:000000000000003b __RAMPZ__
  91. /tmp/ccV8fGSz.s:6 *ABS*:0000000000000000 __tmp_reg__
  92. /tmp/ccV8fGSz.s:7 *ABS*:0000000000000001 __zero_reg__
  93. /tmp/ccV8fGSz.s:10 .text._sgetb:0000000000000000 _sgetb
  94. /tmp/ccV8fGSz.s:53 .text.vsscanf:0000000000000000 vsscanf
  95. UNDEFINED SYMBOLS
  96. _getf