| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- GAS LISTING /tmp/ccF4g2BZ.s page 1
- 1 .file "ether_addr.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.ether_aton,"ax",@progbits
- 9 .global ether_aton
- 10 .type ether_aton, @function
- 11 ether_aton:
- 12 0000 CF93 push r28
- 13 0002 DF93 push r29
- 14 /* prologue: function */
- 15 /* frame size = 0 */
- 16 /* stack size = 2 */
- 17 .L__stack_usage = 2
- 18 0004 FC01 movw r30,r24
- 19 0006 86E0 ldi r24,lo8(6)
- 20 0008 A0E0 ldi r26,lo8(mac.2518)
- 21 000a B0E0 ldi r27,hi8(mac.2518)
- 22 000c ED01 movw r28,r26
- 23 0:
- 24 000e 1992 st Y+,__zero_reg__
- 25 0010 8A95 dec r24
- 26 0012 01F4 brne 0b
- 27 0014 40E0 ldi r20,0
- 28 0016 50E0 ldi r21,0
- 29 .L2:
- 30 0018 8081 ld r24,Z
- 31 001a 8823 tst r24
- 32 001c 01F4 brne .+2
- 33 001e 00C0 rjmp .L14
- 34 0020 8033 cpi r24,lo8(48)
- 35 0022 04F4 brge .L3
- 36 .L5:
- 37 0024 80E0 ldi r24,0
- 38 0026 90E0 ldi r25,0
- 39 0028 00C0 rjmp .L4
- 40 .L3:
- 41 002a 96EC ldi r25,lo8(-58)
- 42 002c 980F add r25,r24
- 43 002e 9730 cpi r25,lo8(7)
- 44 0030 00F0 brlo .L5
- 45 0032 99EB ldi r25,lo8(-71)
- 46 0034 980F add r25,r24
- 47 0036 9A31 cpi r25,lo8(26)
- 48 0038 00F0 brlo .L5
- 49 003a 8736 cpi r24,lo8(103)
- 50 003c 04F4 brge .L5
- 51 003e DA01 movw r26,r20
- 52 0040 A050 subi r26,lo8(-(mac.2518))
- 53 0042 B040 sbci r27,hi8(-(mac.2518))
- 54 0044 2C91 ld r18,X
- 55 0046 2031 cpi r18,lo8(16)
- 56 0048 00F4 brsh .L5
- 57 004a 822F mov r24,r18
- GAS LISTING /tmp/ccF4g2BZ.s page 2
- 58 004c 8295 swap r24
- 59 004e 807F andi r24,lo8(-16)
- 60 0050 8C93 st X,r24
- 61 0052 2081 ld r18,Z
- 62 0054 90ED ldi r25,lo8(-48)
- 63 0056 920F add r25,r18
- 64 0058 9A30 cpi r25,lo8(10)
- 65 005a 00F4 brsh .L6
- 66 005c 022E mov __tmp_reg__,r18
- 67 005e 000C lsl r0
- 68 0060 330B sbc r19,r19
- 69 0062 2053 subi r18,48
- 70 0064 3109 sbc r19,__zero_reg__
- 71 0066 00C0 rjmp .L7
- 72 .L6:
- 73 0068 9FE9 ldi r25,lo8(-97)
- 74 006a 920F add r25,r18
- 75 006c 9630 cpi r25,lo8(6)
- 76 006e 00F4 brsh .L8
- 77 0070 022E mov __tmp_reg__,r18
- 78 0072 000C lsl r0
- 79 0074 330B sbc r19,r19
- 80 0076 2755 subi r18,87
- 81 0078 3109 sbc r19,__zero_reg__
- 82 007a 00C0 rjmp .L7
- 83 .L8:
- 84 007c 9FEB ldi r25,lo8(-65)
- 85 007e 920F add r25,r18
- 86 0080 9630 cpi r25,lo8(6)
- 87 0082 00F4 brsh .L12
- 88 0084 022E mov __tmp_reg__,r18
- 89 0086 000C lsl r0
- 90 0088 330B sbc r19,r19
- 91 008a 2753 subi r18,55
- 92 008c 3109 sbc r19,__zero_reg__
- 93 008e 00C0 rjmp .L7
- 94 .L12:
- 95 0090 20E0 ldi r18,0
- 96 0092 30E0 ldi r19,0
- 97 .L7:
- 98 0094 282B or r18,r24
- 99 0096 2C93 st X,r18
- 100 0098 8181 ldd r24,Z+1
- 101 009a 8A33 cpi r24,lo8(58)
- 102 009c 01F0 breq .L9
- 103 009e 3196 adiw r30,1
- 104 00a0 00C0 rjmp .L2
- 105 .L9:
- 106 00a2 4F5F subi r20,-1
- 107 00a4 5F4F sbci r21,-1
- 108 00a6 4630 cpi r20,6
- 109 00a8 5105 cpc r21,__zero_reg__
- 110 00aa 04F0 brlt .+2
- 111 00ac 00C0 rjmp .L5
- 112 00ae 3296 adiw r30,2
- 113 00b0 00C0 rjmp .L2
- 114 .L14:
- GAS LISTING /tmp/ccF4g2BZ.s page 3
- 115 00b2 80E0 ldi r24,lo8(mac.2518)
- 116 00b4 90E0 ldi r25,hi8(mac.2518)
- 117 .L4:
- 118 /* epilogue start */
- 119 00b6 DF91 pop r29
- 120 00b8 CF91 pop r28
- 121 00ba 0895 ret
- 122 .size ether_aton, .-ether_aton
- 123 .section .text.ether_ntoa,"ax",@progbits
- 124 .global ether_ntoa
- 125 .type ether_ntoa, @function
- 126 ether_ntoa:
- 127 0000 CF93 push r28
- 128 0002 DF93 push r29
- 129 /* prologue: function */
- 130 /* frame size = 0 */
- 131 /* stack size = 2 */
- 132 .L__stack_usage = 2
- 133 0004 A0E0 ldi r26,lo8(str.2527)
- 134 0006 B0E0 ldi r27,hi8(str.2527)
- 135 0008 2AE3 ldi r18,lo8(58)
- 136 .L16:
- 137 000a EC01 movw r28,r24
- 138 000c FC01 movw r30,r24
- 139 000e 3191 ld r19,Z+
- 140 0010 CF01 movw r24,r30
- 141 0012 E32F mov r30,r19
- 142 0014 E295 swap r30
- 143 0016 EF70 andi r30,lo8(15)
- 144 0018 F0E0 ldi r31,0
- 145 001a E050 subi r30,lo8(-(hexdigit))
- 146 001c F040 sbci r31,hi8(-(hexdigit))
- 147 001e 3081 ld r19,Z
- 148 0020 3C93 st X,r19
- 149 0022 E881 ld r30,Y
- 150 0024 EF70 andi r30,lo8(15)
- 151 0026 F0E0 ldi r31,0
- 152 0028 E050 subi r30,lo8(-(hexdigit))
- 153 002a F040 sbci r31,hi8(-(hexdigit))
- 154 002c 3081 ld r19,Z
- 155 002e 1196 adiw r26,1
- 156 0030 3C93 st X,r19
- 157 0032 1197 sbiw r26,1
- 158 0034 1396 adiw r26,3
- 159 0036 FD01 movw r30,r26
- 160 0038 3197 sbiw r30,1
- 161 003a 2083 st Z,r18
- 162 003c F0E0 ldi r31,hi8(str.2527+18)
- 163 003e A030 cpi r26,lo8(str.2527+18)
- 164 0040 BF07 cpc r27,r31
- 165 0042 01F4 brne .L16
- 166 0044 1092 0000 sts str.2527+17,__zero_reg__
- 167 0048 80E0 ldi r24,lo8(str.2527)
- 168 004a 90E0 ldi r25,hi8(str.2527)
- 169 /* epilogue start */
- 170 004c DF91 pop r29
- 171 004e CF91 pop r28
- GAS LISTING /tmp/ccF4g2BZ.s page 4
- 172 0050 0895 ret
- 173 .size ether_ntoa, .-ether_ntoa
- 174 .local str.2527
- 175 .comm str.2527,18,1
- 176 .local mac.2518
- 177 .comm mac.2518,6,1
- 178 .section .rodata
- 179 .type hexdigit, @object
- 180 .size hexdigit, 17
- 181 hexdigit:
- 182 0000 3031 3233 .string "0123456789ABCDEF"
- 182 3435 3637
- 182 3839 4142
- 182 4344 4546
- 182 00
- 183 .ident "GCC: (GNU) 5.3.0"
- 184 .global __do_copy_data
- 185 .global __do_clear_bss
- GAS LISTING /tmp/ccF4g2BZ.s page 5
- DEFINED SYMBOLS
- *ABS*:0000000000000000 ether_addr.c
- /tmp/ccF4g2BZ.s:2 *ABS*:000000000000003e __SP_H__
- /tmp/ccF4g2BZ.s:3 *ABS*:000000000000003d __SP_L__
- /tmp/ccF4g2BZ.s:4 *ABS*:000000000000003f __SREG__
- /tmp/ccF4g2BZ.s:5 *ABS*:000000000000003b __RAMPZ__
- /tmp/ccF4g2BZ.s:6 *ABS*:0000000000000000 __tmp_reg__
- /tmp/ccF4g2BZ.s:7 *ABS*:0000000000000001 __zero_reg__
- /tmp/ccF4g2BZ.s:11 .text.ether_aton:0000000000000000 ether_aton
- /tmp/ccF4g2BZ.s:175 .bss:0000000000000012 mac.2518
- /tmp/ccF4g2BZ.s:126 .text.ether_ntoa:0000000000000000 ether_ntoa
- .bss:0000000000000000 str.2527
- /tmp/ccF4g2BZ.s:181 .rodata:0000000000000000 hexdigit
- UNDEFINED SYMBOLS
- __do_copy_data
- __do_clear_bss
|