ih_spi_stc.lst 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. GAS LISTING /tmp/ccFb9aAP.s page 1
  2. 1 .file "ih_spi_stc.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.AvrSpiIrqCtl,"ax",@progbits
  10. 9 .type AvrSpiIrqCtl, @function
  11. 10 AvrSpiIrqCtl:
  12. 11 /* prologue: function */
  13. 12 /* frame size = 0 */
  14. 13 /* stack size = 0 */
  15. 14 .L__stack_usage = 0
  16. 15 0000 FB01 movw r30,r22
  17. 16 0002 2CB5 in r18,0x2c
  18. 17 0004 2078 andi r18,lo8(-128)
  19. 18 0006 3CB5 in r19,0x2c
  20. 19 0008 3F77 andi r19,lo8(127)
  21. 20 000a 3CBD out 0x2c,r19
  22. 21 000c 8031 cpi r24,16
  23. 22 000e 9105 cpc r25,__zero_reg__
  24. 23 0010 01F0 breq .L3
  25. 24 0012 04F4 brge .L4
  26. 25 0014 0097 sbiw r24,0
  27. 26 0016 01F0 breq .L5
  28. 27 0018 0197 sbiw r24,1
  29. 28 001a 01F0 breq .L6
  30. 29 001c 00C0 rjmp .L14
  31. 30 .L4:
  32. 31 001e 8231 cpi r24,18
  33. 32 0020 9105 cpc r25,__zero_reg__
  34. 33 0022 01F0 breq .L7
  35. 34 0024 04F0 brlt .L8
  36. 35 0026 8097 sbiw r24,32
  37. 36 0028 01F4 brne .L14
  38. 37 002a 80E1 ldi r24,lo8(16)
  39. 38 002c 90E0 ldi r25,0
  40. 39 002e 9183 std Z+1,r25
  41. 40 0030 8083 st Z,r24
  42. 41 0032 00C0 rjmp .L15
  43. 42 .L5:
  44. 43 0034 20E0 ldi r18,0
  45. 44 .L6:
  46. 45 0036 0DB4 in __tmp_reg__,0x2d
  47. 46 0038 07FE sbrs __tmp_reg__,7
  48. 47 003a 00C0 rjmp .L15
  49. 48 003c 8EB5 in r24,0x2e
  50. 49 003e 00C0 rjmp .L15
  51. 50 .L3:
  52. 51 0040 0DB4 in __tmp_reg__,0x2d
  53. 52 0042 07FE sbrs __tmp_reg__,7
  54. 53 0044 00C0 rjmp .L10
  55. 54 0046 81E0 ldi r24,lo8(1)
  56. 55 0048 90E0 ldi r25,0
  57. 56 004a 9183 std Z+1,r25
  58. 57 004c 8083 st Z,r24
  59. GAS LISTING /tmp/ccFb9aAP.s page 2
  60. 58 004e 00C0 rjmp .L11
  61. 59 .L10:
  62. 60 0050 1182 std Z+1,__zero_reg__
  63. 61 0052 1082 st Z,__zero_reg__
  64. 62 .L11:
  65. 63 0054 2223 tst r18
  66. 64 0056 01F0 breq .L7
  67. 65 0058 8081 ld r24,Z
  68. 66 005a 9181 ldd r25,Z+1
  69. 67 005c 8068 ori r24,128
  70. 68 005e 9183 std Z+1,r25
  71. 69 0060 8083 st Z,r24
  72. 70 0062 00C0 rjmp .L8
  73. 71 .L14:
  74. 72 0064 8FEF ldi r24,lo8(-1)
  75. 73 0066 9FEF ldi r25,lo8(-1)
  76. 74 0068 00C0 rjmp .L2
  77. 75 .L15:
  78. 76 006a 80E0 ldi r24,0
  79. 77 006c 90E0 ldi r25,0
  80. 78 .L2:
  81. 79 006e 2223 tst r18
  82. 80 0070 01F0 breq .L20
  83. 81 .L13:
  84. 82 0072 2CB5 in r18,0x2c
  85. 83 0074 2068 ori r18,lo8(-128)
  86. 84 0076 2CBD out 0x2c,r18
  87. 85 0078 0895 ret
  88. 86 .L8:
  89. 87 007a 80E0 ldi r24,0
  90. 88 007c 90E0 ldi r25,0
  91. 89 007e 00C0 rjmp .L13
  92. 90 .L7:
  93. 91 0080 80E0 ldi r24,0
  94. 92 0082 90E0 ldi r25,0
  95. 93 .L20:
  96. 94 0084 0895 ret
  97. 95 .size AvrSpiIrqCtl, .-AvrSpiIrqCtl
  98. 96 .section .text.__vector_24,"ax",@progbits
  99. 97 .global __vector_24
  100. 98 .type __vector_24, @function
  101. 99 __vector_24:
  102. 100 0000 1F92 push r1
  103. 101 0002 0F92 push r0
  104. 102 0004 0FB6 in r0,__SREG__
  105. 103 0006 0F92 push r0
  106. 104 0008 1124 clr __zero_reg__
  107. 105 000a 0BB6 in r0,__RAMPZ__
  108. 106 000c 0F92 push r0
  109. 107 000e 2F93 push r18
  110. 108 0010 3F93 push r19
  111. 109 0012 4F93 push r20
  112. 110 0014 5F93 push r21
  113. 111 0016 6F93 push r22
  114. 112 0018 7F93 push r23
  115. 113 001a 8F93 push r24
  116. 114 001c 9F93 push r25
  117. GAS LISTING /tmp/ccFb9aAP.s page 3
  118. 115 001e AF93 push r26
  119. 116 0020 BF93 push r27
  120. 117 0022 EF93 push r30
  121. 118 0024 FF93 push r31
  122. 119 /* prologue: Signal */
  123. 120 /* frame size = 0 */
  124. 121 /* stack size = 16 */
  125. 122 .L__stack_usage = 16
  126. 123 0026 80E0 ldi r24,lo8(sig_SPI)
  127. 124 0028 90E0 ldi r25,hi8(sig_SPI)
  128. 125 002a 0E94 0000 call CallHandler
  129. 126 /* epilogue start */
  130. 127 002e FF91 pop r31
  131. 128 0030 EF91 pop r30
  132. 129 0032 BF91 pop r27
  133. 130 0034 AF91 pop r26
  134. 131 0036 9F91 pop r25
  135. 132 0038 8F91 pop r24
  136. 133 003a 7F91 pop r23
  137. 134 003c 6F91 pop r22
  138. 135 003e 5F91 pop r21
  139. 136 0040 4F91 pop r20
  140. 137 0042 3F91 pop r19
  141. 138 0044 2F91 pop r18
  142. 139 0046 0F90 pop r0
  143. 140 0048 0BBE out __RAMPZ__,r0
  144. 141 004a 0F90 pop r0
  145. 142 004c 0FBE out __SREG__,r0
  146. 143 004e 0F90 pop r0
  147. 144 0050 1F90 pop r1
  148. 145 0052 1895 reti
  149. 146 .size __vector_24, .-__vector_24
  150. 147 .global sig_SPI
  151. 148 .data
  152. 149 .type sig_SPI, @object
  153. 150 .size sig_SPI, 6
  154. 151 sig_SPI:
  155. 152 0000 0000 .word 0
  156. 153 0002 0000 .word 0
  157. 154 0004 0000 .word gs(AvrSpiIrqCtl)
  158. 155 .ident "GCC: (GNU) 5.3.0"
  159. 156 .global __do_copy_data
  160. GAS LISTING /tmp/ccFb9aAP.s page 4
  161. DEFINED SYMBOLS
  162. *ABS*:0000000000000000 ih_spi_stc.c
  163. /tmp/ccFb9aAP.s:2 *ABS*:000000000000003e __SP_H__
  164. /tmp/ccFb9aAP.s:3 *ABS*:000000000000003d __SP_L__
  165. /tmp/ccFb9aAP.s:4 *ABS*:000000000000003f __SREG__
  166. /tmp/ccFb9aAP.s:5 *ABS*:000000000000003b __RAMPZ__
  167. /tmp/ccFb9aAP.s:6 *ABS*:0000000000000000 __tmp_reg__
  168. /tmp/ccFb9aAP.s:7 *ABS*:0000000000000001 __zero_reg__
  169. /tmp/ccFb9aAP.s:10 .text.AvrSpiIrqCtl:0000000000000000 AvrSpiIrqCtl
  170. /tmp/ccFb9aAP.s:99 .text.__vector_24:0000000000000000 __vector_24
  171. /tmp/ccFb9aAP.s:151 .data:0000000000000000 sig_SPI
  172. UNDEFINED SYMBOLS
  173. CallHandler
  174. __do_copy_data