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