GAS LISTING /tmp/cchNQc7b.s page 1 1 .file "fgetc.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.fgetc,"ax",@progbits 9 .global fgetc 10 .type fgetc, @function 11 fgetc: 12 0000 0F93 push r16 13 0002 1F93 push r17 14 0004 CF93 push r28 15 0006 DF93 push r29 16 0008 1F92 push __zero_reg__ 17 000a CDB7 in r28,__SP_L__ 18 000c DEB7 in r29,__SP_H__ 19 /* prologue: function */ 20 /* frame size = 1 */ 21 /* stack size = 5 */ 22 .L__stack_usage = 5 23 000e 8C01 movw r16,r24 24 0010 FC01 movw r30,r24 25 0012 8481 ldd r24,Z+4 26 0014 83FF sbrs r24,3 27 0016 00C0 rjmp .L2 28 0018 877F andi r24,lo8(-9) 29 001a 8483 std Z+4,r24 30 001c 8581 ldd r24,Z+5 31 001e 9681 ldd r25,Z+6 32 0020 00C0 rjmp .L3 33 .L2: 34 0022 41E0 ldi r20,lo8(1) 35 0024 50E0 ldi r21,0 36 0026 BE01 movw r22,r28 37 0028 6F5F subi r22,-1 38 002a 7F4F sbci r23,-1 39 002c F801 movw r30,r16 40 002e 8081 ld r24,Z 41 0030 9181 ldd r25,Z+1 42 0032 0E94 0000 call _read 43 0036 9C01 movw r18,r24 44 0038 0197 sbiw r24,1 45 003a 01F0 breq .L4 46 003c F801 movw r30,r16 47 003e 9481 ldd r25,Z+4 48 0040 232B or r18,r19 49 0042 01F0 breq .L5 50 0044 9061 ori r25,lo8(16) 51 0046 00C0 rjmp .L6 52 .L5: 53 0048 9062 ori r25,lo8(32) 54 004a F801 movw r30,r16 55 .L6: 56 004c 9483 std Z+4,r25 57 004e 8FEF ldi r24,lo8(-1) GAS LISTING /tmp/cchNQc7b.s page 2 58 0050 9FEF ldi r25,lo8(-1) 59 0052 00C0 rjmp .L3 60 .L4: 61 0054 8981 ldd r24,Y+1 62 0056 90E0 ldi r25,0 63 .L3: 64 /* epilogue start */ 65 0058 0F90 pop __tmp_reg__ 66 005a DF91 pop r29 67 005c CF91 pop r28 68 005e 1F91 pop r17 69 0060 0F91 pop r16 70 0062 0895 ret 71 .size fgetc, .-fgetc 72 .ident "GCC: (GNU) 5.3.0" GAS LISTING /tmp/cchNQc7b.s page 3 DEFINED SYMBOLS *ABS*:0000000000000000 fgetc.c /tmp/cchNQc7b.s:2 *ABS*:000000000000003e __SP_H__ /tmp/cchNQc7b.s:3 *ABS*:000000000000003d __SP_L__ /tmp/cchNQc7b.s:4 *ABS*:000000000000003f __SREG__ /tmp/cchNQc7b.s:5 *ABS*:000000000000003b __RAMPZ__ /tmp/cchNQc7b.s:6 *ABS*:0000000000000000 __tmp_reg__ /tmp/cchNQc7b.s:7 *ABS*:0000000000000001 __zero_reg__ /tmp/cchNQc7b.s:11 .text.fgetc:0000000000000000 fgetc UNDEFINED SYMBOLS _read