📄 uip_arch.lst
字号:
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 1
1 .file "uip_arch.c"
2 .arch atmega323
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
10 .stabs "C:\\Code\\AVR\\uip-avr/",100,0,0,.Ltext0
11 .stabs "uip_arch.c",100,0,0,.Ltext0
12 .text
13 .Ltext0:
14 .stabs "gcc2_compiled.",60,0,0,0
15 .stabs "int:t(0,1)=r(0,1);-32768;32767;",128,0,0,0
16 .stabs "char:t(0,2)=r(0,2);0;127;",128,0,0,0
17 .stabs "long int:t(0,3)=@s32;r(0,3);0020000000000;0017777777777;",128,0,0,0
18 .stabs "unsigned int:t(0,4)=r(0,4);0000000000000;0000000177777;",128,0,0,0
19 .stabs "long unsigned int:t(0,5)=@s32;r(0,5);0000000000000;0037777777777;",128,0,0,0
20 .stabs "long long int:t(0,6)=@s64;r(0,6);01000000000000000000000;0777777777777777777777;",128,0,0,
21 .stabs "long long unsigned int:t(0,7)=@s64;r(0,7);0000000000000;01777777777777777777777;",128,0,0,
22 .stabs "short int:t(0,8)=r(0,8);-32768;32767;",128,0,0,0
23 .stabs "short unsigned int:t(0,9)=r(0,9);0000000000000;0000000177777;",128,0,0,0
24 .stabs "signed char:t(0,10)=@s8;r(0,10);-128;127;",128,0,0,0
25 .stabs "unsigned char:t(0,11)=@s8;r(0,11);0;255;",128,0,0,0
26 .stabs "float:t(0,12)=r(0,1);4;0;",128,0,0,0
27 .stabs "double:t(0,13)=r(0,1);4;0;",128,0,0,0
28 .stabs "long double:t(0,14)=r(0,1);4;0;",128,0,0,0
29 .stabs "complex int:t(0,15)=s4real:(0,1),0,16;imag:(0,1),16,16;;",128,0,0,0
30 .stabs "complex float:t(0,16)=R3;8;0;",128,0,0,0
31 .stabs "complex double:t(0,17)=R3;8;0;",128,0,0,0
32 .stabs "complex long double:t(0,18)=R3;8;0;",128,0,0,0
33 .stabs "__builtin_va_list:t(0,19)=*(0,20)=(0,20)",128,0,0,0
34 .stabs "_Bool:t(0,21)=@s8;-16;",128,0,0,0
35 .stabs "uip_arch.c",130,0,0,0
36 .stabs "uip.h",130,0,0,0
37 .stabs "uipopt.h",130,0,0,0
38 .stabs "u8_t:t(3,1)=(0,11)",128,0,52,0
39 .stabs "u16_t:t(3,2)=(0,9)",128,0,53,0
40 .stabs "app.h",130,0,0,0
41 .stabs "uip.h",130,0,0,0
42 .stabn 162,0,0,0
43 .stabn 162,0,0,0
44 .stabn 162,0,0,0
45 .stabs "uip_conn:T(2,1)=s25tcpstateflags:(3,1),0,8;lport:(3,2),8,16;rport:(3,2),24,16;ripaddr:(2,2
46 .stabs "uip_stats:T(2,6)=s44ip:(2,7)=s18drop:(3,2),0,16;recv:(3,2),16,16;sent:(3,2),32,16;vhlerr:(
47 .stabs "uip_tcpip_hdr:t(2,10)=(2,11)=s44vhl:(3,1),0,8;tos:(3,1),8,8;len:(2,12)=ar(2,3);0;1;(3,1),1
48 .stabn 162,0,0,0
49 .stabs "uip_arch.h",130,0,0,0
50 .stabn 162,0,0,0
51 .stabs "uip_add_rcv_nxt:F(0,20)",36,0,102,uip_add_rcv_nxt
52 .stabs "n:P(3,1)",64,0,101,25
53 .global uip_add_rcv_nxt
54 .type uip_add_rcv_nxt, @function
55 uip_add_rcv_nxt:
1:uip_arch.c **** /*
2:uip_arch.c **** * Copyright (c) 2001, Adam Dunkels.
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 2
3:uip_arch.c **** * All rights reserved.
4:uip_arch.c **** *
5:uip_arch.c **** * Redistribution and use in source and binary forms, with or without
6:uip_arch.c **** * modification, are permitted provided that the following conditions
7:uip_arch.c **** * are met:
8:uip_arch.c **** * 1. Redistributions of source code must retain the above copyright
9:uip_arch.c **** * notice, this list of conditions and the following disclaimer.
10:uip_arch.c **** * 2. Redistributions in binary form must reproduce the above copyright
11:uip_arch.c **** * notice, this list of conditions and the following disclaimer in the
12:uip_arch.c **** * documentation and/or other materials provided with the distribution.
13:uip_arch.c **** * 3. All advertising materials mentioning features or use of this software
14:uip_arch.c **** * must display the following acknowledgement:
15:uip_arch.c **** * This product includes software developed by Adam Dunkels.
16:uip_arch.c **** * 4. The name of the author may not be used to endorse or promote
17:uip_arch.c **** * products derived from this software without specific prior
18:uip_arch.c **** * written permission.
19:uip_arch.c **** *
20:uip_arch.c **** * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
21:uip_arch.c **** * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
22:uip_arch.c **** * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23:uip_arch.c **** * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
24:uip_arch.c **** * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25:uip_arch.c **** * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
26:uip_arch.c **** * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
27:uip_arch.c **** * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28:uip_arch.c **** * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29:uip_arch.c **** * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30:uip_arch.c **** * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31:uip_arch.c **** *
32:uip_arch.c **** * This file is part of the uIP TCP/IP stack.
33:uip_arch.c **** *
34:uip_arch.c **** * $Id: uip_arch.c,v 1.2 2002/09/22 06:34:36 User Exp $
35:uip_arch.c **** *
36:uip_arch.c **** */
37:uip_arch.c ****
38:uip_arch.c ****
39:uip_arch.c **** #include "uip.h"
40:uip_arch.c **** #include "uip_arch.h"
41:uip_arch.c ****
42:uip_arch.c **** #define BUF ((uip_tcpip_hdr *)&uip_buf[UIP_LLH_LEN])
43:uip_arch.c **** #define IP_PROTO_TCP 6
44:uip_arch.c ****
45:uip_arch.c **** /*-----------------------------------------------------------------------------------*/
46:uip_arch.c **** #if UIP_BUFSIZE > 255
47:uip_arch.c **** /*-----------------------------------------------------------------------------------*/
48:uip_arch.c **** void
49:uip_arch.c **** uip_add_rcv_nxt(u16_t n)
50:uip_arch.c **** {
51:uip_arch.c **** uip_conn->rcv_nxt[3] += (n & 0xff);
52:uip_arch.c **** uip_conn->rcv_nxt[2] += (n >> 8);
53:uip_arch.c ****
54:uip_arch.c **** if(uip_conn->rcv_nxt[2] < (n >> 8)) {
55:uip_arch.c **** ++uip_conn->rcv_nxt[1];
56:uip_arch.c **** if(uip_conn->rcv_nxt[1] == 0) {
57:uip_arch.c **** ++uip_conn->rcv_nxt[0];
58:uip_arch.c **** }
59:uip_arch.c **** }
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 3
60:uip_arch.c ****
61:uip_arch.c ****
62:uip_arch.c **** if(uip_conn->rcv_nxt[3] < (n & 0xff)) {
63:uip_arch.c **** ++uip_conn->rcv_nxt[2];
64:uip_arch.c **** if(uip_conn->rcv_nxt[2] == 0) {
65:uip_arch.c **** ++uip_conn->rcv_nxt[1];
66:uip_arch.c **** if(uip_conn->rcv_nxt[1] == 0) {
67:uip_arch.c **** ++uip_conn->rcv_nxt[0];
68:uip_arch.c **** }
69:uip_arch.c **** }
70:uip_arch.c **** }
71:uip_arch.c **** }
72:uip_arch.c **** /*-----------------------------------------------------------------------------------*/
73:uip_arch.c **** void
74:uip_arch.c **** uip_add_ack_nxt(u16_t n)
75:uip_arch.c **** {
76:uip_arch.c **** uip_conn->ack_nxt[3] += (n & 0xff);
77:uip_arch.c **** uip_conn->ack_nxt[2] += (n >> 8);
78:uip_arch.c ****
79:uip_arch.c **** if(uip_conn->ack_nxt[2] < (n >> 8)) {
80:uip_arch.c **** ++uip_conn->ack_nxt[1];
81:uip_arch.c **** if(uip_conn->ack_nxt[1] == 0) {
82:uip_arch.c **** ++uip_conn->ack_nxt[0];
83:uip_arch.c **** }
84:uip_arch.c **** }
85:uip_arch.c ****
86:uip_arch.c ****
87:uip_arch.c **** if(uip_conn->ack_nxt[3] < (n & 0xff)) {
88:uip_arch.c **** ++uip_conn->ack_nxt[2];
89:uip_arch.c **** if(uip_conn->ack_nxt[2] == 0) {
90:uip_arch.c **** ++uip_conn->ack_nxt[1];
91:uip_arch.c **** if(uip_conn->ack_nxt[1] == 0) {
92:uip_arch.c **** ++uip_conn->ack_nxt[0];
93:uip_arch.c **** }
94:uip_arch.c **** }
95:uip_arch.c **** }
96:uip_arch.c **** }
97:uip_arch.c **** /*-----------------------------------------------------------------------------------*/
98:uip_arch.c **** #else /* UIP_BUFSIZE > 255 */
99:uip_arch.c **** /*-----------------------------------------------------------------------------------*/
100:uip_arch.c **** void
101:uip_arch.c **** uip_add_rcv_nxt(u8_t n)
102:uip_arch.c **** {
56 .stabn 68,0,102,.LM1-uip_add_rcv_nxt
57 .LM1:
58 /* prologue: frame size=0 */
59 /* prologue end (size=0) */
60 0000 982F mov r25,r24
103:uip_arch.c **** uip_conn->rcv_nxt[3] += n;
61 .stabn 68,0,103,.LM2-uip_add_rcv_nxt
62 .LM2:
63 0002 E091 0000 lds r30,uip_conn
64 0006 F091 0000 lds r31,(uip_conn)+1
65 000a 8485 ldd r24,Z+12
66 000c 890F add r24,r25
67 000e 8487 std Z+12,r24
104:uip_arch.c **** if(uip_conn->rcv_nxt[3] < n) {
GAS LISTING C:\DOCUME~1\pstang\LOCALS~1\Temp/ccSyaaaa.s page 4
68 .stabn 68,0,104,.LM3-uip_add_rcv_nxt
69 .LM3:
70 0010 E091 0000 lds r30,uip_conn
71 0014 F091 0000 lds r31,(uip_conn)+1
72 0018 8485 ldd r24,Z+12
73 001a 8917 cp r24,r25
74 001c B8F4 brsh .L1
105:uip_arch.c **** ++uip_conn->rcv_nxt[2];
75 .stabn 68,0,105,.LM4-uip_add_rcv_nxt
76 .LM4:
77 001e 8385 ldd r24,Z+11
78 0020 8F5F subi r24,lo8(-(1))
79 0022 8387 std Z+11,r24
106:uip_arch.c **** if(uip_conn->rcv_nxt[2] == 0) {
80 .stabn 68,0,106,.LM5-uip_add_rcv_nxt
81 .LM5:
82 0024 E091 0000 lds r30,uip_conn
83 0028 F091 0000 lds r31,(uip_conn)+1
84 002c 8385 ldd r24,Z+11
85 002e 8823 tst r24
86 0030 69F4 brne .L1
107:uip_arch.c **** ++uip_conn->rcv_nxt[1];
87 .stabn 68,0,107,.LM6-uip_add_rcv_nxt
88 .LM6:
89 0032 8285 ldd r24,Z+10
90 0034 8F5F subi r24,lo8(-(1))
91 0036 8287 std Z+10,r24
108:uip_arch.c **** if(uip_conn->rcv_nxt[1] == 0) {
92 .stabn 68,0,108,.LM7-uip_add_rcv_nxt
93 .LM7:
94 0038 E091 0000 lds r30,uip_conn
95 003c F091 0000 lds r31,(uip_conn)+1
96 0040 8285 ldd r24,Z+10
97 0042 8823 tst r24
98 0044 19F4 brne .L1
109:uip_arch.c **** ++uip_conn->rcv_nxt[0];
99 .stabn 68,0,109,.LM8-uip_add_rcv_nxt
100 .LM8:
101 0046 8185 ldd r24,Z+9
102 0048 8F5F subi r24,lo8(-(1))
103 004a 8187 std Z+9,r24
110:uip_arch.c **** }
111:uip_arch.c **** }
112:uip_arch.c **** }
113:uip_arch.c **** }
104 .stabn 68,0,113,.LM9-uip_add_rcv_nxt
105 .LM9:
106 .L1:
107 004c 0895 ret
108 /* epilogue: frame size=0 */
109 004e 0895 ret
110 /* epilogue end (size=1) */
111 /* function uip_add_rcv_nxt size 40 (39) */
112 .size uip_add_rcv_nxt, .-uip_add_rcv_nxt
113 .Lscope0:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -