Archive member included to satisfy reference by file (symbol) /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o (exit) /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) ./libs/led/led.o (__do_copy_data) /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) ./libs/uart/uart.o (__do_clear_bss) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) ./libs/uart/uart.o (__itoa_ncheck) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) (__utoa_common) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(strrev.o) /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) (strrev) Allocating common symbols Common symbol size file uartReceiveBuffer 0x21 ./libs/uart/uart.o Memory Configuration Name Origin Length Attributes text 0x0000000000000000 0x0000000000020000 xr data 0x0000000000800060 0x000000000000ffa0 rw !x eeprom 0x0000000000810000 0x0000000000010000 rw !x fuse 0x0000000000820000 0x0000000000000400 rw !x lock 0x0000000000830000 0x0000000000000400 rw !x signature 0x0000000000840000 0x0000000000000400 rw !x user_signatures 0x0000000000850000 0x0000000000000400 rw !x *default* 0x0000000000000000 0xffffffffffffffff Linker script and memory map Address of section .data set to 0x800100 LOAD /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o LOAD ./libs/uart/uart.o LOAD ./libs/led/led.o LOAD ./main.o START GROUP LOAD /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a LOAD /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libm.a LOAD /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a LOAD /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libatmega168p.a END GROUP 0x0000000000020000 __TEXT_REGION_LENGTH__ = DEFINED (__TEXT_REGION_LENGTH__)?__TEXT_REGION_LENGTH__:0x20000 0x000000000000ffa0 __DATA_REGION_LENGTH__ = DEFINED (__DATA_REGION_LENGTH__)?__DATA_REGION_LENGTH__:0xffa0 0x0000000000010000 __EEPROM_REGION_LENGTH__ = DEFINED (__EEPROM_REGION_LENGTH__)?__EEPROM_REGION_LENGTH__:0x10000 0x0000000000000400 __FUSE_REGION_LENGTH__ = DEFINED (__FUSE_REGION_LENGTH__)?__FUSE_REGION_LENGTH__:0x400 0x0000000000000400 __LOCK_REGION_LENGTH__ = DEFINED (__LOCK_REGION_LENGTH__)?__LOCK_REGION_LENGTH__:0x400 0x0000000000000400 __SIGNATURE_REGION_LENGTH__ = DEFINED (__SIGNATURE_REGION_LENGTH__)?__SIGNATURE_REGION_LENGTH__:0x400 0x0000000000000400 __USER_SIGNATURE_REGION_LENGTH__ = DEFINED (__USER_SIGNATURE_REGION_LENGTH__)?__USER_SIGNATURE_REGION_LENGTH__:0x400 .hash *(.hash) .dynsym *(.dynsym) .dynstr *(.dynstr) .gnu.version *(.gnu.version) .gnu.version_d *(.gnu.version_d) .gnu.version_r *(.gnu.version_r) .rel.init *(.rel.init) .rela.init *(.rela.init) .rel.text *(.rel.text) *(.rel.text.*) *(.rel.gnu.linkonce.t*) .rela.text *(.rela.text) *(.rela.text.*) *(.rela.gnu.linkonce.t*) .rel.fini *(.rel.fini) .rela.fini *(.rela.fini) .rel.rodata *(.rel.rodata) *(.rel.rodata.*) *(.rel.gnu.linkonce.r*) .rela.rodata *(.rela.rodata) *(.rela.rodata.*) *(.rela.gnu.linkonce.r*) .rel.data *(.rel.data) *(.rel.data.*) *(.rel.gnu.linkonce.d*) .rela.data *(.rela.data) *(.rela.data.*) *(.rela.gnu.linkonce.d*) .rel.ctors *(.rel.ctors) .rela.ctors *(.rela.ctors) .rel.dtors *(.rel.dtors) .rela.dtors *(.rela.dtors) .rel.got *(.rel.got) .rela.got *(.rela.got) .rel.bss *(.rel.bss) .rela.bss *(.rela.bss) .rel.plt *(.rel.plt) .rela.plt *(.rela.plt) .text 0x0000000000000000 0x36a *(.vectors) .vectors 0x0000000000000000 0x68 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o 0x0000000000000000 __vectors 0x0000000000000000 __vector_default *(.vectors) *(.progmem.gcc*) 0x0000000000000068 . = ALIGN (0x2) 0x0000000000000068 __trampolines_start = . *(.trampolines) .trampolines 0x0000000000000068 0x0 linker stubs *(.trampolines*) 0x0000000000000068 __trampolines_end = . *libprintf_flt.a:*(.progmem.data) *libc.a:*(.progmem.data) *(.progmem*) 0x0000000000000068 . = ALIGN (0x2) *(.jumptables) *(.jumptables*) *(.lowtext) *(.lowtext*) 0x0000000000000068 __ctors_start = . *(.ctors) 0x0000000000000068 __ctors_end = . 0x0000000000000068 __dtors_start = . *(.dtors) 0x0000000000000068 __dtors_end = . SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) .init0 0x0000000000000068 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o 0x0000000000000068 __init *(.init0) *(.init1) *(.init1) *(.init2) .init2 0x0000000000000068 0xc /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o *(.init2) *(.init3) *(.init3) *(.init4) .init4 0x0000000000000074 0x16 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) 0x0000000000000074 __do_copy_data .init4 0x000000000000008a 0x10 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) 0x000000000000008a __do_clear_bss *(.init4) *(.init5) *(.init5) *(.init6) *(.init6) *(.init7) *(.init7) *(.init8) *(.init8) *(.init9) .init9 0x000000000000009a 0x8 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o *(.init9) *(.text) .text 0x00000000000000a2 0x4 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o 0x00000000000000a2 __vector_22 0x00000000000000a2 __vector_1 0x00000000000000a2 __vector_24 0x00000000000000a2 __vector_12 0x00000000000000a2 __bad_interrupt 0x00000000000000a2 __vector_6 0x00000000000000a2 __vector_3 0x00000000000000a2 __vector_23 0x00000000000000a2 __vector_25 0x00000000000000a2 __vector_11 0x00000000000000a2 __vector_13 0x00000000000000a2 __vector_17 0x00000000000000a2 __vector_19 0x00000000000000a2 __vector_7 0x00000000000000a2 __vector_5 0x00000000000000a2 __vector_4 0x00000000000000a2 __vector_9 0x00000000000000a2 __vector_2 0x00000000000000a2 __vector_21 0x00000000000000a2 __vector_15 0x00000000000000a2 __vector_8 0x00000000000000a2 __vector_14 0x00000000000000a2 __vector_10 0x00000000000000a2 __vector_16 0x00000000000000a2 __vector_18 0x00000000000000a2 __vector_20 .text 0x00000000000000a6 0x0 ./libs/uart/uart.o .text 0x00000000000000a6 0x0 ./libs/led/led.o .text 0x00000000000000a6 0x0 ./main.o .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) .text 0x00000000000000a6 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(strrev.o) 0x00000000000000a6 . = ALIGN (0x2) *(.text.*) .text.uart_init 0x00000000000000a6 0x18 ./libs/uart/uart.o 0x00000000000000a6 uart_init .text.uart_sendChar 0x00000000000000be 0xe ./libs/uart/uart.o 0x00000000000000be uart_sendChar .text.uart_sendString 0x00000000000000cc 0x18 ./libs/uart/uart.o 0x00000000000000cc uart_sendString .text.uart_sendInt 0x00000000000000e4 0x3a ./libs/uart/uart.o 0x00000000000000e4 uart_sendInt .text.uart_sendBinary 0x000000000000011e 0x3a ./libs/uart/uart.o 0x000000000000011e uart_sendBinary .text.uart_sendHex 0x0000000000000158 0x3a ./libs/uart/uart.o 0x0000000000000158 uart_sendHex .text.uart_sendLF 0x0000000000000192 0x6 ./libs/uart/uart.o 0x0000000000000192 uart_sendLF .text.uart_receiveChar 0x0000000000000198 0xe ./libs/uart/uart.o 0x0000000000000198 uart_receiveChar .text.uart_receiveString 0x00000000000001a6 0x34 ./libs/uart/uart.o 0x00000000000001a6 uart_receiveString .text.led_initPorts 0x00000000000001da 0x24 ./libs/led/led.o 0x00000000000001da led_initPorts .text.led_config 0x00000000000001fe 0x6 ./libs/led/led.o 0x00000000000001fe led_config .text.led_init 0x0000000000000204 0x4 ./libs/led/led.o 0x0000000000000204 led_init .text.led_off 0x0000000000000208 0x3e ./libs/led/led.o 0x0000000000000208 led_off .text.led_on 0x0000000000000246 0x40 ./libs/led/led.o 0x0000000000000246 led_on .text.led_flash 0x0000000000000286 0x30 ./libs/led/led.o 0x0000000000000286 led_flash .text.disco 0x00000000000002b6 0x12 ./libs/led/led.o 0x00000000000002b6 disco .text.startup.main 0x00000000000002c8 0x34 ./main.o 0x00000000000002c8 main .text.libgcc.mul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.div 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.prologue 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.builtins 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.fmul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.fixed 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .text.libgcc.mul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.div 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.prologue 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.builtins 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.fmul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.fixed 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .text.libgcc.mul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc.div 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc.prologue 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc.builtins 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc.fmul 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.libgcc.fixed 0x00000000000002fc 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .text.avr-libc 0x00000000000002fc 0x16 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) 0x00000000000002fc __itoa_ncheck .text.avr-libc 0x0000000000000312 0x34 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) 0x0000000000000312 __utoa_ncheck 0x0000000000000314 __utoa_common .text.avr-libc 0x0000000000000346 0x20 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(strrev.o) 0x0000000000000346 strrev 0x0000000000000366 . = ALIGN (0x2) *(.fini9) .fini9 0x0000000000000366 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) 0x0000000000000366 exit 0x0000000000000366 _exit *(.fini9) *(.fini8) *(.fini8) *(.fini7) *(.fini7) *(.fini6) *(.fini6) *(.fini5) *(.fini5) *(.fini4) *(.fini4) *(.fini3) *(.fini3) *(.fini2) *(.fini2) *(.fini1) *(.fini1) *(.fini0) .fini0 0x0000000000000366 0x4 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) *(.fini0) 0x000000000000036a _etext = . .data 0x0000000000800100 0xa load address 0x000000000000036a 0x0000000000800100 PROVIDE (__data_start, .) *(.data) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o .data 0x0000000000800100 0x0 ./libs/uart/uart.o .data 0x0000000000800100 0x0 ./libs/led/led.o .data 0x0000000000800100 0x0 ./main.o .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) .data 0x0000000000800100 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(strrev.o) *(.data*) .data.led_flags 0x0000000000800100 0x1 ./libs/led/led.o 0x0000000000800100 led_flags *(.rodata) .rodata 0x0000000000800101 0x8 ./main.o *(.rodata*) *(.gnu.linkonce.d*) 0x000000000080010a . = ALIGN (0x2) *fill* 0x0000000000800109 0x1 0x000000000080010a _edata = . 0x000000000080010a PROVIDE (__data_end, .) .bss 0x000000000080010a 0x21 0x000000000080010a PROVIDE (__bss_start, .) *(.bss) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o .bss 0x000000000080010a 0x0 ./libs/uart/uart.o .bss 0x000000000080010a 0x0 ./libs/led/led.o .bss 0x000000000080010a 0x0 ./main.o .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_exit.o) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_copy_data.o) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/avr5/libgcc.a(_clear_bss.o) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(itoa_ncheck.o) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(utoa_ncheck.o) .bss 0x000000000080010a 0x0 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/libc.a(strrev.o) *(.bss*) *(COMMON) COMMON 0x000000000080010a 0x21 ./libs/uart/uart.o 0x000000000080010a uartReceiveBuffer 0x000000000080012b PROVIDE (__bss_end, .) 0x000000000000036a __data_load_start = LOADADDR (.data) 0x0000000000000374 __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x000000000080012b 0x0 [!provide] PROVIDE (__noinit_start, .) *(.noinit*) [!provide] PROVIDE (__noinit_end, .) 0x000000000080012b _end = . [!provide] PROVIDE (__heap_start, .) .eeprom 0x0000000000810000 0x0 *(.eeprom*) 0x0000000000810000 __eeprom_end = . .fuse *(.fuse) *(.lfuse) *(.hfuse) *(.efuse) .lock *(.lock*) .signature *(.signature*) .user_signatures *(.user_signatures*) .stab *(.stab) .stabstr *(.stabstr) .stab.excl *(.stab.excl) .stab.exclstr *(.stab.exclstr) .stab.index *(.stab.index) .stab.indexstr *(.stab.indexstr) .comment 0x0000000000000000 0x11 *(.comment) .comment 0x0000000000000000 0x11 ./libs/uart/uart.o 0x12 (size before relaxing) .comment 0x0000000000000011 0x12 ./libs/led/led.o .comment 0x0000000000000011 0x12 ./main.o .note.gnu.avr.deviceinfo 0x0000000000000000 0x40 .note.gnu.avr.deviceinfo 0x0000000000000000 0x40 /usr/lib/gcc/avr/4.9.2/../../../avr/lib/avr5/crtatmega168p.o .note.gnu.build-id *(.note.gnu.build-id) .debug *(.debug) .line *(.line) .debug_srcinfo *(.debug_srcinfo) .debug_sfnames *(.debug_sfnames) .debug_aranges *(.debug_aranges) .debug_pubnames *(.debug_pubnames) .debug_info *(.debug_info .gnu.linkonce.wi.*) .debug_abbrev *(.debug_abbrev) .debug_line *(.debug_line .debug_line.* .debug_line_end) .debug_frame *(.debug_frame) .debug_str *(.debug_str) .debug_loc *(.debug_loc) .debug_macinfo *(.debug_macinfo) .debug_weaknames *(.debug_weaknames) .debug_funcnames *(.debug_funcnames) .debug_typenames *(.debug_typenames) .debug_varnames *(.debug_varnames) .debug_pubtypes *(.debug_pubtypes) .debug_ranges *(.debug_ranges) .debug_macro *(.debug_macro) OUTPUT(avr-lib-uart.elf elf32-avr) LOAD linker stubs