⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uip_arch.lst

📁 一个AVR 上的UIP移植程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
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 + -