📄 ax88796dev.lst
字号:
140 001e BC01 movw r22,r24
141 0020 80E0 ldi r24,lo8(uip_buf)
142 0022 90E0 ldi r25,hi8(uip_buf)
143 0024 13C0 rjmp .L5
144 .L3:
45:ax88796dev.c **** }
46:ax88796dev.c **** else
47:ax88796dev.c **** {
48:ax88796dev.c **** uip_len -= TOTAL_HEADER_LENGTH;
145 .stabn 68,0,48,.LM8-ax88796devSend
146 .LM8:
147 0026 8091 0000 lds r24,uip_len
148 002a 8653 subi r24,lo8(-(-54))
149 002c 8093 0000 sts uip_len,r24
49:ax88796dev.c **** ax88796SendPacketData(uip_buf, TOTAL_HEADER_LENGTH);
150 .stabn 68,0,49,.LM9-ax88796devSend
151 .LM9:
152 0030 66E3 ldi r22,lo8(54)
153 0032 70E0 ldi r23,hi8(54)
154 0034 80E0 ldi r24,lo8(uip_buf)
155 0036 90E0 ldi r25,hi8(uip_buf)
156 0038 0E94 0000 call ax88796SendPacketData
50:ax88796dev.c **** ax88796SendPacketData((unsigned char *)uip_appdata, uip_len);
157 .stabn 68,0,50,.LM10-ax88796devSend
158 .LM10:
159 003c 8091 0000 lds r24,uip_len
160 0040 9927 clr r25
161 0042 BC01 movw r22,r24
162 0044 8091 0000 lds r24,uip_appdata
163 0048 9091 0000 lds r25,(uip_appdata)+1
164 .L5:
165 004c 0E94 0000 call ax88796SendPacketData
51:ax88796dev.c **** }
52:ax88796dev.c ****
53:ax88796dev.c **** ax88796EndPacketSend();
166 .stabn 68,0,53,.LM11-ax88796devSend
167 .LM11:
168 0050 0E94 0000 call ax88796EndPacketSend
54:ax88796dev.c **** }
169 .stabn 68,0,54,.LM12-ax88796devSend
170 .LM12:
171 /* epilogue: frame size=0 */
172 0054 0895 ret
173 /* epilogue end (size=1) */
174 /* function ax88796devSend size 40 (39) */
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 5
175 .size ax88796devSend, .-ax88796devSend
176 .Lscope1:
177 .stabs "",36,0,0,.Lscope1-ax88796devSend
178 .stabs "ax88796devPoll:F(0,11)",36,0,63,ax88796devPoll
179 .global ax88796devPoll
180 .type ax88796devPoll, @function
181 ax88796devPoll:
55:ax88796dev.c ****
56:ax88796dev.c ****
57:ax88796dev.c ****
58:ax88796dev.c **** #if UIP_BUFSIZE > 255
59:ax88796dev.c **** unsigned int ax88796devPoll(void)
60:ax88796dev.c **** #else
61:ax88796dev.c **** unsigned char ax88796devPoll(void)
62:ax88796dev.c **** #endif /* UIP_BUFSIZE > 255 */
63:ax88796dev.c **** {
182 .stabn 68,0,63,.LM13-ax88796devPoll
183 .LM13:
184 /* prologue: frame size=0 */
185 0056 CF93 push r28
186 0058 DF93 push r29
187 /* prologue end (size=2) */
64:ax88796dev.c **** unsigned int packetLength;
65:ax88796dev.c ****
66:ax88796dev.c **** packetLength = ax88796BeginPacketRetreive();
188 .stabn 68,0,66,.LM14-ax88796devPoll
189 .LM14:
190 .LBB2:
191 005a 0E94 0000 call ax88796BeginPacketRetreive
192 005e EC01 movw r28,r24
67:ax88796dev.c ****
68:ax88796dev.c **** // if there's no packet or an error - exit without ending the operation
69:ax88796dev.c **** if( !packetLength )
193 .stabn 68,0,69,.LM15-ax88796devPoll
194 .LM15:
195 0060 0097 sbiw r24,0
196 0062 11F4 brne .L7
70:ax88796dev.c **** {
71:ax88796dev.c **** return 0;
197 .stabn 68,0,71,.LM16-ax88796devPoll
198 .LM16:
199 0064 BC01 movw r22,r24
200 0066 12C0 rjmp .L6
201 .L7:
72:ax88796dev.c **** }
73:ax88796dev.c ****
74:ax88796dev.c **** // drop anything too big for the buffer
75:ax88796dev.c **** if( packetLength > UIP_BUFSIZE )
202 .stabn 68,0,75,.LM17-ax88796devPoll
203 .LM17:
204 0068 8F3F cpi r24,255
205 006a 9105 cpc r25,__zero_reg__
206 006c 31F0 breq .L8
207 006e 28F0 brlo .L8
76:ax88796dev.c **** {
77:ax88796dev.c **** ax88796EndPacketRetreive();
208 .stabn 68,0,77,.LM18-ax88796devPoll
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 6
209 .LM18:
210 0070 0E94 0000 call ax88796EndPacketRetreive
78:ax88796dev.c **** return 0;
211 .stabn 68,0,78,.LM19-ax88796devPoll
212 .LM19:
213 0074 60E0 ldi r22,lo8(0)
214 0076 70E0 ldi r23,hi8(0)
215 0078 09C0 rjmp .L6
216 .L8:
79:ax88796dev.c **** }
80:ax88796dev.c ****
81:ax88796dev.c **** // copy the packet data into the uIP packet buffer
82:ax88796dev.c **** ax88796RetreivePacketData( uip_buf, packetLength );
217 .stabn 68,0,82,.LM20-ax88796devPoll
218 .LM20:
219 007a BC01 movw r22,r24
220 007c 80E0 ldi r24,lo8(uip_buf)
221 007e 90E0 ldi r25,hi8(uip_buf)
222 0080 0E94 0000 call ax88796RetreivePacketData
83:ax88796dev.c **** ax88796EndPacketRetreive();
223 .stabn 68,0,83,.LM21-ax88796devPoll
224 .LM21:
225 0084 0E94 0000 call ax88796EndPacketRetreive
84:ax88796dev.c ****
85:ax88796dev.c **** #if UIP_BUFSIZE > 255
86:ax88796dev.c **** return packetLength;
87:ax88796dev.c **** #else
88:ax88796dev.c **** return (unsigned char)packetLength;
226 .stabn 68,0,88,.LM22-ax88796devPoll
227 .LM22:
228 0088 6C2F mov r22,r28
229 008a 7727 clr r23
89:ax88796dev.c **** #endif /* UIP_BUFSIZE > 255 */
90:ax88796dev.c ****
91:ax88796dev.c **** }
230 .stabn 68,0,91,.LM23-ax88796devPoll
231 .LM23:
232 .L6:
233 .LBE2:
234 008c CB01 movw r24,r22
235 /* epilogue: frame size=0 */
236 008e DF91 pop r29
237 0090 CF91 pop r28
238 0092 0895 ret
239 /* epilogue end (size=3) */
240 /* function ax88796devPoll size 31 (26) */
241 .size ax88796devPoll, .-ax88796devPoll
242 .stabs "packetLength:r(0,4)",64,0,64,28
243 .stabn 192,0,0,.LBB2-ax88796devPoll
244 .stabn 224,0,0,.LBE2-ax88796devPoll
245 .Lscope2:
246 .stabs "",36,0,0,.Lscope2-ax88796devPoll
247 .text
248 .stabs "",100,0,0,Letext
249 Letext:
250 /* File "ax88796dev.c": code 74 = 0x004a ( 67), prologues 2, epilogues 5 */
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 7
DEFINED SYMBOLS
*ABS*:00000000 ax88796dev.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s:101 .text:00000000 ax88796devInit
C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s:121 .text:00000006 ax88796devSend
C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s:181 .text:00000056 ax88796devPoll
C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s:249 .text:00000094 Letext
*ABS*:00000000 *ABS*
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
ax88796Init
uip_len
ax88796BeginPacketSend
uip_buf
ax88796SendPacketData
uip_appdata
ax88796EndPacketSend
ax88796BeginPacketRetreive
ax88796EndPacketRetreive
ax88796RetreivePacketData
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -