This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problems with startup code symbols (Copious warnings)


Here is an example application which demonstrates the problem I experience.

test.elf = linked application for powerpc-eabi (rtems actually, but it
should make no difference).
test.link = link script used
test.map = map file generated by link
vectors.o = intermediary object of vectors.S
vectors.S = my test application which doesn't do much.

If I load this in GDB and try to debug i get the following errors,
repeatedly:

(Internal error: pc 0x0 in read in psymtab, but not in symtab.)
(Internal error: pc 0x100 in read in psymtab, but not in symtab.)

These are the commands I use to build it:

/opt/X-GCC/bin/powerpc-rtems-gcc -gdwarf-2 -nostdinc
-Wa,-mregnames,-mppc,-memb -w -Wall -Werror -msoft-float -mcpu=860 -O1
-foptimize-sibling-calls -mstring -mmultiple -funit-at-a-time
-ffunction-sections -fdata-sections -fcse-follow-jumps
-frerun-cse-after-loop -fcrossjumping -fdelete-null-pointer-checks
-fregmove -ftree-vrp -c -o vectors.o vectors.S -v
/opt/X-GCC/bin/powerpc-rtems-g++ -o test.elf -nodefaultlibs -static
-Wl,'--gc-sections' -Wl,'-nostdlib' -Wl,'-Map','test.map' -Wl,'--cref'
-Wl,'-dc' -Wl,'-dp' -Wl,'-u','__vectors' -Wl,'-N' -Wl,'-u','start'
-Wl,'-T','test.link' vectors.o -v

Here is the output from the build:

Using built-in specs.
Target: powerpc-rtems
Configured with: ../gcc-4.1.0/configure --host=i686-linux
--target=powerpc-rtems --prefix=/opt/X-GCC --enable-languages=c,c++
--with-newlib --disable-shared --enable-target-optspace --disable-libssp
--disable-nls --enable-version-specific-runtime-libs
--enable-threads=rtems --enable-newlib-multithread
--disable-newlib-supplied-syscalls --with-gnu-as --with-gnu-ld
Thread model: rtems
gcc version 4.1.0
 /opt/X-GCC/libexec/gcc/powerpc-rtems/4.1.0/cc1 -E -lang-asm -quiet
-nostdinc -v -Dmpc860 vectors.S -msoft-float -mcpu=860 -mstring
-mmultiple -Wall -Werror -w -foptimize-sibling-calls -funit-at-a-time
-ffunction-sections -fdata-sections -fcse-follow-jumps
-frerun-cse-after-loop -fcrossjumping -fdelete-null-pointer-checks
-fregmove -ftree-vrp -fworking-directory -O1 -o /home/linux/tmp/cceJbS47.s
#include "..." search starts here:
#include <...> search starts here:
End of search list.
 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/bin/as
--gdwarf2 -mppc -many -V -Qy -mregnames -mppc -memb -o vectors.o
/home/linux/tmp/cceJbS47.s
GNU assembler version 2.16.1 (powerpc-rtems) using BFD version 2.16.1
Using built-in specs.
Target: powerpc-rtems
Configured with: ../gcc-4.1.0/configure --host=i686-linux
--target=powerpc-rtems --prefix=/opt/X-GCC --enable-languages=c,c++
--with-newlib --disable-shared --enable-target-optspace --disable-libssp
--disable-nls --enable-version-specific-runtime-libs
--enable-threads=rtems --enable-newlib-multithread
--disable-newlib-supplied-syscalls --with-gnu-as --with-gnu-ld
Thread model: rtems
gcc version 4.1.0
 /opt/X-GCC/libexec/gcc/powerpc-rtems/4.1.0/collect2 -V -Qy -dn -Bstatic
-o test.elf
/opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
-L/opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0
-L/opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib
--gc-sections -nostdlib -Map test.map --cref -dc -dp -u __vectors -N -u
start -T test.link vectors.o
GNU ld version 2.16.1
  Supported emulations:
   elf32ppc

And finally GDB tells me the following if I start it with -v:

GNU gdb 6.4.0.20051202-cvs
Copyright 2005 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-linux-gnu
--target=powerpc-rtems".

Any help to resolve this warning would be greatly appreciated.

Steven J

Steven Johnson wrote:

>Jim Blandy wrote:
>
>  
>
>>Steven Johnson <sjohnson@sakuraindustries.com> writes:
>> 
>>
>>    
>>
>>>For ever and a day with GDB i've gotten the following warnings:
>>>
>>>warning: (Internal error: pc 0x00 in read in psymtab, but not in symtab.)
>>>
>>>I get it a lot.  I even patch GDB so it doesn't generate this warning,
>>>its so annoying.
>>>
>>>0x00 happens to be my programs entry point (its an embedded system). 
>>>And is in Assembler code.
>>>
>>>I've never liked patching GDB to get rid of this warning, so I invested
>>>some time on it and I've just discovered 2 ways to make it go away:
>>>
>>>1. If I compile my code with stabs+ debug info, I don't get the
>>>warning.  I would prefer to use Dwarf-2 however, as it seems to be the
>>>way of the future.
>>>
>>>2. If I add:
>>>
>>>.section .debug_info,"",@progbits as the first directive in my asm file,
>>>the warning also goes away.  But so does the code when I view it under GDB.
>>>
>>>Does anyone know any special incantation I need to make in my ASM file,
>>>to get rid of the warning, but still retain the symbolic information so
>>>I can see the code and symbols under GDB?
>>>
>>>The file is a ".S" file, it is assembler but i build it with GCC.  The
>>>CPU is a PowerPC, Motorola MPC862.
>>>   
>>>
>>>      
>>>
>>Can you post an executable for which GDB produces this message, and
>>let us know which target you've configured GDB for?
>>
>> 
>>
>>    
>>
>I can't post my app, because of a number of reasons.  I will try to
>coble together one I can post, that limits itself to this problem.
>
>GDB is configured for powerpc-eabi or powerpc-rtems (doesn't matter
>which, I've used both with the same results). 
>
>Will post an app tomorrow that does this, once I've made one.
>
>Steven J
>
>
>  
>

Attachment: test.elf
Description: Binary data

OUTPUT_FORMAT("elf32-powerpc", "elf32-powerpc",
              "elf32-powerpc")

OUTPUT_ARCH(powerpc);

ENTRY(BOOTSTRAP_ENTRY_FUNC);
EXTERN(BOOTSTRAP_ENTRY_FUNC);

MEMORY
{
  ram     (!rx) : org = 0x00000000, l = 16M
  stack   (!rx) : org = 0x01000000, l = 4
  dpram   (!rx) : org = 0xff000000, l = 16K
}

SECTIONS
{
  .text :
  {
    text.start = .;
    FILL(0xFFFF);
    vectors.start = .;

    *(.text.vectors)
    . = ALIGN(0x2000);
    vectors.end = .;

    *(.entry)
    *(.entry2)
    *(.rodata*)
    *(.eh_frame)
    *(.gnu.linkonce.r*)
    *(.rodata1)
    *(.gnu.linkonce.t.*)
    *(.descriptors)
    *(.gnu.warning)
    *(rom_ver)
    *(.text)
    *(.text*)

    . = ALIGN(0x10);
    _etext = .;

    __CTOR_LIST__ = .;
    LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
    KEEP(*(SORT(.ctors)))
    LONG(0)
    __CTOR_END__ = .;

    __DTOR_LIST__ = .;
    LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
    KEEP(*(SORT(.dtors)))
    LONG(0)
    __DTOR_END__ = .;

    *(.lit)
    *(.shdata)
    _init = .; KEEP(*(.init))
    _fini = .; KEEP(*(.fini))

    /*
     * Special FreeBSD sysctl sections.
     * Required for RTEMS BSD Network Stack.
     */
    . = ALIGN (16);
    __start_set_sysctl_set = .;
    *(set_sysctl_*);
    __stop_set_sysctl_set = ABSOLUTE(.);
    *(set_domain_*);
    *(set_pseudo_*);


    . = ALIGN(0x10);
    _endtest = .;
    text.end = .;
  } > ram

  /* R/W Data - Located in RAM Immediately after the program space. */
  .data :
  {
    FILL(0xFFFF);
    *(.data)
    *(.data*)
    *(.data1)
    *(.gnu.linkonce.d.*)
    PROVIDE (__SDATA_START__ = .);
    *(.sdata*)
    *(.gnu.linkonce.s.*)
  } > ram

  PROVIDE (__EXCEPT_START__ = .);
  .gcc_except_table :
  {
    *(.gcc_except_table)
  } > ram
  PROVIDE (__EXCEPT_END__ = .);

  __GOT_START__ = .;
  .got :
  {
    s.got = .;
    *(.got.plt)
    *(.got)
  } > ram
  __GOT_END__ = .;

  .got1 :
  {
    *(.got1)
  } > ram

  PROVIDE (__GOT2_START__ = .);
  PROVIDE (_GOT2_START_ = .);
  .got2 :
  {
    *(.got2)
  } > ram
  PROVIDE (__GOT2_END__ = .);
  PROVIDE (_GOT2_END_ = .);

  PROVIDE (__FIXUP_START__ = .);
  PROVIDE (_FIXUP_START_ = .);
  .fixup :
  {
    *(.fixup)
  } > ram
  PROVIDE (_FIXUP_END_ = .);
  PROVIDE (__FIXUP_END__ = .);

  PROVIDE (__SDATA2_START__ = .);
  .sdata2 :
  {
    *(.sdata2)
    *(.gnu.linkonce.s2.*)
  } > ram
  .sbss2 :
  {
    *(.sbss2)
    *(.gnu.linkonce.sb2.*)
  } > ram
  PROVIDE (__SBSS2_END__ = .);

  __SBSS_START__ = .;
  .bss :
  {
    bss.start = .;
    *(.bss)
    *(.bss.*)
    *(.sbss)
    *(.sbss.*)
    *(COMMON)
    . = ALIGN(4);
    bss.end = .;
  } > ram
  __SBSS_END__ = .;

  bss.size = bss.end - bss.start;
  text.size = text.end - text.start;
  PROVIDE(_end = bss.end);

  dpram :
  {
    m862   = . ;
    _m862  = . ;
    .     += (8 * 1024);
  } > dpram


  /* Stabs debugging sections.  */
  .stab 0 : { *(.stab) }
  .stabstr 0 : { *(.stabstr) }
  .stab.excl 0 : { *(.stab.excl) }
  .stab.exclstr 0 : { *(.stab.exclstr) }
  .stab.index 0 : { *(.stab.index) }
  .stab.indexstr 0 : { *(.stab.indexstr) }
  .comment 0 : { *(.comment) }

  /* DWARF debug sections.
     Symbols in the DWARF debugging sections are relative to the beginning
     of the section so we begin them at 0.  */
  /* DWARF 1 */
  .debug          0 : { *(.debug) }
  .line           0 : { *(.line) }

  /* GNU DWARF 1 extensions */
  .debug_srcinfo  0 : { *(.debug_srcinfo) }
  .debug_sfnames  0 : { *(.debug_sfnames) }

  /* DWARF 1.1 and DWARF 2 */
  .debug_aranges  0 : { *(.debug_aranges) }
  .debug_pubnames 0 : { *(.debug_pubnames) }

  /* DWARF 2 */
  .debug_info     0 : { *(.debug_info) }
  .debug_abbrev   0 : { *(.debug_abbrev) }
  .debug_line     0 : { *(.debug_line) }
  .debug_frame    0 : { *(.debug_frame) }
  .debug_str      0 : { *(.debug_str) }
  .debug_loc      0 : { *(.debug_loc) }
  .debug_macinfo  0 : { *(.debug_macinfo) }

  /* SGI/MIPS DWARF 2 extensions */
  .debug_weaknames 0 : { *(.debug_weaknames) }
  .debug_funcnames 0 : { *(.debug_funcnames) }
  .debug_typenames 0 : { *(.debug_typenames) }
  .debug_varnames  0 : { *(.debug_varnames) }
  /* These must appear regardless of  .  */

}
Allocating common symbols
Common symbol       size              file

__SBSS2_END__       0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__DTOR_END__        0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT2_START__      0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__init              0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__EXCEPT_START__    0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__CTOR_LIST__       0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__EXCEPT_END__      0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__FIXUP_START__     0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SBSS_END__        0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT_END__         0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT_START__       0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__CTOR_END__        0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__DTOR_LIST__       0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SDATA2_START__    0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__fini              0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__FIXUP_END__       0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT2_END__        0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SDATA_START__     0x4               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

Memory Configuration

Name             Origin             Length             Attributes
ram              0x00000000         0x01000000         !xr
stack            0x01000000         0x00000004         !xr
dpram            0xff000000         0x00004000         !xr
*default*        0x00000000         0xffffffff

Linker script and memory map

LOAD /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

.text           0x00000000     0x2010
                0x00000000                text.start = .
 FILL mask 0xffff
                0x00000000                vectors.start = .
 *(.text.vectors)
 .text.vectors  0x00000000      0x104 vectors.o
                0x00000100                RESET_ENTRY_FUNC
                0x00000000                BOOTSTRAP_ENTRY_FUNC
                0x00000000                vectors
                0x00002000                . = ALIGN (0x2000)
 *fill*         0x00000104     0x1efc ffff
                0x00002000                vectors.end = .
 *(.entry)
 *(.entry2)
 *(.rodata*)
 *(.eh_frame)
 *(.gnu.linkonce.r*)
 *(.rodata1)
 *(.gnu.linkonce.t.*)
 *(.descriptors)
 *(.gnu.warning)
 *(rom_ver)
 *(.text)
 *(.text*)
                0x00002000                . = ALIGN (0x10)
                0x00002000                _etext = .
                0x00002000                __CTOR_LIST__ = .
                0x00002000        0x4 LONG 0x0 (((__CTOR_END__ - __CTOR_LIST__) / 0x4) - 0x2)
 *(SORT(.ctors))
                0x00002004        0x4 LONG 0x0
                0x00002008                __CTOR_END__ = .
                0x00002008                __DTOR_LIST__ = .
                0x00002008        0x4 LONG 0x0 (((__DTOR_END__ - __DTOR_LIST__) / 0x4) - 0x2)
 *(SORT(.dtors))
                0x0000200c        0x4 LONG 0x0
                0x00002010                __DTOR_END__ = .
 *(.lit)
 *(.shdata)
                0x00002010                _init = .
 *(.init)
                0x00002010                _fini = .
 *(.fini)
                0x00002010                . = ALIGN (0x10)
                0x00002010                __start_set_sysctl_set = .
 *(set_sysctl_*)
                0x00002010                __stop_set_sysctl_set = <code 340> (.)
 *(set_domain_*)
 *(set_pseudo_*)
                0x00002010                . = ALIGN (0x10)
                0x00002010                _endtest = .
                0x00002010                text.end = .

.data           0x00002010        0x0
 FILL mask 0xffff
 *(.data)
 *(.data*)
 *(.data1)
 *(.gnu.linkonce.d.*)
                0x00002010                PROVIDE (__SDATA_START__, .)
 *(.sdata*)
 *(.gnu.linkonce.s.*)
                0x00002010                PROVIDE (__EXCEPT_START__, .)

.gcc_except_table
 *(.gcc_except_table)
                0x00002010                PROVIDE (__EXCEPT_END__, .)
                0x00002010                __GOT_START__ = .

.got            0x00002010        0x0
                0x00002010                s.got = .
 *(.got.plt)
 *(.got)
                0x00002010                __GOT_END__ = .

.got1
 *(.got1)
                0x00002010                PROVIDE (__GOT2_START__, .)
                0x00002010                PROVIDE (_GOT2_START_, .)

.got2
 *(.got2)
                0x00002010                PROVIDE (__GOT2_END__, .)
                0x00002010                PROVIDE (_GOT2_END_, .)
                0x00002010                PROVIDE (__FIXUP_START__, .)
                0x00002010                PROVIDE (_FIXUP_START_, .)

.fixup
 *(.fixup)
                0x00002010                PROVIDE (_FIXUP_END_, .)
                0x00002010                PROVIDE (__FIXUP_END__, .)
                0x00002010                PROVIDE (__SDATA2_START__, .)

.sdata2
 *(.sdata2)
 *(.gnu.linkonce.s2.*)

.sbss2
 *(.sbss2)
 *(.gnu.linkonce.sb2.*)
                0x00002010                PROVIDE (__SBSS2_END__, .)
                0x00002010                __SBSS_START__ = .

.bss            0x00002010       0x48
                0x00002010                bss.start = .
 *(.bss)
 *(.bss.*)
 *(.sbss)
 .sbss          0x00002010       0x48 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
                0x00002010                __SBSS2_END__
                0x00002018                __GOT2_START__
                0x0000201c                __init
                0x00002020                __EXCEPT_START__
                0x00002028                __EXCEPT_END__
                0x0000202c                __FIXUP_START__
                0x00002044                __SDATA2_START__
                0x00002048                __fini
                0x0000204c                __FIXUP_END__
                0x00002050                __GOT2_END__
                0x00002054                __SDATA_START__
 *(.sbss.*)
 *(COMMON)
                0x00002058                . = ALIGN (0x4)
                0x00002058                bss.end = .
                0x00002058                __SBSS_END__ = .
                0x00000048                bss.size = (bss.end - bss.start)
                0x00002010                text.size = (text.end - text.start)
                0x00002058                PROVIDE (_end, bss.end)

dpram           0xff000000     0x2000
                0xff000000                m862 = .
                0xff000000                _m862 = .
                0xff002000                . = (. + 0x2000)
 *fill*         0xff000000     0x2000 00

.stab
 *(.stab)

.stabstr
 *(.stabstr)

.stab.excl
 *(.stab.excl)

.stab.exclstr
 *(.stab.exclstr)

.stab.index
 *(.stab.index)

.stab.indexstr
 *(.stab.indexstr)

.comment        0x00000000       0x12
 *(.comment)
 .comment       0x00000000       0x12 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

.debug
 *(.debug)

.line
 *(.line)

.debug_srcinfo
 *(.debug_srcinfo)

.debug_sfnames
 *(.debug_sfnames)

.debug_aranges  0x00000000       0x40
 *(.debug_aranges)
 .debug_aranges
                0x00000000       0x20 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
 .debug_aranges
                0x00000020       0x20 vectors.o

.debug_pubnames
                0x00000000      0x3f5
 *(.debug_pubnames)
 .debug_pubnames
                0x00000000      0x3f5 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

.debug_info     0x00000000     0x1039
 *(.debug_info)
 .debug_info    0x00000000      0xfec /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
 .debug_info    0x00000fec       0x4d vectors.o

.debug_abbrev   0x00000000      0x1f6
 *(.debug_abbrev)
 .debug_abbrev  0x00000000      0x1e2 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
 .debug_abbrev  0x000001e2       0x14 vectors.o

.debug_line     0x00000000      0x15d
 *(.debug_line)
 .debug_line    0x00000000      0x122 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
 .debug_line    0x00000122       0x3b vectors.o

.debug_frame    0x00000000      0x260
 *(.debug_frame)
 .debug_frame   0x00000000      0x260 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

.debug_str      0x00000000      0x79e
 *(.debug_str)
 .debug_str     0x00000000      0x79e /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
                                0x7fe (size before relaxing)

.debug_loc      0x00000000      0x10a
 *(.debug_loc)
 .debug_loc     0x00000000      0x10a /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o

.debug_macinfo
 *(.debug_macinfo)

.debug_weaknames
 *(.debug_weaknames)

.debug_funcnames
 *(.debug_funcnames)

.debug_typenames
 *(.debug_typenames)

.debug_varnames
 *(.debug_varnames)
LOAD vectors.o
OUTPUT(test.elf elf32-powerpc)

Cross Reference Table

Symbol                                            File
BOOTSTRAP_ENTRY_FUNC                              vectors.o
RESET_ENTRY_FUNC                                  vectors.o
_SDA2_BASE_                                       vectors.o
_SDA_BASE_                                        vectors.o
__CTOR_END__                                      /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__CTOR_LIST__                                     /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__DTOR_END__                                      /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__DTOR_LIST__                                     /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__EXCEPT_END__                                    /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__EXCEPT_START__                                  /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__FIXUP_END__                                     /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__FIXUP_START__                                   /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT2_END__                                      /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT2_START__                                    /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT_END__                                       /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__GOT_START__                                     /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SBSS2_END__                                     /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SBSS_END__                                      /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SDATA2_START__                                  /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__SDATA_START__                                   /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__fini                                            /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
__init                                            /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_calloc_r                                         /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_close_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_fcntl_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_free_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_fstat_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_getpid_r                                         /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_kill_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_link_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_lseek_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_malloc_r                                         /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_open_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_read_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_realloc_r                                        /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_stat_r                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_times_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_unlink_r                                         /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
_write_r                                          /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
abort                                             /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
free                                              /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
isatty                                            /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
malloc                                            /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
raise                                             /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
realloc                                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_getspecific                             /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_key_create                              /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_key_delete                              /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_mutex_init                              /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_mutex_lock                              /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_mutex_trylock                           /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_mutex_unlock                            /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_once                                    /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_recursive_mutex_init                    /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_recursive_mutex_lock                    /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_recursive_mutex_trylock                 /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_recursive_mutex_unlock                  /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_gxx_setspecific                             /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
rtems_provides_crt0                               /opt/X-GCC/lib/gcc/powerpc-rtems/4.1.0/../../../../powerpc-rtems/lib/crt0.o
vectors                                           vectors.o

Attachment: vectors.o
Description: Binary data

/********************************************************************
 *  Vector Table
 *  Execution Starts Here. Must be Linked to the appropriate Location.
 *  Startup is absolute address 0x00000000.
 ********************************************************************/
  .section  ".text"
  .section  .text.vectors,"ax",@progbits

.globl vectors         // Base Label of Vector Table.

/********************************************************************/
/*      .section   .vectors*/

/*****************************
 * Vector Table Offsets
 *****************************/
#define vector_base    0x00000000 // Physical Vector Table base Address
#define begin_vector   0x00000    // Vector Address where execution begins. (Not Reset).

/*****************************
 * Standard PowerPC Vectors
 *****************************/
#define vector_SYSTEM_RESET 0x00100 // System reset.

/************************************************************
 * STANDARD POWERPC VECTORS
 ************************************************************/
.org   vector_base
vectors:

/************************************************************
 * BOOTSTRAP_ENTRY
 *
 * MACRO, defines standard Entry Point to run once the
 * Program has been loaded by the Bootstrap.
 *
 ************************************************************/
  .org  begin_vector+vector_base
.globl BOOTSTRAP_ENTRY_FUNC
BOOTSTRAP_ENTRY_FUNC:
  .globl RESET_ENTRY_FUNC
  .type BOOTSTRAP_ENTRY_FUNC, @function
  b   RESET_ENTRY_FUNC
BOOTSTRAP_ENTRY_FUNC_END:

/************************************************************
 * RESET_ENTRY
 *
 * MACRO, defines standard Entry Point to run as a reset of
 * the application.
 *
 ************************************************************/
  .org  vector_SYSTEM_RESET+vector_base
.globl RESET_ENTRY_FUNC
RESET_ENTRY_FUNC:
  b   RESET_ENTRY_FUNC
RESET_ENTRY_FUNC_END:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]