GAS LISTING /tmp/ccP0Ti1y.s page 1 1 .file "lili.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.LiLiDefaultItemCompare,"ax",@progbits 9 .type LiLiDefaultItemCompare, @function 10 LiLiDefaultItemCompare: 11 /* prologue: function */ 12 /* frame size = 0 */ 13 /* stack size = 0 */ 14 .L__stack_usage = 0 15 0000 861B sub r24,r22 16 0002 970B sbc r25,r23 17 0004 0895 ret 18 .size LiLiDefaultItemCompare, .-LiLiDefaultItemCompare 19 .section .text.LiLiRemoveNode,"ax",@progbits 20 .global LiLiRemoveNode 21 .type LiLiRemoveNode, @function 22 LiLiRemoveNode: 23 0000 CF93 push r28 24 0002 DF93 push r29 25 /* prologue: function */ 26 /* frame size = 0 */ 27 /* stack size = 2 */ 28 .L__stack_usage = 2 29 0004 FB01 movw r30,r22 30 0006 3097 sbiw r30,0 31 0008 01F0 breq .L2 32 000a A081 ld r26,Z 33 000c B181 ldd r27,Z+1 34 000e 2281 ldd r18,Z+2 35 0010 3381 ldd r19,Z+3 36 0012 1097 sbiw r26,0 37 0014 01F0 breq .L4 38 0016 1396 adiw r26,2+1 39 0018 3C93 st X,r19 40 001a 2E93 st -X,r18 41 001c 1297 sbiw r26,2 42 001e 00C0 rjmp .L5 43 .L4: 44 0020 EC01 movw r28,r24 45 0022 3B83 std Y+3,r19 46 0024 2A83 std Y+2,r18 47 .L5: 48 0026 C281 ldd r28,Z+2 49 0028 D381 ldd r29,Z+3 50 002a 2097 sbiw r28,0 51 002c 01F4 brne .L8 52 002e EC01 movw r28,r24 53 .L8: 54 0030 B983 std Y+1,r27 55 0032 A883 st Y,r26 56 0034 CF01 movw r24,r30 57 /* epilogue start */ GAS LISTING /tmp/ccP0Ti1y.s page 2 58 0036 DF91 pop r29 59 0038 CF91 pop r28 60 003a 0C94 0000 jmp free 61 .L2: 62 /* epilogue start */ 63 003e DF91 pop r29 64 0040 CF91 pop r28 65 0042 0895 ret 66 .size LiLiRemoveNode, .-LiLiRemoveNode 67 .section .text.LiLiInsertItemAfterNode,"ax",@progbits 68 .global LiLiInsertItemAfterNode 69 .type LiLiInsertItemAfterNode, @function 70 LiLiInsertItemAfterNode: 71 0000 CF92 push r12 72 0002 DF92 push r13 73 0004 EF92 push r14 74 0006 FF92 push r15 75 0008 0F93 push r16 76 000a 1F93 push r17 77 000c CF93 push r28 78 000e DF93 push r29 79 0010 1F92 push __zero_reg__ 80 0012 1F92 push __zero_reg__ 81 0014 CDB7 in r28,__SP_L__ 82 0016 DEB7 in r29,__SP_H__ 83 /* prologue: function */ 84 /* frame size = 2 */ 85 /* stack size = 10 */ 86 .L__stack_usage = 10 87 0018 8C01 movw r16,r24 88 001a 7B01 movw r14,r22 89 001c 86E0 ldi r24,lo8(6) 90 001e 90E0 ldi r25,0 91 0020 4983 std Y+1,r20 92 0022 5A83 std Y+2,r21 93 0024 0E94 0000 call malloc 94 0028 6C01 movw r12,r24 95 002a 4981 ldd r20,Y+1 96 002c 5A81 ldd r21,Y+2 97 002e 892B or r24,r25 98 0030 01F0 breq .L12 99 0032 D801 movw r26,r16 100 0034 1596 adiw r26,5 101 0036 ED91 ld r30,X+ 102 0038 FC91 ld r31,X 103 003a 1697 sbiw r26,5+1 104 003c CA01 movw r24,r20 105 003e 3097 sbiw r30,0 106 0040 01F0 breq .L13 107 0042 1995 eicall 108 .L13: 109 0044 F601 movw r30,r12 110 0046 8483 std Z+4,r24 111 0048 9583 std Z+5,r25 112 004a E114 cp r14,__zero_reg__ 113 004c F104 cpc r15,__zero_reg__ 114 004e 01F0 breq .L14 GAS LISTING /tmp/ccP0Ti1y.s page 3 115 0050 D701 movw r26,r14 116 0052 ED91 ld r30,X+ 117 0054 FC91 ld r31,X 118 0056 D601 movw r26,r12 119 0058 1196 adiw r26,1 120 005a FC93 st X,r31 121 005c EE93 st -X,r30 122 005e 1396 adiw r26,2+1 123 0060 FC92 st X,r15 124 0062 EE92 st -X,r14 125 0064 1297 sbiw r26,2 126 0066 D701 movw r26,r14 127 0068 CD92 st X+,r12 128 006a DC92 st X,r13 129 006c 3097 sbiw r30,0 130 006e 01F0 breq .L15 131 0070 D382 std Z+3,r13 132 0072 C282 std Z+2,r12 133 .L15: 134 0074 F801 movw r30,r16 135 0076 8281 ldd r24,Z+2 136 0078 9381 ldd r25,Z+3 137 007a E816 cp r14,r24 138 007c F906 cpc r15,r25 139 007e 01F4 brne .L12 140 0080 D382 std Z+3,r13 141 0082 C282 std Z+2,r12 142 0084 00C0 rjmp .L12 143 .L14: 144 0086 D801 movw r26,r16 145 0088 1196 adiw r26,1 146 008a DC92 st X,r13 147 008c CE92 st -X,r12 148 008e 1396 adiw r26,2+1 149 0090 DC92 st X,r13 150 0092 CE92 st -X,r12 151 0094 1297 sbiw r26,2 152 0096 F601 movw r30,r12 153 0098 1182 std Z+1,__zero_reg__ 154 009a 1082 st Z,__zero_reg__ 155 009c 1382 std Z+3,__zero_reg__ 156 009e 1282 std Z+2,__zero_reg__ 157 .L12: 158 00a0 C601 movw r24,r12 159 /* epilogue start */ 160 00a2 0F90 pop __tmp_reg__ 161 00a4 0F90 pop __tmp_reg__ 162 00a6 DF91 pop r29 163 00a8 CF91 pop r28 164 00aa 1F91 pop r17 165 00ac 0F91 pop r16 166 00ae FF90 pop r15 167 00b0 EF90 pop r14 168 00b2 DF90 pop r13 169 00b4 CF90 pop r12 170 00b6 0895 ret 171 .size LiLiInsertItemAfterNode, .-LiLiInsertItemAfterNode GAS LISTING /tmp/ccP0Ti1y.s page 4 172 .section .text.LiLiInsertItemBeforeNode,"ax",@progbits 173 .global LiLiInsertItemBeforeNode 174 .type LiLiInsertItemBeforeNode, @function 175 LiLiInsertItemBeforeNode: 176 0000 CF92 push r12 177 0002 DF92 push r13 178 0004 EF92 push r14 179 0006 FF92 push r15 180 0008 0F93 push r16 181 000a 1F93 push r17 182 000c CF93 push r28 183 000e DF93 push r29 184 0010 1F92 push __zero_reg__ 185 0012 1F92 push __zero_reg__ 186 0014 CDB7 in r28,__SP_L__ 187 0016 DEB7 in r29,__SP_H__ 188 /* prologue: function */ 189 /* frame size = 2 */ 190 /* stack size = 10 */ 191 .L__stack_usage = 10 192 0018 8C01 movw r16,r24 193 001a 7B01 movw r14,r22 194 001c 86E0 ldi r24,lo8(6) 195 001e 90E0 ldi r25,0 196 0020 4983 std Y+1,r20 197 0022 5A83 std Y+2,r21 198 0024 0E94 0000 call malloc 199 0028 6C01 movw r12,r24 200 002a 4981 ldd r20,Y+1 201 002c 5A81 ldd r21,Y+2 202 002e 892B or r24,r25 203 0030 01F0 breq .L23 204 0032 D801 movw r26,r16 205 0034 1596 adiw r26,5 206 0036 ED91 ld r30,X+ 207 0038 FC91 ld r31,X 208 003a 1697 sbiw r26,5+1 209 003c CA01 movw r24,r20 210 003e 3097 sbiw r30,0 211 0040 01F0 breq .L24 212 0042 1995 eicall 213 .L24: 214 0044 F601 movw r30,r12 215 0046 8483 std Z+4,r24 216 0048 9583 std Z+5,r25 217 004a E114 cp r14,__zero_reg__ 218 004c F104 cpc r15,__zero_reg__ 219 004e 01F0 breq .L25 220 0050 F182 std Z+1,r15 221 0052 E082 st Z,r14 222 0054 D701 movw r26,r14 223 0056 1296 adiw r26,2 224 0058 ED91 ld r30,X+ 225 005a FC91 ld r31,X 226 005c 1397 sbiw r26,2+1 227 005e D601 movw r26,r12 228 0060 1396 adiw r26,2+1 GAS LISTING /tmp/ccP0Ti1y.s page 5 229 0062 FC93 st X,r31 230 0064 EE93 st -X,r30 231 0066 1297 sbiw r26,2 232 0068 3097 sbiw r30,0 233 006a 01F0 breq .L26 234 006c D182 std Z+1,r13 235 006e C082 st Z,r12 236 .L26: 237 0070 F701 movw r30,r14 238 0072 D382 std Z+3,r13 239 0074 C282 std Z+2,r12 240 0076 D801 movw r26,r16 241 0078 8D91 ld r24,X+ 242 007a 9C91 ld r25,X 243 007c 1197 sbiw r26,1 244 007e E816 cp r14,r24 245 0080 F906 cpc r15,r25 246 0082 01F4 brne .L23 247 0084 CD92 st X+,r12 248 0086 DC92 st X,r13 249 0088 00C0 rjmp .L23 250 .L25: 251 008a F801 movw r30,r16 252 008c D182 std Z+1,r13 253 008e C082 st Z,r12 254 0090 D382 std Z+3,r13 255 0092 C282 std Z+2,r12 256 0094 D601 movw r26,r12 257 0096 1196 adiw r26,1 258 0098 1C92 st X,__zero_reg__ 259 009a 1E92 st -X,__zero_reg__ 260 009c 1396 adiw r26,2+1 261 009e 1C92 st X,__zero_reg__ 262 00a0 1E92 st -X,__zero_reg__ 263 00a2 1297 sbiw r26,2 264 .L23: 265 00a4 C601 movw r24,r12 266 /* epilogue start */ 267 00a6 0F90 pop __tmp_reg__ 268 00a8 0F90 pop __tmp_reg__ 269 00aa DF91 pop r29 270 00ac CF91 pop r28 271 00ae 1F91 pop r17 272 00b0 0F91 pop r16 273 00b2 FF90 pop r15 274 00b4 EF90 pop r14 275 00b6 DF90 pop r13 276 00b8 CF90 pop r12 277 00ba 0895 ret 278 .size LiLiInsertItemBeforeNode, .-LiLiInsertItemBeforeNode 279 .section .text.LiLiCreate,"ax",@progbits 280 .global LiLiCreate 281 .type LiLiCreate, @function 282 LiLiCreate: 283 0000 CF92 push r12 284 0002 DF92 push r13 285 0004 EF92 push r14 GAS LISTING /tmp/ccP0Ti1y.s page 6 286 0006 FF92 push r15 287 0008 1F93 push r17 288 000a CF93 push r28 289 000c DF93 push r29 290 /* prologue: function */ 291 /* frame size = 0 */ 292 /* stack size = 7 */ 293 .L__stack_usage = 7 294 000e 182F mov r17,r24 295 0010 6B01 movw r12,r22 296 0012 7A01 movw r14,r20 297 0014 E901 movw r28,r18 298 0016 6BE0 ldi r22,lo8(11) 299 0018 70E0 ldi r23,0 300 001a 81E0 ldi r24,lo8(1) 301 001c 90E0 ldi r25,0 302 001e 0E94 0000 call calloc 303 0022 FC01 movw r30,r24 304 0024 892B or r24,r25 305 0026 01F0 breq .L33 306 0028 D682 std Z+6,r13 307 002a C582 std Z+5,r12 308 002c F086 std Z+8,r15 309 002e E782 std Z+7,r14 310 0030 2097 sbiw r28,0 311 0032 01F0 breq .L34 312 0034 D287 std Z+10,r29 313 0036 C187 std Z+9,r28 314 0038 00C0 rjmp .L35 315 .L34: 316 003a 80E0 ldi r24,lo8(gs(LiLiDefaultItemCompare)) 317 003c 90E0 ldi r25,hi8(gs(LiLiDefaultItemCompare)) 318 003e 9287 std Z+10,r25 319 0040 8187 std Z+9,r24 320 .L35: 321 0042 1483 std Z+4,r17 322 .L33: 323 0044 CF01 movw r24,r30 324 /* epilogue start */ 325 0046 DF91 pop r29 326 0048 CF91 pop r28 327 004a 1F91 pop r17 328 004c FF90 pop r15 329 004e EF90 pop r14 330 0050 DF90 pop r13 331 0052 CF90 pop r12 332 0054 0895 ret 333 .size LiLiCreate, .-LiLiCreate 334 .section .text.LiLiClean,"ax",@progbits 335 .global LiLiClean 336 .type LiLiClean, @function 337 LiLiClean: 338 0000 0F93 push r16 339 0002 1F93 push r17 340 0004 CF93 push r28 341 0006 DF93 push r29 342 /* prologue: function */ GAS LISTING /tmp/ccP0Ti1y.s page 7 343 /* frame size = 0 */ 344 /* stack size = 4 */ 345 .L__stack_usage = 4 346 0008 EC01 movw r28,r24 347 000a 8881 ld r24,Y 348 000c 9981 ldd r25,Y+1 349 000e 892B or r24,r25 350 0010 01F0 breq .L39 351 .L46: 352 0012 0881 ld r16,Y 353 0014 1981 ldd r17,Y+1 354 0016 0115 cp r16,__zero_reg__ 355 0018 1105 cpc r17,__zero_reg__ 356 001a 01F0 breq .L48 357 001c D801 movw r26,r16 358 001e 8D91 ld r24,X+ 359 0020 9C91 ld r25,X 360 0022 1197 sbiw r26,1 361 0024 9983 std Y+1,r25 362 0026 8883 st Y,r24 363 0028 EF81 ldd r30,Y+7 364 002a F885 ldd r31,Y+8 365 002c 3097 sbiw r30,0 366 002e 01F0 breq .L42 367 0030 1496 adiw r26,4 368 0032 8D91 ld r24,X+ 369 0034 9C91 ld r25,X 370 0036 1597 sbiw r26,4+1 371 0038 1995 eicall 372 .L42: 373 003a C801 movw r24,r16 374 003c 0E94 0000 call free 375 0040 00C0 rjmp .L46 376 .L48: 377 0042 1B82 std Y+3,__zero_reg__ 378 0044 1A82 std Y+2,__zero_reg__ 379 .L39: 380 /* epilogue start */ 381 0046 DF91 pop r29 382 0048 CF91 pop r28 383 004a 1F91 pop r17 384 004c 0F91 pop r16 385 004e 0895 ret 386 .size LiLiClean, .-LiLiClean 387 .section .text.LiLiDestroy,"ax",@progbits 388 .global LiLiDestroy 389 .type LiLiDestroy, @function 390 LiLiDestroy: 391 0000 CF93 push r28 392 0002 DF93 push r29 393 /* prologue: function */ 394 /* frame size = 0 */ 395 /* stack size = 2 */ 396 .L__stack_usage = 2 397 0004 EC01 movw r28,r24 398 0006 0E94 0000 call LiLiClean 399 000a CE01 movw r24,r28 GAS LISTING /tmp/ccP0Ti1y.s page 8 400 /* epilogue start */ 401 000c DF91 pop r29 402 000e CF91 pop r28 403 0010 0C94 0000 jmp free 404 .size LiLiDestroy, .-LiLiDestroy 405 .ident "GCC: (GNU) 5.3.0" GAS LISTING /tmp/ccP0Ti1y.s page 9 DEFINED SYMBOLS *ABS*:0000000000000000 lili.c /tmp/ccP0Ti1y.s:2 *ABS*:000000000000003e __SP_H__ /tmp/ccP0Ti1y.s:3 *ABS*:000000000000003d __SP_L__ /tmp/ccP0Ti1y.s:4 *ABS*:000000000000003f __SREG__ /tmp/ccP0Ti1y.s:5 *ABS*:000000000000003b __RAMPZ__ /tmp/ccP0Ti1y.s:6 *ABS*:0000000000000000 __tmp_reg__ /tmp/ccP0Ti1y.s:7 *ABS*:0000000000000001 __zero_reg__ /tmp/ccP0Ti1y.s:10 .text.LiLiDefaultItemCompare:0000000000000000 LiLiDefaultItemCompare /tmp/ccP0Ti1y.s:22 .text.LiLiRemoveNode:0000000000000000 LiLiRemoveNode /tmp/ccP0Ti1y.s:70 .text.LiLiInsertItemAfterNode:0000000000000000 LiLiInsertItemAfterNode /tmp/ccP0Ti1y.s:175 .text.LiLiInsertItemBeforeNode:0000000000000000 LiLiInsertItemBeforeNode /tmp/ccP0Ti1y.s:282 .text.LiLiCreate:0000000000000000 LiLiCreate /tmp/ccP0Ti1y.s:337 .text.LiLiClean:0000000000000000 LiLiClean /tmp/ccP0Ti1y.s:390 .text.LiLiDestroy:0000000000000000 LiLiDestroy UNDEFINED SYMBOLS free malloc calloc