Archive member included because of file (symbol)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_mulsi3.o)
timer.o (__mulsi3)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodhi4.o)
buffer.o (__udivmodhi4)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodsi4.o)
rprintf.o (__udivmodsi4)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_divmodsi4.o)
timer.o (__divmodsi4)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
/usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o (exit)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
a2d.o (__do_copy_data)
/usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
a2d.o (__do_clear_bss)
Allocating common symbols
Common symbol size file
uartReadyTx 0x1 uart.o
Timer0Reg0 0x4 timer.o
uartRxBuffer 0x8 uart.o
TimerPauseReg 0x4 timer.o
Timer2Reg0 0x4 timer.o
uartBufferedTx 0x1 uart.o
a2dCompleteFlag 0x1 a2d.o
uartTxBuffer 0x8 uart.o
uartRxOverflow 0x2 uart.o
Memory Configuration
Name Origin Length Attributes
text 0x00000000 0x00002000 xr
data 0x00800060 0x0000ffa0 rw !x
eeprom 0x00810000 0x00010000 rw !x
fuse 0x00820000 0x00000400 rw !x
lock 0x00830000 0x00000400 rw !x
signature 0x00840000 0x00000400 rw !x
*default* 0x00000000 0xffffffff
Linker script and memory map
LOAD /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
LOAD a2d.o
LOAD a2dtest.o
LOAD buffer.o
LOAD rprintf.o
LOAD timer.o
LOAD uart.o
LOAD vt100.o
LOAD /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a
LOAD /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/libc.a
LOAD /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a
.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 0x00000000 0x107e
*(.vectors)
.vectors 0x00000000 0x26 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
0x00000000 __vectors
0x00000000 __vector_default
*(.vectors)
*(.progmem.gcc*)
*(.progmem*)
.progmem.data 0x00000026 0x11 rprintf.o
.progmem.data 0x00000037 0x1c timer.o
0x00000043 TimerRTCPrescaleFactor
0x00000037 TimerPrescaleFactor
.progmem.data 0x00000053 0x25 vt100.o
0x00000078 . = ALIGN (0x2)
0x00000078 __trampolines_start = .
*(.trampolines)
.trampolines 0x00000078 0x0 linker stubs
*(.trampolines*)
0x00000078 __trampolines_end = .
*(.jumptables)
*(.jumptables*)
*(.lowtext)
*(.lowtext*)
0x00000078 __ctors_start = .
*(.ctors)
0x00000078 __ctors_end = .
0x00000078 __dtors_start = .
*(.dtors)
0x00000078 __dtors_end = .
SORT(*)(.ctors)
SORT(*)(.dtors)
*(.init0)
.init0 0x00000078 0x0 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
0x00000078 __init
*(.init0)
*(.init1)
*(.init1)
*(.init2)
.init2 0x00000078 0xc /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
*(.init2)
*(.init3)
*(.init3)
*(.init4)
.init4 0x00000084 0x16 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
0x00000084 __do_copy_data
.init4 0x0000009a 0x10 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
0x0000009a __do_clear_bss
*(.init4)
*(.init5)
*(.init5)
*(.init6)
*(.init6)
*(.init7)
*(.init7)
*(.init8)
*(.init8)
*(.init9)
.init9 0x000000aa 0x4 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
*(.init9)
*(.text)
.text 0x000000ae 0x2 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
0x000000ae __vector_1
0x000000ae __vector_12
0x000000ae __bad_interrupt
0x000000ae __vector_17
0x000000ae __vector_2
0x000000ae __vector_15
0x000000ae __vector_10
0x000000ae __vector_16
0x000000ae __vector_18
.text 0x000000b0 0xae a2d.o
0x000000e4 a2dIsComplete
0x00000116 a2dConvert8bit
0x000000b0 a2dOff
0x000000b6 a2dSetPrescaler
0x000000ee a2dConvert10bit
0x00000142 a2dInit
0x000000c0 a2dSetReference
0x00000124 __vector_14
0x000000d2 a2dSetChannel
0x000000de a2dStartConvert
.text 0x0000015e 0x86 a2dtest.o
0x0000015e main
.text 0x000001e4 0x156 buffer.o
0x00000316 bufferIsNotFull
0x000001fe bufferGetFromFront
0x0000029e bufferGetAtIndex
0x0000025a bufferDumpFromFront
0x000001e4 bufferInit
0x000002c6 bufferAddToEnd
0x0000032c bufferFlush
.text 0x0000033a 0x3b2 rprintf.o
0x000005be rprintf1RamRom
0x0000040c rprintfu08
0x00000434 rprintfu32
0x00000368 rprintfStr
0x00000384 rprintfStrLen
0x000003d4 rprintfProgStr
0x0000041e rprintfu16
0x0000033a rprintfInit
0x00000344 rprintfChar
0x000003f2 rprintfCRLF
0x000003f8 rprintfu04
0x00000456 rprintfNum
.text 0x000006ec 0x5ea timer.o
0x000008f8 timer2GetOverflowCount
0x000007bc timerDetach
0x00000750 timer1SetPrescaler
0x0000098a timer1PWMBOff
0x00000790 timer2GetPrescaler
0x00000b24 __vector_6
0x000006ee timer0Init
0x0000097c timer1PWMAOff
0x0000099e timer1PWMBSet
0x00000c32 __vector_3
0x0000093a timer1PWMInitICR
0x00000764 timer0GetPrescaler
0x00000b7e __vector_7
0x000008d4 timer0GetOverflowCount
0x00000bd8 __vector_5
0x00000c8c timerInit
0x0000075a timer2SetPrescaler
0x00000960 timer1PWMAOn
0x00000746 timer0SetPrescaler
0x000006ec delay_us
0x00000aa4 __vector_4
0x000008c2 timer0ClearOverflowCount
0x000009a4 __vector_9
0x00000710 timer1Init
0x0000090a timer1PWMInit
0x0000096e timer1PWMBOn
0x00000724 timer2Init
0x00000a4a __vector_8
0x00000998 timer1PWMASet
0x000007a6 timerAttach
0x00000cb0 timer1PWMOff
0x0000077a timer1GetPrescaler
0x000008e6 timer2ClearOverflowCount
0x000007d2 timerPause
.text 0x00000cd6 0x24a uart.o
0x00000f02 uartSendTxBuffer
0x00000d1e uartSendByte
0x00000eb6 uartInitBuffers
0x00000e46 uartReceiveByte
0x00000dce uartAddToTxBuffer
0x00000d52 __vector_11
0x00000cd6 uartSetRxHandler
0x00000dda __vector_13
0x00000d30 uartFlushReceiveBuffer
0x00000ed4 uartInit
0x00000d3a uartReceiveBufferIsEmpty
0x00000ce0 uartSetBaudRate
0x00000d18 uartGetTxBuffer
0x00000e7c uartGetByte
0x00000d12 uartGetRxBuffer
.text 0x00000f20 0x7c vt100.o
0x00000f94 vt100Init
0x00000f6c vt100SetAttr
0x00000f4c vt100SetCursorMode
0x00000f20 vt100SetCursorPos
0x00000f8c vt100ClearScreen
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_mulsi3.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodhi4.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodsi4.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_divmodsi4.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
.text 0x00000f9c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
0x00000f9c . = ALIGN (0x2)
*(.text.*)
.text.libgcc 0x00000f9c 0x3e /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_mulsi3.o)
0x00000f9c __mulsi3
.text.libgcc 0x00000fda 0x28 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodhi4.o)
0x00000fda __udivmodhi4
.text.libgcc 0x00001002 0x44 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodsi4.o)
0x00001002 __udivmodsi4
.text.libgcc 0x00001046 0x36 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_divmodsi4.o)
0x00001046 __divmodsi4
.text.libgcc 0x0000107c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
.text.libgcc 0x0000107c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
.text.libgcc 0x0000107c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
0x0000107c . = ALIGN (0x2)
*(.fini9)
.fini9 0x0000107c 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
0x0000107c exit
0x0000107c _exit
*(.fini9)
*(.fini8)
*(.fini8)
*(.fini7)
*(.fini7)
*(.fini6)
*(.fini6)
*(.fini5)
*(.fini5)
*(.fini4)
*(.fini4)
*(.fini3)
*(.fini3)
*(.fini2)
*(.fini2)
*(.fini1)
*(.fini1)
*(.fini0)
.fini0 0x0000107c 0x2 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
*(.fini0)
0x0000107e _etext = .
.data 0x00800060 0x0 load address 0x0000107e
0x00800060 PROVIDE (__data_start, .)
*(.data)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
.data 0x00800060 0x0 a2d.o
.data 0x00800060 0x0 a2dtest.o
.data 0x00800060 0x0 buffer.o
.data 0x00800060 0x0 rprintf.o
.data 0x00800060 0x0 timer.o
.data 0x00800060 0x0 uart.o
.data 0x00800060 0x0 vt100.o
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_mulsi3.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodhi4.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodsi4.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_divmodsi4.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
.data 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
*(.data*)
*(.rodata)
*(.rodata*)
*(.gnu.linkonce.d*)
0x00800060 . = ALIGN (0x2)
0x00800060 _edata = .
0x00800060 PROVIDE (__data_end, .)
.bss 0x00800060 0x172 load address 0x0000107e
0x00800060 PROVIDE (__bss_start, .)
*(.bss)
.bss 0x00800060 0x0 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
.bss 0x00800060 0x0 a2d.o
.bss 0x00800060 0x0 a2dtest.o
.bss 0x00800060 0x0 buffer.o
.bss 0x00800060 0x2 rprintf.o
.bss 0x00800062 0xe timer.o
.bss 0x00800070 0x141 uart.o
.bss 0x008001b1 0x0 vt100.o
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_mulsi3.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodhi4.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_udivmodsi4.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_divmodsi4.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_exit.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_copy_data.o)
.bss 0x008001b1 0x0 /usr/lib/gcc/avr/4.2.2/avr4/libgcc.a(_clear_bss.o)
*(.bss*)
*(COMMON)
COMMON 0x008001b1 0x1 a2d.o
0x008001b1 a2dCompleteFlag
COMMON 0x008001b2 0xc timer.o
0x008001b2 Timer0Reg0
0x008001b6 TimerPauseReg
0x008001ba Timer2Reg0
COMMON 0x008001be 0x14 uart.o
0x008001be uartReadyTx
0x008001bf uartRxBuffer
0x008001c7 uartBufferedTx
0x008001c8 uartTxBuffer
0x008001d0 uartRxOverflow
0x008001d2 PROVIDE (__bss_end, .)
0x0000107e __data_load_start = LOADADDR (.data)
0x0000107e __data_load_end = (__data_load_start + SIZEOF (.data))
.noinit 0x008001d2 0x0
0x008001d2 PROVIDE (__noinit_start, .)
*(.noinit*)
0x008001d2 PROVIDE (__noinit_end, .)
0x008001d2 _end = .
0x008001d2 PROVIDE (__heap_start, .)
.eeprom 0x00810000 0x0
*(.eeprom*)
0x00810000 __eeprom_end = .
.fuse
*(.fuse)
*(.lfuse)
*(.hfuse)
*(.efuse)
.lock
*(.lock*)
.signature
*(.signature*)
.stab 0x00000000 0x39c0
*(.stab)
.stab 0x00000000 0x378 /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
.stab 0x00000378 0x7a4 a2d.o
0x7b0 (size before relaxing)
.stab 0x00000b1c 0x3c0 a2dtest.o
0x660 (size before relaxing)
.stab 0x00000edc 0x660 buffer.o
0x924 (size before relaxing)
.stab 0x0000153c 0x9c0 rprintf.o
0xcf0 (size before relaxing)
.stab 0x00001efc 0xf54 timer.o
0x129c (size before relaxing)
.stab 0x00002e50 0x834 uart.o
0xb04 (size before relaxing)
.stab 0x00003684 0x33c vt100.o
0x684 (size before relaxing)
.stabstr 0x00000000 0x1a9b
*(.stabstr)
.stabstr 0x00000000 0x1a9b /usr/lib/gcc/avr/4.2.2/../../../../avr/lib/avr4/crtm8.o
.stab.excl
*(.stab.excl)
.stab.exclstr
*(.stab.exclstr)
.stab.index
*(.stab.index)
.stab.indexstr
*(.stab.indexstr)
.comment
*(.comment)
.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_frame
*(.debug_frame)
.debug_str
*(.debug_str)
.debug_loc
*(.debug_loc)
.debug_macinfo
*(.debug_macinfo)
OUTPUT(gpsrl.out elf32-avr)
LOAD linker stubs