| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396 |
- GAS LISTING /tmp/ccQ13Obf.s page 1
- 1 .file "sbbif0.c"
- 2 __SP_H__ = 0x3e
- 3 __SP_L__ = 0x3d
- 4 __SREG__ = 0x3f
- 5 __RAMPZ__ = 0x3b
- 6 __tmp_reg__ = 0
- 7 __zero_reg__ = 1
- 8 .section .text.Sbbi0Delay,"ax",@progbits
- 9 .type Sbbi0Delay, @function
- 10 Sbbi0Delay:
- 11 /* prologue: function */
- 12 /* frame size = 0 */
- 13 /* stack size = 0 */
- 14 .L__stack_usage = 0
- 15 0000 8091 0000 lds r24,sel_delay
- 16 .L8:
- 17 0004 8823 tst r24
- 18 0006 01F0 breq .L1
- 19 /* #APP */
- 20 ; 125 "../../nut/dev/sbbif0.c" 1
- 21 0008 0000 nop
- 22 ; 0 "" 2
- 23 /* #NOAPP */
- 24 000a 8150 subi r24,lo8(-(-1))
- 25 000c 00C0 rjmp .L8
- 26 .L1:
- 27 000e 0895 ret
- 28 .size Sbbi0Delay, .-Sbbi0Delay
- 29 .section .text.Sbbi0SetMode,"ax",@progbits
- 30 .global Sbbi0SetMode
- 31 .type Sbbi0SetMode, @function
- 32 Sbbi0SetMode:
- 33 /* prologue: function */
- 34 /* frame size = 0 */
- 35 /* stack size = 0 */
- 36 .L__stack_usage = 0
- 37 0000 8430 cpi r24,lo8(4)
- 38 0002 00F4 brsh .L13
- 39 0004 6430 cpi r22,lo8(4)
- 40 0006 00F4 brsh .L13
- 41 0008 E82F mov r30,r24
- 42 000a F0E0 ldi r31,0
- 43 000c E050 subi r30,lo8(-(sbbi0_mode))
- 44 000e F040 sbci r31,hi8(-(sbbi0_mode))
- 45 0010 6083 st Z,r22
- 46 0012 80E0 ldi r24,0
- 47 0014 90E0 ldi r25,0
- 48 0016 0895 ret
- 49 .L13:
- 50 0018 8FEF ldi r24,lo8(-1)
- 51 001a 9FEF ldi r25,lo8(-1)
- 52 001c 0895 ret
- 53 .size Sbbi0SetMode, .-Sbbi0SetMode
- 54 .section .text.Sbbi0SetSpeed,"ax",@progbits
- 55 .global Sbbi0SetSpeed
- 56 .type Sbbi0SetSpeed, @function
- 57 Sbbi0SetSpeed:
- GAS LISTING /tmp/ccQ13Obf.s page 2
- 58 0000 CF92 push r12
- 59 0002 DF92 push r13
- 60 0004 EF92 push r14
- 61 0006 FF92 push r15
- 62 0008 CF93 push r28
- 63 /* prologue: function */
- 64 /* frame size = 0 */
- 65 /* stack size = 5 */
- 66 .L__stack_usage = 5
- 67 000a C82F mov r28,r24
- 68 000c 6A01 movw r12,r20
- 69 000e 7B01 movw r14,r22
- 70 0010 0E94 0000 call NutGetCpuClock
- 71 0014 9B01 movw r18,r22
- 72 0016 AC01 movw r20,r24
- 73 0018 84E0 ldi r24,4
- 74 1:
- 75 001a 5695 lsr r21
- 76 001c 4795 ror r20
- 77 001e 3795 ror r19
- 78 0020 2795 ror r18
- 79 0022 8A95 dec r24
- 80 0024 01F4 brne 1b
- 81 0026 C114 cp r12,__zero_reg__
- 82 0028 D104 cpc r13,__zero_reg__
- 83 002a E104 cpc r14,__zero_reg__
- 84 002c F104 cpc r15,__zero_reg__
- 85 002e 01F0 breq .L15
- 86 0030 CA01 movw r24,r20
- 87 0032 B901 movw r22,r18
- 88 0034 A701 movw r20,r14
- 89 0036 9601 movw r18,r12
- 90 0038 0E94 0000 call __udivmodsi4
- 91 .L15:
- 92 003c 8C2F mov r24,r28
- 93 003e 90E0 ldi r25,0
- 94 0040 FC01 movw r30,r24
- 95 0042 E050 subi r30,lo8(-(sbbi0_delay))
- 96 0044 F040 sbci r31,hi8(-(sbbi0_delay))
- 97 0046 2530 cpi r18,5
- 98 0048 3105 cpc r19,__zero_reg__
- 99 004a 4105 cpc r20,__zero_reg__
- 100 004c 5105 cpc r21,__zero_reg__
- 101 004e 00F4 brsh .L16
- 102 0050 1082 st Z,__zero_reg__
- 103 0052 00C0 rjmp .L14
- 104 .L16:
- 105 0054 2F3F cpi r18,-1
- 106 0056 3105 cpc r19,__zero_reg__
- 107 0058 4105 cpc r20,__zero_reg__
- 108 005a 5105 cpc r21,__zero_reg__
- 109 005c 00F0 brlo .L22
- 110 005e 2FEF ldi r18,lo8(-1)
- 111 .L22:
- 112 0060 2083 st Z,r18
- 113 .L14:
- 114 /* epilogue start */
- GAS LISTING /tmp/ccQ13Obf.s page 3
- 115 0062 CF91 pop r28
- 116 0064 FF90 pop r15
- 117 0066 EF90 pop r14
- 118 0068 DF90 pop r13
- 119 006a CF90 pop r12
- 120 006c 0895 ret
- 121 .size Sbbi0SetSpeed, .-Sbbi0SetSpeed
- 122 .section .text.Sbbi0Enable,"ax",@progbits
- 123 .global Sbbi0Enable
- 124 .type Sbbi0Enable, @function
- 125 Sbbi0Enable:
- 126 /* prologue: function */
- 127 /* frame size = 0 */
- 128 /* stack size = 0 */
- 129 .L__stack_usage = 0
- 130 0000 90E0 ldi r25,0
- 131 0002 FC01 movw r30,r24
- 132 0004 E050 subi r30,lo8(-(sbbi0_mode))
- 133 0006 F040 sbci r31,hi8(-(sbbi0_mode))
- 134 0008 2081 ld r18,Z
- 135 000a 2093 0000 sts sel_mode,r18
- 136 000e FC01 movw r30,r24
- 137 0010 E050 subi r30,lo8(-(sbbi0_delay))
- 138 0012 F040 sbci r31,hi8(-(sbbi0_delay))
- 139 0014 8081 ld r24,Z
- 140 0016 8093 0000 sts sel_delay,r24
- 141 001a 0895 ret
- 142 .size Sbbi0Enable, .-Sbbi0Enable
- 143 .section .text.Sbbi0ChipReset,"ax",@progbits
- 144 .global Sbbi0ChipReset
- 145 .type Sbbi0ChipReset, @function
- 146 Sbbi0ChipReset:
- 147 /* prologue: function */
- 148 /* frame size = 0 */
- 149 /* stack size = 0 */
- 150 .L__stack_usage = 0
- 151 0000 0895 ret
- 152 .size Sbbi0ChipReset, .-Sbbi0ChipReset
- 153 .section .text.Sbbi0ChipSelect,"ax",@progbits
- 154 .global Sbbi0ChipSelect
- 155 .type Sbbi0ChipSelect, @function
- 156 Sbbi0ChipSelect:
- 157 /* prologue: function */
- 158 /* frame size = 0 */
- 159 /* stack size = 0 */
- 160 .L__stack_usage = 0
- 161 0000 0895 ret
- 162 .size Sbbi0ChipSelect, .-Sbbi0ChipSelect
- 163 .section .text.Sbbi0SelectDevice,"ax",@progbits
- 164 .global Sbbi0SelectDevice
- 165 .type Sbbi0SelectDevice, @function
- 166 Sbbi0SelectDevice:
- 167 /* prologue: function */
- 168 /* frame size = 0 */
- 169 /* stack size = 0 */
- 170 .L__stack_usage = 0
- 171 0000 0C94 0000 jmp Sbbi0Enable
- GAS LISTING /tmp/ccQ13Obf.s page 4
- 172 .size Sbbi0SelectDevice, .-Sbbi0SelectDevice
- 173 .section .text.Sbbi0DeselectDevice,"ax",@progbits
- 174 .global Sbbi0DeselectDevice
- 175 .type Sbbi0DeselectDevice, @function
- 176 Sbbi0DeselectDevice:
- 177 /* prologue: function */
- 178 /* frame size = 0 */
- 179 /* stack size = 0 */
- 180 .L__stack_usage = 0
- 181 0000 0895 ret
- 182 .size Sbbi0DeselectDevice, .-Sbbi0DeselectDevice
- 183 .section .text.Sbbi0NegSelectDevice,"ax",@progbits
- 184 .global Sbbi0NegSelectDevice
- 185 .type Sbbi0NegSelectDevice, @function
- 186 Sbbi0NegSelectDevice:
- 187 /* prologue: function */
- 188 /* frame size = 0 */
- 189 /* stack size = 0 */
- 190 .L__stack_usage = 0
- 191 0000 0C94 0000 jmp Sbbi0Enable
- 192 .size Sbbi0NegSelectDevice, .-Sbbi0NegSelectDevice
- 193 .section .text.Sbbi0NegDeselectDevice,"ax",@progbits
- 194 .global Sbbi0NegDeselectDevice
- 195 .type Sbbi0NegDeselectDevice, @function
- 196 Sbbi0NegDeselectDevice:
- 197 /* prologue: function */
- 198 /* frame size = 0 */
- 199 /* stack size = 0 */
- 200 .L__stack_usage = 0
- 201 0000 0895 ret
- 202 .size Sbbi0NegDeselectDevice, .-Sbbi0NegDeselectDevice
- 203 .section .text.Sbbi0Byte,"ax",@progbits
- 204 .global Sbbi0Byte
- 205 .type Sbbi0Byte, @function
- 206 Sbbi0Byte:
- 207 0000 0F93 push r16
- 208 0002 1F93 push r17
- 209 0004 CF93 push r28
- 210 0006 DF93 push r29
- 211 /* prologue: function */
- 212 /* frame size = 0 */
- 213 /* stack size = 4 */
- 214 .L__stack_usage = 4
- 215 0008 C82F mov r28,r24
- 216 000a 8091 0000 lds r24,sel_mode
- 217 000e 08E0 ldi r16,lo8(8)
- 218 0010 10E0 ldi r17,0
- 219 0012 D0E8 ldi r29,lo8(-128)
- 220 0014 8330 cpi r24,lo8(3)
- 221 0016 01F4 brne .L31
- 222 .L32:
- 223 0018 0E94 0000 call Sbbi0Delay
- 224 001c 8D2F mov r24,r29
- 225 001e 8095 com r24
- 226 0020 C823 and r28,r24
- 227 0022 0E94 0000 call Sbbi0Delay
- 228 0026 D695 lsr r29
- GAS LISTING /tmp/ccQ13Obf.s page 5
- 229 0028 0150 subi r16,1
- 230 002a 1109 sbc r17,__zero_reg__
- 231 002c 01F4 brne .L32
- 232 002e 00C0 rjmp .L33
- 233 .L31:
- 234 0030 8230 cpi r24,lo8(2)
- 235 0032 01F4 brne .L34
- 236 .L35:
- 237 0034 0E94 0000 call Sbbi0Delay
- 238 0038 8D2F mov r24,r29
- 239 003a 8095 com r24
- 240 003c C823 and r28,r24
- 241 003e 0E94 0000 call Sbbi0Delay
- 242 0042 D695 lsr r29
- 243 0044 0150 subi r16,1
- 244 0046 1109 sbc r17,__zero_reg__
- 245 0048 01F4 brne .L35
- 246 004a 00C0 rjmp .L33
- 247 .L34:
- 248 004c 8130 cpi r24,lo8(1)
- 249 004e 01F4 brne .L38
- 250 .L37:
- 251 0050 0E94 0000 call Sbbi0Delay
- 252 0054 8D2F mov r24,r29
- 253 0056 8095 com r24
- 254 0058 C823 and r28,r24
- 255 005a 0E94 0000 call Sbbi0Delay
- 256 005e D695 lsr r29
- 257 0060 0150 subi r16,1
- 258 0062 1109 sbc r17,__zero_reg__
- 259 0064 01F4 brne .L37
- 260 0066 00C0 rjmp .L33
- 261 .L38:
- 262 0068 0E94 0000 call Sbbi0Delay
- 263 006c 8D2F mov r24,r29
- 264 006e 8095 com r24
- 265 0070 C823 and r28,r24
- 266 0072 0E94 0000 call Sbbi0Delay
- 267 0076 D695 lsr r29
- 268 0078 0150 subi r16,1
- 269 007a 1109 sbc r17,__zero_reg__
- 270 007c 01F4 brne .L38
- 271 .L33:
- 272 007e 8C2F mov r24,r28
- 273 /* epilogue start */
- 274 0080 DF91 pop r29
- 275 0082 CF91 pop r28
- 276 0084 1F91 pop r17
- 277 0086 0F91 pop r16
- 278 0088 0895 ret
- 279 .size Sbbi0Byte, .-Sbbi0Byte
- 280 .section .text.Sbbi0Transact,"ax",@progbits
- 281 .global Sbbi0Transact
- 282 .type Sbbi0Transact, @function
- 283 Sbbi0Transact:
- 284 0000 EF92 push r14
- 285 0002 FF92 push r15
- GAS LISTING /tmp/ccQ13Obf.s page 6
- 286 0004 0F93 push r16
- 287 0006 1F93 push r17
- 288 0008 CF93 push r28
- 289 000a DF93 push r29
- 290 /* prologue: function */
- 291 /* frame size = 0 */
- 292 /* stack size = 6 */
- 293 .L__stack_usage = 6
- 294 000c EC01 movw r28,r24
- 295 000e 6115 cp r22,__zero_reg__
- 296 0010 7105 cpc r23,__zero_reg__
- 297 0012 01F4 brne .L44
- 298 0014 8C01 movw r16,r24
- 299 0016 040F add r16,r20
- 300 0018 151F adc r17,r21
- 301 001a 00C0 rjmp .L45
- 302 .L44:
- 303 001c 8B01 movw r16,r22
- 304 001e 7B01 movw r14,r22
- 305 0020 E40E add r14,r20
- 306 0022 F51E adc r15,r21
- 307 .L46:
- 308 0024 0E15 cp r16,r14
- 309 0026 1F05 cpc r17,r15
- 310 0028 01F0 breq .L43
- 311 002a 8991 ld r24,Y+
- 312 002c 0E94 0000 call Sbbi0Byte
- 313 0030 F801 movw r30,r16
- 314 0032 8193 st Z+,r24
- 315 0034 8F01 movw r16,r30
- 316 0036 00C0 rjmp .L46
- 317 .L45:
- 318 0038 C017 cp r28,r16
- 319 003a D107 cpc r29,r17
- 320 003c 01F0 breq .L43
- 321 003e 8991 ld r24,Y+
- 322 0040 0E94 0000 call Sbbi0Byte
- 323 0044 00C0 rjmp .L45
- 324 .L43:
- 325 /* epilogue start */
- 326 0046 DF91 pop r29
- 327 0048 CF91 pop r28
- 328 004a 1F91 pop r17
- 329 004c 0F91 pop r16
- 330 004e FF90 pop r15
- 331 0050 EF90 pop r14
- 332 0052 0895 ret
- 333 .size Sbbi0Transact, .-Sbbi0Transact
- 334 .local sel_delay
- 335 .comm sel_delay,1,1
- 336 .local sbbi0_delay
- 337 .comm sbbi0_delay,4,1
- 338 .local sel_mode
- 339 .comm sel_mode,1,1
- 340 .local sbbi0_mode
- 341 .comm sbbi0_mode,4,1
- 342 .ident "GCC: (GNU) 5.3.0"
- GAS LISTING /tmp/ccQ13Obf.s page 7
- 343 .global __do_clear_bss
- GAS LISTING /tmp/ccQ13Obf.s page 8
- DEFINED SYMBOLS
- *ABS*:0000000000000000 sbbif0.c
- /tmp/ccQ13Obf.s:2 *ABS*:000000000000003e __SP_H__
- /tmp/ccQ13Obf.s:3 *ABS*:000000000000003d __SP_L__
- /tmp/ccQ13Obf.s:4 *ABS*:000000000000003f __SREG__
- /tmp/ccQ13Obf.s:5 *ABS*:000000000000003b __RAMPZ__
- /tmp/ccQ13Obf.s:6 *ABS*:0000000000000000 __tmp_reg__
- /tmp/ccQ13Obf.s:7 *ABS*:0000000000000001 __zero_reg__
- /tmp/ccQ13Obf.s:10 .text.Sbbi0Delay:0000000000000000 Sbbi0Delay
- .bss:0000000000000000 sel_delay
- /tmp/ccQ13Obf.s:32 .text.Sbbi0SetMode:0000000000000000 Sbbi0SetMode
- /tmp/ccQ13Obf.s:339 .bss:0000000000000006 sbbi0_mode
- /tmp/ccQ13Obf.s:57 .text.Sbbi0SetSpeed:0000000000000000 Sbbi0SetSpeed
- /tmp/ccQ13Obf.s:335 .bss:0000000000000001 sbbi0_delay
- /tmp/ccQ13Obf.s:125 .text.Sbbi0Enable:0000000000000000 Sbbi0Enable
- /tmp/ccQ13Obf.s:337 .bss:0000000000000005 sel_mode
- /tmp/ccQ13Obf.s:146 .text.Sbbi0ChipReset:0000000000000000 Sbbi0ChipReset
- /tmp/ccQ13Obf.s:156 .text.Sbbi0ChipSelect:0000000000000000 Sbbi0ChipSelect
- /tmp/ccQ13Obf.s:166 .text.Sbbi0SelectDevice:0000000000000000 Sbbi0SelectDevice
- /tmp/ccQ13Obf.s:176 .text.Sbbi0DeselectDevice:0000000000000000 Sbbi0DeselectDevice
- /tmp/ccQ13Obf.s:186 .text.Sbbi0NegSelectDevice:0000000000000000 Sbbi0NegSelectDevice
- /tmp/ccQ13Obf.s:196 .text.Sbbi0NegDeselectDevice:0000000000000000 Sbbi0NegDeselectDevice
- /tmp/ccQ13Obf.s:206 .text.Sbbi0Byte:0000000000000000 Sbbi0Byte
- /tmp/ccQ13Obf.s:283 .text.Sbbi0Transact:0000000000000000 Sbbi0Transact
- UNDEFINED SYMBOLS
- NutGetCpuClock
- __udivmodsi4
- __do_clear_bss
|