igmpout.lst 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. GAS LISTING /tmp/ccv7Wljt.s page 1
  2. 1 .file "igmpout.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.NutIgmpOutput,"ax",@progbits
  10. 9 .global NutIgmpOutput
  11. 10 .type NutIgmpOutput, @function
  12. 11 NutIgmpOutput:
  13. 12 0000 BF92 push r11
  14. 13 0002 CF92 push r12
  15. 14 0004 DF92 push r13
  16. 15 0006 EF92 push r14
  17. 16 0008 FF92 push r15
  18. 17 000a 0F93 push r16
  19. 18 000c 1F93 push r17
  20. 19 000e CF93 push r28
  21. 20 0010 DF93 push r29
  22. 21 /* prologue: function */
  23. 22 /* frame size = 0 */
  24. 23 /* stack size = 9 */
  25. 24 .L__stack_usage = 9
  26. 25 0012 B82E mov r11,r24
  27. 26 0014 6A01 movw r12,r20
  28. 27 0016 7B01 movw r14,r22
  29. 28 0018 C901 movw r24,r18
  30. 29 001a 48E0 ldi r20,lo8(8)
  31. 30 001c 50E0 ldi r21,0
  32. 31 001e 60E4 ldi r22,lo8(64)
  33. 32 0020 0E94 0000 call NutNetBufAlloc
  34. 33 0024 EC01 movw r28,r24
  35. 34 0026 892B or r24,r25
  36. 35 0028 01F0 breq .L2
  37. 36 002a 0B85 ldd r16,Y+11
  38. 37 002c 1C85 ldd r17,Y+12
  39. 38 002e 88E0 ldi r24,lo8(8)
  40. 39 0030 90E0 ldi r25,0
  41. 40 0032 9E87 std Y+14,r25
  42. 41 0034 8D87 std Y+13,r24
  43. 42 0036 F801 movw r30,r16
  44. 43 0038 B082 st Z,r11
  45. 44 003a 1182 std Z+1,__zero_reg__
  46. 45 003c C482 std Z+4,r12
  47. 46 003e D582 std Z+5,r13
  48. 47 0040 E682 std Z+6,r14
  49. 48 0042 F782 std Z+7,r15
  50. 49 0044 1382 std Z+3,__zero_reg__
  51. 50 0046 1282 std Z+2,__zero_reg__
  52. 51 0048 4D85 ldd r20,Y+13
  53. 52 004a 5E85 ldd r21,Y+14
  54. 53 004c 6B85 ldd r22,Y+11
  55. 54 004e 7C85 ldd r23,Y+12
  56. 55 0050 80E0 ldi r24,0
  57. 56 0052 90E0 ldi r25,0
  58. 57 0054 0E94 0000 call NutIpChkSum
  59. GAS LISTING /tmp/ccv7Wljt.s page 2
  60. 58 0058 F801 movw r30,r16
  61. 59 005a 9383 std Z+3,r25
  62. 60 005c 8283 std Z+2,r24
  63. 61 005e 9E01 movw r18,r28
  64. 62 0060 B701 movw r22,r14
  65. 63 0062 A601 movw r20,r12
  66. 64 0064 82E0 ldi r24,lo8(2)
  67. 65 /* epilogue start */
  68. 66 0066 DF91 pop r29
  69. 67 0068 CF91 pop r28
  70. 68 006a 1F91 pop r17
  71. 69 006c 0F91 pop r16
  72. 70 006e FF90 pop r15
  73. 71 0070 EF90 pop r14
  74. 72 0072 DF90 pop r13
  75. 73 0074 CF90 pop r12
  76. 74 0076 BF90 pop r11
  77. 75 0078 0C94 0000 jmp NutIpOutput
  78. 76 .L2:
  79. 77 007c 8FEF ldi r24,lo8(-1)
  80. 78 007e 9FEF ldi r25,lo8(-1)
  81. 79 /* epilogue start */
  82. 80 0080 DF91 pop r29
  83. 81 0082 CF91 pop r28
  84. 82 0084 1F91 pop r17
  85. 83 0086 0F91 pop r16
  86. 84 0088 FF90 pop r15
  87. 85 008a EF90 pop r14
  88. 86 008c DF90 pop r13
  89. 87 008e CF90 pop r12
  90. 88 0090 BF90 pop r11
  91. 89 0092 0895 ret
  92. 90 .size NutIgmpOutput, .-NutIgmpOutput
  93. 91 .ident "GCC: (GNU) 5.3.0"
  94. GAS LISTING /tmp/ccv7Wljt.s page 3
  95. DEFINED SYMBOLS
  96. *ABS*:0000000000000000 igmpout.c
  97. /tmp/ccv7Wljt.s:2 *ABS*:000000000000003e __SP_H__
  98. /tmp/ccv7Wljt.s:3 *ABS*:000000000000003d __SP_L__
  99. /tmp/ccv7Wljt.s:4 *ABS*:000000000000003f __SREG__
  100. /tmp/ccv7Wljt.s:5 *ABS*:000000000000003b __RAMPZ__
  101. /tmp/ccv7Wljt.s:6 *ABS*:0000000000000000 __tmp_reg__
  102. /tmp/ccv7Wljt.s:7 *ABS*:0000000000000001 __zero_reg__
  103. /tmp/ccv7Wljt.s:11 .text.NutIgmpOutput:0000000000000000 NutIgmpOutput
  104. UNDEFINED SYMBOLS
  105. NutNetBufAlloc
  106. NutIpChkSum
  107. NutIpOutput