GAS LISTING /tmp/ccQWLeTo.s page 1 1 .file "spibus0gpio.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.GpioSpiBus0Transfer,"ax",@progbits 9 .global GpioSpiBus0Transfer 10 .type GpioSpiBus0Transfer, @function 11 GpioSpiBus0Transfer: 12 /* prologue: function */ 13 /* frame size = 0 */ 14 /* stack size = 0 */ 15 .L__stack_usage = 0 16 0000 80E0 ldi r24,0 17 0002 90E0 ldi r25,0 18 0004 0895 ret 19 .size GpioSpiBus0Transfer, .-GpioSpiBus0Transfer 20 .section .text.GpioSpiBus0Select,"ax",@progbits 21 .global GpioSpiBus0Select 22 .type GpioSpiBus0Select, @function 23 GpioSpiBus0Select: 24 0000 0F93 push r16 25 0002 1F93 push r17 26 0004 CF93 push r28 27 0006 DF93 push r29 28 /* prologue: function */ 29 /* frame size = 0 */ 30 /* stack size = 4 */ 31 .L__stack_usage = 4 32 0008 EC01 movw r28,r24 33 000a 8881 ld r24,Y 34 000c 9981 ldd r25,Y+1 35 000e 0E94 0000 call NutEventWait 36 0012 8C01 movw r16,r24 37 0014 892B or r24,r25 38 0016 01F0 breq .L3 39 0018 85E0 ldi r24,lo8(5) 40 001a 90E0 ldi r25,0 41 001c 9093 0000 sts errno+1,r25 42 0020 8093 0000 sts errno,r24 43 0024 00C0 rjmp .L4 44 .L3: 45 0026 8885 ldd r24,Y+8 46 0028 9985 ldd r25,Y+9 47 002a 97FF sbrs r25,7 48 002c 00C0 rjmp .L5 49 002e CE01 movw r24,r28 50 0030 0E94 0000 call GpioSpiSetup 51 .L5: 52 0034 8B85 ldd r24,Y+11 53 0036 8823 tst r24 54 0038 01F0 breq .L4 55 003a 85E0 ldi r24,lo8(5) 56 003c 90E0 ldi r25,0 57 003e 9093 0000 sts errno+1,r25 GAS LISTING /tmp/ccQWLeTo.s page 2 58 0042 8093 0000 sts errno,r24 59 0046 8881 ld r24,Y 60 0048 9981 ldd r25,Y+1 61 004a 0E94 0000 call NutEventPost 62 004e 0FEF ldi r16,lo8(-1) 63 0050 1FEF ldi r17,lo8(-1) 64 .L4: 65 0052 C801 movw r24,r16 66 /* epilogue start */ 67 0054 DF91 pop r29 68 0056 CF91 pop r28 69 0058 1F91 pop r17 70 005a 0F91 pop r16 71 005c 0895 ret 72 .size GpioSpiBus0Select, .-GpioSpiBus0Select 73 .section .text.GpioSpiBus0NodeInit,"ax",@progbits 74 .global GpioSpiBus0NodeInit 75 .type GpioSpiBus0NodeInit, @function 76 GpioSpiBus0NodeInit: 77 /* prologue: function */ 78 /* frame size = 0 */ 79 /* stack size = 0 */ 80 .L__stack_usage = 0 81 0000 FC01 movw r30,r24 82 0002 2385 ldd r18,Z+11 83 0004 2223 tst r18 84 0006 01F0 breq .L15 85 0008 25E0 ldi r18,lo8(5) 86 000a 30E0 ldi r19,0 87 000c 3093 0000 sts errno+1,r19 88 0010 2093 0000 sts errno,r18 89 0014 20E0 ldi r18,0 90 0016 30E0 ldi r19,0 91 0018 00C0 rjmp .L13 92 .L15: 93 001a 20E0 ldi r18,lo8(gspi_reg0) 94 001c 30E0 ldi r19,hi8(gspi_reg0) 95 .L13: 96 001e FC01 movw r30,r24 97 0020 3383 std Z+3,r19 98 0022 2283 std Z+2,r18 99 0024 232B or r18,r19 100 0026 01F0 breq .L14 101 0028 0C94 0000 jmp GpioSpiSetup 102 .L14: 103 002c 8FEF ldi r24,lo8(-1) 104 002e 9FEF ldi r25,lo8(-1) 105 0030 0895 ret 106 .size GpioSpiBus0NodeInit, .-GpioSpiBus0NodeInit 107 .section .text.GpioSpiBus0Deselect,"ax",@progbits 108 .global GpioSpiBus0Deselect 109 .type GpioSpiBus0Deselect, @function 110 GpioSpiBus0Deselect: 111 /* prologue: function */ 112 /* frame size = 0 */ 113 /* stack size = 0 */ 114 .L__stack_usage = 0 GAS LISTING /tmp/ccQWLeTo.s page 3 115 0000 FC01 movw r30,r24 116 0002 2385 ldd r18,Z+11 117 0004 2223 tst r18 118 0006 01F0 breq .L18 119 0008 25E0 ldi r18,lo8(5) 120 000a 30E0 ldi r19,0 121 000c 3093 0000 sts errno+1,r19 122 0010 2093 0000 sts errno,r18 123 .L18: 124 0014 FC01 movw r30,r24 125 0016 8081 ld r24,Z 126 0018 9181 ldd r25,Z+1 127 001a 0E94 0000 call NutEventPost 128 001e 80E0 ldi r24,0 129 0020 90E0 ldi r25,0 130 0022 0895 ret 131 .size GpioSpiBus0Deselect, .-GpioSpiBus0Deselect 132 .global spiBus0Gpio 133 .data 134 .type spiBus0Gpio, @object 135 .size spiBus0Gpio, 24 136 spiBus0Gpio: 137 0000 0000 .word 0 138 0002 0000 .word 0 139 0004 0000 .word 0 140 0006 0000 .word 0 141 0008 0000 .word gs(GpioSpiBus0NodeInit) 142 000a 0000 .word gs(GpioSpiBus0Select) 143 000c 0000 .word gs(GpioSpiBus0Deselect) 144 000e 0000 .word gs(GpioSpiBus0Transfer) 145 0010 0000 .word gs(NutSpiBusWait) 146 0012 0000 .word gs(NutSpiBusSetMode) 147 0014 0000 .word gs(GpioSpiBusSetRate) 148 0016 0000 .word gs(NutSpiBusSetBits) 149 .local gspi_reg0 150 .comm gspi_reg0,4,1 151 .ident "GCC: (GNU) 5.3.0" 152 .global __do_copy_data 153 .global __do_clear_bss GAS LISTING /tmp/ccQWLeTo.s page 4 DEFINED SYMBOLS *ABS*:0000000000000000 spibus0gpio.c /tmp/ccQWLeTo.s:2 *ABS*:000000000000003e __SP_H__ /tmp/ccQWLeTo.s:3 *ABS*:000000000000003d __SP_L__ /tmp/ccQWLeTo.s:4 *ABS*:000000000000003f __SREG__ /tmp/ccQWLeTo.s:5 *ABS*:000000000000003b __RAMPZ__ /tmp/ccQWLeTo.s:6 *ABS*:0000000000000000 __tmp_reg__ /tmp/ccQWLeTo.s:7 *ABS*:0000000000000001 __zero_reg__ /tmp/ccQWLeTo.s:11 .text.GpioSpiBus0Transfer:0000000000000000 GpioSpiBus0Transfer /tmp/ccQWLeTo.s:23 .text.GpioSpiBus0Select:0000000000000000 GpioSpiBus0Select /tmp/ccQWLeTo.s:76 .text.GpioSpiBus0NodeInit:0000000000000000 GpioSpiBus0NodeInit .bss:0000000000000000 gspi_reg0 /tmp/ccQWLeTo.s:110 .text.GpioSpiBus0Deselect:0000000000000000 GpioSpiBus0Deselect /tmp/ccQWLeTo.s:136 .data:0000000000000000 spiBus0Gpio UNDEFINED SYMBOLS NutEventWait errno GpioSpiSetup NutEventPost NutSpiBusWait NutSpiBusSetMode GpioSpiBusSetRate NutSpiBusSetBits __do_copy_data __do_clear_bss