GAS LISTING /tmp/cclEovCT.s page 1 1 .file "uxmltree.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.UxmlNodeCreate,"ax",@progbits 9 .global UxmlNodeCreate 10 .type UxmlNodeCreate, @function 11 UxmlNodeCreate: 12 0000 EF92 push r14 13 0002 FF92 push r15 14 0004 0F93 push r16 15 0006 1F93 push r17 16 0008 CF93 push r28 17 000a DF93 push r29 18 /* prologue: function */ 19 /* frame size = 0 */ 20 /* stack size = 6 */ 21 .L__stack_usage = 6 22 000c 7C01 movw r14,r24 23 000e 8CE0 ldi r24,lo8(12) 24 0010 90E0 ldi r25,0 25 0012 0E94 0000 call malloc 26 0016 EC01 movw r28,r24 27 0018 892B or r24,r25 28 001a 01F0 breq .L3 29 001c 8CE0 ldi r24,lo8(12) 30 001e FE01 movw r30,r28 31 0: 32 0020 1192 st Z+,__zero_reg__ 33 0022 8A95 dec r24 34 0024 01F4 brne 0b 35 0026 F701 movw r30,r14 36 0: 37 0028 0190 ld __tmp_reg__,Z+ 38 002a 0020 tst __tmp_reg__ 39 002c 01F4 brne 0b 40 002e 8F01 movw r16,r30 41 0030 0E19 sub r16,r14 42 0032 1F09 sbc r17,r15 43 0034 C801 movw r24,r16 44 0036 0E94 0000 call malloc 45 003a 9F83 std Y+7,r25 46 003c 8E83 std Y+6,r24 47 003e 0097 sbiw r24,0 48 0040 01F0 breq .L3 49 0042 A801 movw r20,r16 50 0044 B701 movw r22,r14 51 0046 0E94 0000 call memcpy 52 .L3: 53 004a CE01 movw r24,r28 54 /* epilogue start */ 55 004c DF91 pop r29 56 004e CF91 pop r28 57 0050 1F91 pop r17 GAS LISTING /tmp/cclEovCT.s page 2 58 0052 0F91 pop r16 59 0054 FF90 pop r15 60 0056 EF90 pop r14 61 0058 0895 ret 62 .size UxmlNodeCreate, .-UxmlNodeCreate 63 .section .text.UxmlNodeAddAttrib,"ax",@progbits 64 .global UxmlNodeAddAttrib 65 .type UxmlNodeAddAttrib, @function 66 UxmlNodeAddAttrib: 67 0000 CF92 push r12 68 0002 DF92 push r13 69 0004 EF92 push r14 70 0006 FF92 push r15 71 0008 0F93 push r16 72 000a 1F93 push r17 73 000c CF93 push r28 74 000e DF93 push r29 75 /* prologue: function */ 76 /* frame size = 0 */ 77 /* stack size = 8 */ 78 .L__stack_usage = 8 79 0010 7C01 movw r14,r24 80 0012 8B01 movw r16,r22 81 0014 6A01 movw r12,r20 82 0016 86E0 ldi r24,lo8(6) 83 0018 90E0 ldi r25,0 84 001a 0E94 0000 call malloc 85 001e EC01 movw r28,r24 86 0020 892B or r24,r25 87 0022 01F0 breq .L15 88 0024 1982 std Y+1,__zero_reg__ 89 0026 1882 st Y,__zero_reg__ 90 0028 C801 movw r24,r16 91 002a 0E94 0000 call strdup 92 002e 8C01 movw r16,r24 93 0030 9B83 std Y+3,r25 94 0032 8A83 std Y+2,r24 95 0034 892B or r24,r25 96 0036 01F0 breq .L11 97 0038 C601 movw r24,r12 98 003a 0E94 0000 call strdup 99 003e 9D83 std Y+5,r25 100 0040 8C83 std Y+4,r24 101 0042 892B or r24,r25 102 0044 01F0 breq .L12 103 0046 D701 movw r26,r14 104 0048 1A96 adiw r26,10 105 004a ED91 ld r30,X+ 106 004c FC91 ld r31,X 107 004e 1B97 sbiw r26,10+1 108 0050 3097 sbiw r30,0 109 0052 01F4 brne .L19 110 0054 1B96 adiw r26,10+1 111 0056 DC93 st X,r29 112 0058 CE93 st -X,r28 113 005a 1A97 sbiw r26,10 114 005c 00C0 rjmp .L21 GAS LISTING /tmp/cclEovCT.s page 3 115 .L19: 116 005e 8081 ld r24,Z 117 0060 9181 ldd r25,Z+1 118 0062 0097 sbiw r24,0 119 0064 01F0 breq .L22 120 0066 FC01 movw r30,r24 121 0068 00C0 rjmp .L19 122 .L22: 123 006a D183 std Z+1,r29 124 006c C083 st Z,r28 125 .L21: 126 006e 80E0 ldi r24,0 127 0070 90E0 ldi r25,0 128 0072 00C0 rjmp .L10 129 .L12: 130 0074 C801 movw r24,r16 131 0076 0E94 0000 call free 132 .L11: 133 007a CE01 movw r24,r28 134 007c 0E94 0000 call free 135 .L15: 136 0080 8FEF ldi r24,lo8(-1) 137 0082 9FEF ldi r25,lo8(-1) 138 .L10: 139 /* epilogue start */ 140 0084 DF91 pop r29 141 0086 CF91 pop r28 142 0088 1F91 pop r17 143 008a 0F91 pop r16 144 008c FF90 pop r15 145 008e EF90 pop r14 146 0090 DF90 pop r13 147 0092 CF90 pop r12 148 0094 0895 ret 149 .size UxmlNodeAddAttrib, .-UxmlNodeAddAttrib 150 .section .text.UxmlTreeAddSibling,"ax",@progbits 151 .global UxmlTreeAddSibling 152 .type UxmlTreeAddSibling, @function 153 UxmlTreeAddSibling: 154 /* prologue: function */ 155 /* frame size = 0 */ 156 /* stack size = 0 */ 157 .L__stack_usage = 0 158 0000 FC01 movw r30,r24 159 0002 CB01 movw r24,r22 160 .L24: 161 0004 2081 ld r18,Z 162 0006 3181 ldd r19,Z+1 163 0008 2115 cp r18,__zero_reg__ 164 000a 3105 cpc r19,__zero_reg__ 165 000c 01F0 breq .L26 166 000e F901 movw r30,r18 167 0010 00C0 rjmp .L24 168 .L26: 169 0012 9183 std Z+1,r25 170 0014 8083 st Z,r24 171 0016 2481 ldd r18,Z+4 GAS LISTING /tmp/cclEovCT.s page 4 172 0018 3581 ldd r19,Z+5 173 001a FC01 movw r30,r24 174 001c 3583 std Z+5,r19 175 001e 2483 std Z+4,r18 176 0020 0895 ret 177 .size UxmlTreeAddSibling, .-UxmlTreeAddSibling 178 .section .text.UxmlTreeAddChild,"ax",@progbits 179 .global UxmlTreeAddChild 180 .type UxmlTreeAddChild, @function 181 UxmlTreeAddChild: 182 0000 CF93 push r28 183 0002 DF93 push r29 184 /* prologue: function */ 185 /* frame size = 0 */ 186 /* stack size = 2 */ 187 .L__stack_usage = 2 188 0004 FC01 movw r30,r24 189 0006 EB01 movw r28,r22 190 0008 8281 ldd r24,Z+2 191 000a 9381 ldd r25,Z+3 192 000c 0097 sbiw r24,0 193 000e 01F4 brne .L28 194 0010 7383 std Z+3,r23 195 0012 6283 std Z+2,r22 196 0014 FD83 std Y+5,r31 197 0016 EC83 std Y+4,r30 198 0018 00C0 rjmp .L29 199 .L28: 200 001a 0E94 0000 call UxmlTreeAddSibling 201 .L29: 202 001e CE01 movw r24,r28 203 /* epilogue start */ 204 0020 DF91 pop r29 205 0022 CF91 pop r28 206 0024 0895 ret 207 .size UxmlTreeAddChild, .-UxmlTreeAddChild 208 .section .text.UxmlTreeDestroy,"ax",@progbits 209 .global UxmlTreeDestroy 210 .type UxmlTreeDestroy, @function 211 UxmlTreeDestroy: 212 0000 CF92 push r12 213 0002 DF92 push r13 214 0004 EF92 push r14 215 0006 FF92 push r15 216 0008 0F93 push r16 217 000a 1F93 push r17 218 000c CF93 push r28 219 000e DF93 push r29 220 /* prologue: function */ 221 /* frame size = 0 */ 222 /* stack size = 8 */ 223 .L__stack_usage = 8 224 0010 EC01 movw r28,r24 225 .L31: 226 0012 2097 sbiw r28,0 227 0014 01F0 breq .L39 228 0016 E880 ld r14,Y GAS LISTING /tmp/cclEovCT.s page 5 229 0018 F980 ldd r15,Y+1 230 001a 8A81 ldd r24,Y+2 231 001c 9B81 ldd r25,Y+3 232 001e 0097 sbiw r24,0 233 0020 01F0 breq .L32 234 0022 0E94 0000 call UxmlTreeDestroy 235 .L32: 236 0026 8E81 ldd r24,Y+6 237 0028 9F81 ldd r25,Y+7 238 002a 0E94 0000 call free 239 002e 8885 ldd r24,Y+8 240 0030 9985 ldd r25,Y+9 241 0032 0E94 0000 call free 242 0036 0A85 ldd r16,Y+10 243 0038 1B85 ldd r17,Y+11 244 .L33: 245 003a 0115 cp r16,__zero_reg__ 246 003c 1105 cpc r17,__zero_reg__ 247 003e 01F0 breq .L40 248 0040 F801 movw r30,r16 249 0042 C080 ld r12,Z 250 0044 D180 ldd r13,Z+1 251 0046 8281 ldd r24,Z+2 252 0048 9381 ldd r25,Z+3 253 004a 0E94 0000 call free 254 004e F801 movw r30,r16 255 0050 8481 ldd r24,Z+4 256 0052 9581 ldd r25,Z+5 257 0054 0E94 0000 call free 258 0058 C801 movw r24,r16 259 005a 0E94 0000 call free 260 005e 8601 movw r16,r12 261 0060 00C0 rjmp .L33 262 .L40: 263 0062 CE01 movw r24,r28 264 0064 0E94 0000 call free 265 0068 E701 movw r28,r14 266 006a 00C0 rjmp .L31 267 .L39: 268 /* epilogue start */ 269 006c DF91 pop r29 270 006e CF91 pop r28 271 0070 1F91 pop r17 272 0072 0F91 pop r16 273 0074 FF90 pop r15 274 0076 EF90 pop r14 275 0078 DF90 pop r13 276 007a CF90 pop r12 277 007c 0895 ret 278 .size UxmlTreeDestroy, .-UxmlTreeDestroy 279 .ident "GCC: (GNU) 5.3.0" GAS LISTING /tmp/cclEovCT.s page 6 DEFINED SYMBOLS *ABS*:0000000000000000 uxmltree.c /tmp/cclEovCT.s:2 *ABS*:000000000000003e __SP_H__ /tmp/cclEovCT.s:3 *ABS*:000000000000003d __SP_L__ /tmp/cclEovCT.s:4 *ABS*:000000000000003f __SREG__ /tmp/cclEovCT.s:5 *ABS*:000000000000003b __RAMPZ__ /tmp/cclEovCT.s:6 *ABS*:0000000000000000 __tmp_reg__ /tmp/cclEovCT.s:7 *ABS*:0000000000000001 __zero_reg__ /tmp/cclEovCT.s:11 .text.UxmlNodeCreate:0000000000000000 UxmlNodeCreate /tmp/cclEovCT.s:66 .text.UxmlNodeAddAttrib:0000000000000000 UxmlNodeAddAttrib /tmp/cclEovCT.s:153 .text.UxmlTreeAddSibling:0000000000000000 UxmlTreeAddSibling /tmp/cclEovCT.s:181 .text.UxmlTreeAddChild:0000000000000000 UxmlTreeAddChild /tmp/cclEovCT.s:211 .text.UxmlTreeDestroy:0000000000000000 UxmlTreeDestroy UNDEFINED SYMBOLS malloc memcpy strdup free