cgi.lst

来自「针对AVR单片机开发的嵌入式操作系统」· LST 代码 · 共 1,876 行 · 第 1/5 页

LST
1,876
字号
GAS LISTING c:\Temp/ccEvaaaa.s 			page 1


   1               		.file	"cgi.c"
   2               		.arch atmega128
   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               		.data
  11               		.type	spi_no, @object
  12               		.size	spi_no, 1
  13               	spi_no:
  14 0000 FF        		.byte	-1
  15               		.type	spi_ni, @object
  16               		.size	spi_ni, 1
  17               	spi_ni:
  18 0001 FF        		.byte	-1
  19               	.LC0:
  20 0002 3C74 643E 		.string	"<td><img src=\"/"
  20      3C69 6D67 
  20      2073 7263 
  20      3D22 2F00 
  21               	.LC1:
  22 0012 7231 00   		.string	"r1"
  23               	.LC2:
  24 0015 7930 00   		.string	"y0"
  25               	.LC3:
  26 0018 7931 00   		.string	"y1"
  27               	.LC4:
  28 001b 7230 00   		.string	"r0"
  29               	.LC5:
  30 001e 6731 00   		.string	"g1"
  31               	.LC6:
  32 0021 6730 00   		.string	"g0"
  33               	.LC7:
  34 0024 2E67 6966 		.string	".gif\" width=\"28\" heigth=\"28\"></td>\r\n"
  34      2220 7769 
  34      6474 683D 
  34      2232 3822 
  34      2068 6569 
  35               		.text
  36               		.type	HtmlLedRow, @function
  37               	HtmlLedRow:
  38               	/* prologue: frame size=10 */
  39 0000 2F92      		push r2
  40 0002 3F92      		push r3
  41 0004 4F92      		push r4
  42 0006 5F92      		push r5
  43 0008 6F92      		push r6
  44 000a 7F92      		push r7
  45 000c 8F92      		push r8
  46 000e 9F92      		push r9
  47 0010 AF92      		push r10
  48 0012 BF92      		push r11
  49 0014 CF92      		push r12
  50 0016 DF92      		push r13
GAS LISTING c:\Temp/ccEvaaaa.s 			page 2


  51 0018 EF92      		push r14
  52 001a FF92      		push r15
  53 001c 0F93      		push r16
  54 001e 1F93      		push r17
  55 0020 CF93      		push r28
  56 0022 DF93      		push r29
  57 0024 CDB7      		in r28,__SP_L__
  58 0026 DEB7      		in r29,__SP_H__
  59 0028 2A97      		sbiw r28,10
  60 002a 0FB6      		in __tmp_reg__,__SREG__
  61 002c F894      		cli
  62 002e DEBF      		out __SP_H__,r29
  63 0030 0FBE      		out __SREG__,__tmp_reg__
  64 0032 CDBF      		out __SP_L__,r28
  65               	/* prologue end (size=26) */
  66 0034 3C01      		movw r6,r24
  67 0036 6983      		std Y+1,r22
  68 0038 4A83      		std Y+2,r20
  69 003a 1801      		movw r2,r16
  70 003c 2901      		movw r4,r18
  71 003e CB82      		std Y+3,r12
  72 0040 DC82      		std Y+4,r13
  73 0042 ED82      		std Y+5,r14
  74 0044 FE82      		std Y+6,r15
  75 0046 8F82      		std Y+7,r8
  76 0048 9886      		std Y+8,r9
  77 004a A986      		std Y+9,r10
  78 004c BA86      		std Y+10,r11
  79 004e 6623      		tst r22
  80 0050 09F4      		brne .+2
  81 0052 81C0      		rjmp .L19
  82 0054 CC24      		clr r12
  83 0056 DD24      		clr r13
  84 0058 B62E      		mov r11,r22
  85               	.L17:
  86 005a 2A81      		ldd r18,Y+2
  87 005c 2223      		tst r18
  88 005e 99F0      		breq .L5
  89 0060 2981      		ldd r18,Y+1
  90 0062 822F      		mov r24,r18
  91 0064 9927      		clr r25
  92 0066 8C19      		sub r24,r12
  93 0068 9D09      		sbc r25,r13
  94 006a 0197      		sbiw r24,1
  95 006c 91E0      		ldi r25,lo8(1)
  96 006e E92E      		mov r14,r25
  97 0070 F12C      		mov r15,__zero_reg__
  98 0072 012D      		mov r16,__zero_reg__
  99 0074 112D      		mov r17,__zero_reg__
 100 0076 04C0      		rjmp 2f
 101 0078 EE0C      	1:	lsl r14
 102 007a FF1C      		rol r15
 103 007c 001F      		rol r16
 104 007e 111F      		rol r17
 105 0080 8A95      	2:	dec r24
 106 0082 D2F7      		brpl 1b
 107 0084 0DC0      		rjmp .L6
GAS LISTING c:\Temp/ccEvaaaa.s 			page 3


 108               	.L5:
 109 0086 81E0      		ldi r24,lo8(1)
 110 0088 E82E      		mov r14,r24
 111 008a F12C      		mov r15,__zero_reg__
 112 008c 012D      		mov r16,__zero_reg__
 113 008e 112D      		mov r17,__zero_reg__
 114 0090 0C2C      		mov r0,r12
 115 0092 04C0      		rjmp 2f
 116 0094 EE0C      	1:	lsl r14
 117 0096 FF1C      		rol r15
 118 0098 001F      		rol r16
 119 009a 111F      		rol r17
 120 009c 0A94      	2:	dec r0
 121 009e D2F7      		brpl 1b
 122               	.L6:
 123 00a0 B301      		movw r22,r6
 124 00a2 80E0      		ldi r24,lo8(.LC0)
 125 00a4 90E0      		ldi r25,hi8(.LC0)
 126 00a6 0E94 0000 		call fputs
 127 00aa 8F81      		ldd r24,Y+7
 128 00ac 9885      		ldd r25,Y+8
 129 00ae A985      		ldd r26,Y+9
 130 00b0 BA85      		ldd r27,Y+10
 131 00b2 8E21      		and r24,r14
 132 00b4 9F21      		and r25,r15
 133 00b6 A023      		and r26,r16
 134 00b8 B123      		and r27,r17
 135 00ba 0097      		sbiw r24,0
 136 00bc A105      		cpc r26,__zero_reg__
 137 00be B105      		cpc r27,__zero_reg__
 138 00c0 61F1      		breq .L7
 139 00c2 8B81      		ldd r24,Y+3
 140 00c4 9C81      		ldd r25,Y+4
 141 00c6 AD81      		ldd r26,Y+5
 142 00c8 BE81      		ldd r27,Y+6
 143 00ca 8E21      		and r24,r14
 144 00cc 9F21      		and r25,r15
 145 00ce A023      		and r26,r16
 146 00d0 B123      		and r27,r17
 147 00d2 A201      		movw r20,r4
 148 00d4 9101      		movw r18,r2
 149 00d6 2E21      		and r18,r14
 150 00d8 3F21      		and r19,r15
 151 00da 4023      		and r20,r16
 152 00dc 5123      		and r21,r17
 153 00de 0097      		sbiw r24,0
 154 00e0 A105      		cpc r26,__zero_reg__
 155 00e2 B105      		cpc r27,__zero_reg__
 156 00e4 69F0      		breq .L8
 157 00e6 2115      		cp r18,__zero_reg__
 158 00e8 3105      		cpc r19,__zero_reg__
 159 00ea 4105      		cpc r20,__zero_reg__
 160 00ec 5105      		cpc r21,__zero_reg__
 161 00ee 21F0      		breq .L9
 162 00f0 B301      		movw r22,r6
 163 00f2 80E0      		ldi r24,lo8(.LC1)
 164 00f4 90E0      		ldi r25,hi8(.LC1)
GAS LISTING c:\Temp/ccEvaaaa.s 			page 4


 165 00f6 21C0      		rjmp .L20
 166               	.L9:
 167 00f8 B301      		movw r22,r6
 168 00fa 80E0      		ldi r24,lo8(.LC2)
 169 00fc 90E0      		ldi r25,hi8(.LC2)
 170 00fe 1DC0      		rjmp .L20
 171               	.L8:
 172 0100 2115      		cp r18,__zero_reg__
 173 0102 3105      		cpc r19,__zero_reg__
 174 0104 4105      		cpc r20,__zero_reg__
 175 0106 5105      		cpc r21,__zero_reg__
 176 0108 21F0      		breq .L12
 177 010a B301      		movw r22,r6
 178 010c 80E0      		ldi r24,lo8(.LC3)
 179 010e 90E0      		ldi r25,hi8(.LC3)
 180 0110 14C0      		rjmp .L20
 181               	.L12:
 182 0112 B301      		movw r22,r6
 183 0114 80E0      		ldi r24,lo8(.LC4)
 184 0116 90E0      		ldi r25,hi8(.LC4)
 185 0118 10C0      		rjmp .L20
 186               	.L7:
 187 011a E220      		and r14,r2
 188 011c F320      		and r15,r3
 189 011e 0421      		and r16,r4
 190 0120 1521      		and r17,r5
 191 0122 E114      		cp r14,__zero_reg__
 192 0124 F104      		cpc r15,__zero_reg__
 193 0126 0105      		cpc r16,__zero_reg__
 194 0128 1105      		cpc r17,__zero_reg__
 195 012a 21F0      		breq .L15
 196 012c B301      		movw r22,r6
 197 012e 80E0      		ldi r24,lo8(.LC5)
 198 0130 90E0      		ldi r25,hi8(.LC5)
 199 0132 03C0      		rjmp .L20
 200               	.L15:
 201 0134 B301      		movw r22,r6
 202 0136 80E0      		ldi r24,lo8(.LC6)
 203 0138 90E0      		ldi r25,hi8(.LC6)
 204               	.L20:
 205 013a 0E94 0000 		call fputs
 206 013e B301      		movw r22,r6
 207 0140 80E0      		ldi r24,lo8(.LC7)
 208 0142 90E0      		ldi r25,hi8(.LC7)
 209 0144 0E94 0000 		call fputs
 210 0148 BA94      		dec r11
 211 014a 0894      		sec
 212 014c C11C      		adc r12,__zero_reg__
 213 014e D11C      		adc r13,__zero_reg__
 214 0150 BB20      		tst r11
 215 0152 09F0      		breq .+2
 216 0154 82CF      		rjmp .L17
 217               	.L19:
 218               	/* epilogue: frame size=10 */
 219 0156 2A96      		adiw r28,10
 220 0158 0FB6      		in __tmp_reg__,__SREG__
 221 015a F894      		cli
GAS LISTING c:\Temp/ccEvaaaa.s 			page 5


 222 015c DEBF      		out __SP_H__,r29
 223 015e 0FBE      		out __SREG__,__tmp_reg__
 224 0160 CDBF      		out __SP_L__,r28
 225 0162 DF91      		pop r29
 226 0164 CF91      		pop r28
 227 0166 1F91      		pop r17
 228 0168 0F91      		pop r16
 229 016a FF90      		pop r15
 230 016c EF90      		pop r14
 231 016e DF90      		pop r13
 232 0170 CF90      		pop r12
 233 0172 BF90      		pop r11
 234 0174 AF90      		pop r10
 235 0176 9F90      		pop r9
 236 0178 8F90      		pop r8
 237 017a 7F90      		pop r7
 238 017c 6F90      		pop r6
 239 017e 5F90      		pop r5
 240 0180 4F90      		pop r4
 241 0182 3F90      		pop r3
 242 0184 2F90      		pop r2
 243 0186 0895      		ret
 244               	/* epilogue end (size=25) */
 245               	/* function HtmlLedRow size 197 (146) */
 246               		.size	HtmlLedRow, .-HtmlLedRow
 247               		.data
 248               	.LC8:
 249 0049 3C74 643E 		.string	"<td><input type=\"checkbox\" name=\""
 249      3C69 6E70 
 249      7574 2074 
 249      7970 653D 
 249      2263 6865 
 250               	.LC9:
 251 006b 2573 2220 		.string	"%s\" value=\"%u\" "
 251      7661 6C75 
 251      653D 2225 
 251      7522 2000 
 252               	.LC10:
 253 007b 2063 6865 		.string	" checked=\"checked\""
 253      636B 6564 
 253      3D22 6368 
 253      6563 6B65 
 253      6422 00
 254               	.LC11:
 255 008e 3E3C 2F74 		.string	"></td>\r\n"
 255      643E 0D0A 
 255      00
 256               	.LC12:
 257 0097 3C74 643E 		.string	"<td></td>\r\n"
 257      3C2F 7464 
 257      3E0D 0A00 
 258               		.text
 259               		.type	HtmlCheckboxRow, @function
 260               	HtmlCheckboxRow:
 261               	/* prologue: frame size=6 */
 262 0188 2F92      		push r2
 263 018a 3F92      		push r3
GAS LISTING c:\Temp/ccEvaaaa.s 			page 6


 264 018c 4F92      		push r4
 265 018e 5F92      		push r5
 266 0190 6F92      		push r6
 267 0192 7F92      		push r7
 268 0194 8F92      		push r8
 269 0196 9F92      		push r9
 270 0198 AF92      		push r10
 271 019a BF92      		push r11
 272 019c CF92      		push r12
 273 019e DF92      		push r13
 274 01a0 EF92      		push r14
 275 01a2 FF92      		push r15
 276 01a4 0F93      		push r16
 277 01a6 1F93      		push r17
 278 01a8 CF93      		push r28
 279 01aa DF93      		push r29
 280 01ac CDB7      		in r28,__SP_L__
 281 01ae DEB7      		in r29,__SP_H__
 282 01b0 2697      		sbiw r28,6
 283 01b2 0FB6      		in __tmp_reg__,__SREG__
 284 01b4 F894      		cli
 285 01b6 DEBF      		out __SP_H__,r29
 286 01b8 0FBE      		out __SREG__,__tmp_reg__
 287 01ba CDBF      		out __SP_L__,r28
 288               	/* prologue end (size=26) */
 289 01bc 8D83      		std Y+5,r24
 290 01be 9E83      		std Y+6,r25
 291 01c0 962E      		mov r9,r22
 292 01c2 842E      		mov r8,r20
 293 01c4 1901      		movw r2,r18
 294 01c6 E982      		std Y+1,r14
 295 01c8 FA82      		std Y+2,r15
 296 01ca 0B83      		std Y+3,r16
 297 01cc 1C83      		std Y+4,r17
 298 01ce 2501      		movw r4,r10
 299 01d0 3601      		movw r6,r12
 300 01d2 6623      		tst r22
 301 01d4 09F4      		brne .+2
 302 01d6 74C0      		rjmp .L32
 303 01d8 CC24      		clr r12
 304 01da DD24      		clr r13
 305 01dc B62E      		mov r11,r22
 306               	.L30:
 307 01de 8820      		tst r8
 308 01e0 91F0      		breq .L25
 309 01e2 892D      		mov r24,r9
 310 01e4 9927      		clr r25
 311 01e6 8C19      		sub r24,r12
 312 01e8 9D09      		sbc r25,r13
 313 01ea 0197      		sbiw r24,1
 314 01ec 31E0      		ldi r19,lo8(1)
 315 01ee E32E      		mov r14,r19
 316 01f0 F12C      		mov r15,__zero_reg__
 317 01f2 012D      		mov r16,__zero_reg__
 318 01f4 112D      		mov r17,__zero_reg__
 319 01f6 04C0      		rjmp 2f
 320 01f8 EE0C      	1:	lsl r14
GAS LISTING c:\Temp/ccEvaaaa.s 			page 7


 321 01fa FF1C      		rol r15
 322 01fc 001F      		rol r16
 323 01fe 111F      		rol r17
 324 0200 8A95      	2:	dec r24
 325 0202 D2F7      		brpl 1b
 326 0204 0DC0      		rjmp .L26
 327               	.L25:
 328 0206 21E0      		ldi r18,lo8(1)
 329 0208 E22E      		mov r14,r18
 330 020a F12C      		mov r15,__zero_reg__
 331 020c 012D      		mov r16,__zero_reg__
 332 020e 112D      		mov r17,__zero_reg__
 333 0210 0C2C      		mov r0,r12

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?