db_shift.lst

来自「针对AVR单片机开发的嵌入式操作系统」· LST 代码 · 共 283 行

LST
283
字号
GAS LISTING c:\Temp/ccopaaaa.s 			page 1


   1               		.file	"db_shift.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               		.text
  11               	.global	DevBoardShiftDelay
  12               		.type	DevBoardShiftDelay, @function
  13               	DevBoardShiftDelay:
  14               	/* prologue: frame size=0 */
  15               	/* prologue end (size=0) */
  16 0000 1616      		cp __zero_reg__,r22
  17 0002 1706      		cpc __zero_reg__,r23
  18 0004 1806      		cpc __zero_reg__,r24
  19 0006 1906      		cpc __zero_reg__,r25
  20 0008 34F4      		brge .L7
  21               	.L5:
  22               	/* #APP */
  23 000a 0000      		nop
  24               	/* #NOAPP */
  25 000c 6150      		subi r22,lo8(-(-1))
  26 000e 7040      		sbci r23,hi8(-(-1))
  27 0010 8040      		sbci r24,hlo8(-(-1))
  28 0012 9040      		sbci r25,hhi8(-(-1))
  29 0014 D1F7      		brne .L5
  30               	.L7:
  31 0016 0895      		ret
  32               	/* epilogue: frame size=0 */
  33               	/* epilogue: noreturn */
  34               	/* epilogue end (size=0) */
  35               	/* function DevBoardShiftDelay size 17 (17) */
  36               		.size	DevBoardShiftDelay, .-DevBoardShiftDelay
  37               	.global	DevBoardShiftLedOut
  38               		.type	DevBoardShiftLedOut, @function
  39               	DevBoardShiftLedOut:
  40               	/* prologue: frame size=0 */
  41 0018 1F93      		push r17
  42 001a CF93      		push r28
  43               	/* prologue end (size=2) */
  44 001c 182F      		mov r17,r24
  45 001e 8D9A      		sbi 49-0x20,5
  46 0020 8F9A      		sbi 49-0x20,7
  47 0022 8E9A      		sbi 49-0x20,6
  48 0024 9598      		cbi 50-0x20,5
  49 0026 9798      		cbi 50-0x20,7
  50 0028 C7E0      		ldi r28,lo8(7)
  51               	.L13:
  52 002a 812F      		mov r24,r17
  53 002c 9927      		clr r25
  54 002e 0C2E      		mov r0,r28
  55 0030 02C0      		rjmp 2f
  56 0032 9595      	1:	asr r25
  57 0034 8795      		ror r24
GAS LISTING c:\Temp/ccopaaaa.s 			page 2


  58 0036 0A94      	2:	dec r0
  59 0038 E2F7      		brpl 1b
  60 003a 80FF      		sbrs r24,0
  61 003c 02C0      		rjmp .L11
  62 003e 969A      		sbi 50-0x20,6
  63 0040 01C0      		rjmp .L12
  64               	.L11:
  65 0042 9698      		cbi 50-0x20,6
  66               	.L12:
  67 0044 61E0      		ldi r22,lo8(1)
  68 0046 70E0      		ldi r23,hi8(1)
  69 0048 80E0      		ldi r24,hlo8(1)
  70 004a 90E0      		ldi r25,hhi8(1)
  71 004c 0E94 0000 		call DevBoardShiftDelay
  72 0050 979A      		sbi 50-0x20,7
  73 0052 61E0      		ldi r22,lo8(1)
  74 0054 70E0      		ldi r23,hi8(1)
  75 0056 80E0      		ldi r24,hlo8(1)
  76 0058 90E0      		ldi r25,hhi8(1)
  77 005a 0E94 0000 		call DevBoardShiftDelay
  78 005e 9798      		cbi 50-0x20,7
  79 0060 C150      		subi r28,1
  80 0062 18F7      		brcc .L13
  81 0064 959A      		sbi 50-0x20,5
  82               	/* epilogue: frame size=0 */
  83 0066 CF91      		pop r28
  84 0068 1F91      		pop r17
  85 006a 0895      		ret
  86               	/* epilogue end (size=3) */
  87               	/* function DevBoardShiftLedOut size 43 (38) */
  88               		.size	DevBoardShiftLedOut, .-DevBoardShiftLedOut
  89               	.global	DevBoardShiftLcdOut
  90               		.type	DevBoardShiftLcdOut, @function
  91               	DevBoardShiftLcdOut:
  92               	/* prologue: frame size=0 */
  93 006c 1F93      		push r17
  94 006e CF93      		push r28
  95               	/* prologue end (size=2) */
  96 0070 182F      		mov r17,r24
  97 0072 899A      		sbi 49-0x20,1
  98 0074 8F9A      		sbi 49-0x20,7
  99 0076 8E9A      		sbi 49-0x20,6
 100 0078 9198      		cbi 50-0x20,1
 101 007a 9798      		cbi 50-0x20,7
 102 007c C7E0      		ldi r28,lo8(7)
 103               	.L21:
 104 007e 812F      		mov r24,r17
 105 0080 9927      		clr r25
 106 0082 0C2E      		mov r0,r28
 107 0084 02C0      		rjmp 2f
 108 0086 9595      	1:	asr r25
 109 0088 8795      		ror r24
 110 008a 0A94      	2:	dec r0
 111 008c E2F7      		brpl 1b
 112 008e 80FF      		sbrs r24,0
 113 0090 02C0      		rjmp .L19
 114 0092 969A      		sbi 50-0x20,6
GAS LISTING c:\Temp/ccopaaaa.s 			page 3


 115 0094 01C0      		rjmp .L20
 116               	.L19:
 117 0096 9698      		cbi 50-0x20,6
 118               	.L20:
 119 0098 61E0      		ldi r22,lo8(1)
 120 009a 70E0      		ldi r23,hi8(1)
 121 009c 80E0      		ldi r24,hlo8(1)
 122 009e 90E0      		ldi r25,hhi8(1)
 123 00a0 0E94 0000 		call DevBoardShiftDelay
 124 00a4 979A      		sbi 50-0x20,7
 125 00a6 61E0      		ldi r22,lo8(1)
 126 00a8 70E0      		ldi r23,hi8(1)
 127 00aa 80E0      		ldi r24,hlo8(1)
 128 00ac 90E0      		ldi r25,hhi8(1)
 129 00ae 0E94 0000 		call DevBoardShiftDelay
 130 00b2 9798      		cbi 50-0x20,7
 131 00b4 C150      		subi r28,1
 132 00b6 18F7      		brcc .L21
 133 00b8 919A      		sbi 50-0x20,1
 134               	/* epilogue: frame size=0 */
 135 00ba CF91      		pop r28
 136 00bc 1F91      		pop r17
 137 00be 0895      		ret
 138               	/* epilogue end (size=3) */
 139               	/* function DevBoardShiftLcdOut size 43 (38) */
 140               		.size	DevBoardShiftLcdOut, .-DevBoardShiftLcdOut
 141               	.global	DevBoardShiftWordOut
 142               		.type	DevBoardShiftWordOut, @function
 143               	DevBoardShiftWordOut:
 144               	/* prologue: frame size=0 */
 145 00c0 0F93      		push r16
 146 00c2 1F93      		push r17
 147 00c4 CF93      		push r28
 148               	/* prologue end (size=3) */
 149 00c6 8C01      		movw r16,r24
 150 00c8 8D9A      		sbi 49-0x20,5
 151 00ca 8F9A      		sbi 49-0x20,7
 152 00cc 8E9A      		sbi 49-0x20,6
 153 00ce 9598      		cbi 50-0x20,5
 154 00d0 9798      		cbi 50-0x20,7
 155 00d2 CFE0      		ldi r28,lo8(15)
 156               	.L29:
 157 00d4 81E0      		ldi r24,lo8(1)
 158 00d6 90E0      		ldi r25,hi8(1)
 159 00d8 0C2E      		mov r0,r28
 160 00da 02C0      		rjmp 2f
 161 00dc 880F      	1:	lsl r24
 162 00de 991F      		rol r25
 163 00e0 0A94      	2:	dec r0
 164 00e2 E2F7      		brpl 1b
 165 00e4 8023      		and r24,r16
 166 00e6 9123      		and r25,r17
 167 00e8 892B      		or r24,r25
 168 00ea 11F0      		breq .L27
 169 00ec 969A      		sbi 50-0x20,6
 170 00ee 01C0      		rjmp .L28
 171               	.L27:
GAS LISTING c:\Temp/ccopaaaa.s 			page 4


 172 00f0 9698      		cbi 50-0x20,6
 173               	.L28:
 174 00f2 61E0      		ldi r22,lo8(1)
 175 00f4 70E0      		ldi r23,hi8(1)
 176 00f6 80E0      		ldi r24,hlo8(1)
 177 00f8 90E0      		ldi r25,hhi8(1)
 178 00fa 0E94 0000 		call DevBoardShiftDelay
 179 00fe 979A      		sbi 50-0x20,7
 180 0100 61E0      		ldi r22,lo8(1)
 181 0102 70E0      		ldi r23,hi8(1)
 182 0104 80E0      		ldi r24,hlo8(1)
 183 0106 90E0      		ldi r25,hhi8(1)
 184 0108 0E94 0000 		call DevBoardShiftDelay
 185 010c 9798      		cbi 50-0x20,7
 186 010e C150      		subi r28,1
 187 0110 08F7      		brcc .L29
 188 0112 959A      		sbi 50-0x20,5
 189               	/* epilogue: frame size=0 */
 190 0114 CF91      		pop r28
 191 0116 1F91      		pop r17
 192 0118 0F91      		pop r16
 193 011a 0895      		ret
 194               	/* epilogue end (size=4) */
 195               	/* function DevBoardShiftWordOut size 47 (40) */
 196               		.size	DevBoardShiftWordOut, .-DevBoardShiftWordOut
 197               	.global	DevBoardShiftByteIn
 198               		.type	DevBoardShiftByteIn, @function
 199               	DevBoardShiftByteIn:
 200               	/* prologue: frame size=0 */
 201 011c 1F93      		push r17
 202 011e CF93      		push r28
 203               	/* prologue end (size=2) */
 204 0120 10E0      		ldi r17,lo8(0)
 205 0122 8A9A      		sbi 49-0x20,2
 206 0124 8F9A      		sbi 49-0x20,7
 207 0126 8C98      		cbi 49-0x20,4
 208 0128 9798      		cbi 50-0x20,7
 209 012a 9298      		cbi 50-0x20,2
 210 012c 61E0      		ldi r22,lo8(1)
 211 012e 70E0      		ldi r23,hi8(1)
 212 0130 80E0      		ldi r24,hlo8(1)
 213 0132 90E0      		ldi r25,hhi8(1)
 214 0134 0E94 0000 		call DevBoardShiftDelay
 215 0138 929A      		sbi 50-0x20,2
 216 013a 8499      		sbic 48-0x20,4
 217 013c 11E0      		ldi r17,lo8(1)
 218               	.L34:
 219 013e C6E0      		ldi r28,lo8(6)
 220               	.L39:
 221 0140 979A      		sbi 50-0x20,7
 222 0142 61E0      		ldi r22,lo8(1)
 223 0144 70E0      		ldi r23,hi8(1)
 224 0146 80E0      		ldi r24,hlo8(1)
 225 0148 90E0      		ldi r25,hhi8(1)
 226 014a 0E94 0000 		call DevBoardShiftDelay
 227 014e 110F      		lsl r17
 228 0150 8499      		sbic 48-0x20,4
GAS LISTING c:\Temp/ccopaaaa.s 			page 5


 229 0152 1160      		ori r17,lo8(1)
 230               	.L38:
 231 0154 9798      		cbi 50-0x20,7
 232 0156 61E0      		ldi r22,lo8(1)
 233 0158 70E0      		ldi r23,hi8(1)
 234 015a 80E0      		ldi r24,hlo8(1)
 235 015c 90E0      		ldi r25,hhi8(1)
 236 015e 0E94 0000 		call DevBoardShiftDelay
 237 0162 C150      		subi r28,1
 238 0164 68F7      		brcc .L39
 239 0166 812F      		mov r24,r17
 240 0168 9927      		clr r25
 241               	/* epilogue: frame size=0 */
 242 016a CF91      		pop r28
 243 016c 1F91      		pop r17
 244 016e 0895      		ret
 245               	/* epilogue end (size=3) */
 246               	/* function DevBoardShiftByteIn size 45 (40) */
 247               		.size	DevBoardShiftByteIn, .-DevBoardShiftByteIn
 248               	/* File "db_shift.c": code  195 = 0x00c3 ( 173), prologues   9, epilogues  13 */
GAS LISTING c:\Temp/ccopaaaa.s 			page 6


DEFINED SYMBOLS
                            *ABS*:00000000 db_shift.c
                            *ABS*:0000003f __SREG__
                            *ABS*:0000003e __SP_H__
                            *ABS*:0000003d __SP_L__
                            *ABS*:00000000 __tmp_reg__
                            *ABS*:00000001 __zero_reg__
  c:\Temp/ccopaaaa.s:13     .text:00000000 DevBoardShiftDelay
  c:\Temp/ccopaaaa.s:39     .text:00000018 DevBoardShiftLedOut
  c:\Temp/ccopaaaa.s:91     .text:0000006c DevBoardShiftLcdOut
  c:\Temp/ccopaaaa.s:143    .text:000000c0 DevBoardShiftWordOut
  c:\Temp/ccopaaaa.s:199    .text:0000011c DevBoardShiftByteIn

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss

⌨️ 快捷键说明

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