This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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: rodata - out of bounds problem


On 4/4/06, suresh chandra <sureshchandra@engineer.com> wrote:
> Dear friends,
>
> I am using gcc compiler (2.95.3) and binutils (2.10.1)
> for a proprieatary processor(32bit RISC). I am facing alignment problems in rodata section.
> I am always encountering Address out of bounds
>
> I am providing the fragments of disassembly, linker script(full) and Map
>
> Please provide me pointers for eliminating the "out of bounds" problem
>
> following is the brief disassembly at the end of rodata section.
>
> ( .rodata section end )
> ------------------------
>
>  3fbe35c:       66 6c 61 73     sts      %r6, 0x3cd85b6
>  3fbe360:       68 5f 73 69     sts      %r54, 0x3a5cd78
>  3fbe364:       7a 65 00 00     adds     %r25, %r87, %r64
>  3fbe368:       Address 0x3fbe368 is out of bounds.
>
>
> Corresponding linker script
> ---------------------------
>
> SECTIONS
> {
>         . = 0x00000000;
>
>         . = ALIGN(4);
>         .text      :
>         {
>           cpu/start.o    (.text)
>           *(.text)
>         }
>
>         . = ALIGN(4);
>         .rodata : {*(.rodata)}
>
>         . = ALIGN(4);
>         .data  : { *(.data) }
>
>         . = ALIGN(4);
>         .got : { *(.got) }
>
>          _end = .;
>
>         . = ALIGN(4);
>         __bss_start = .;
>         .bss : { *(.bss) }
>         _end_bss = .;
> }
>
> Corresponding Map File (rodata part)
> ------------------------------------
>
>  *fill*         0x03fbdf6b        0x1
>  .rodata        0x03fbdf6c      0x19b board/cornet/cti100/libcti100.a(sdk.o)
>  *fill*         0x03fbe107        0x1
>  .rodata        0x03fbe108      0x18d board/cornet/cti100/libcti100.a(flash.o)
>  *fill*         0x03fbe295        0x3
>  .rodata        0x03fbe298       0x74 cpu/libabacus.a(cpu.o)
>  .rodata        0x03fbe30c       0x5e lib_anurag/libanurag.a(anurag_linux.o)
>                 0x03fbe36c                .=ALIGN(0x4)
> ( -- End of rodata section)
>
> .data           0x03fbe36c      0x9c4
>  *(.data)
>  .data          0x03fbe36c       0x74 cpu/abacus/start.o
>
>

Maybe you can also tell us what does gcc -v return and ld --help
return.  Please paste the complete text.

>
> Thanking you
>
> Suresh Chandra mannava.
>
> --
> ___________________________________________________
> Play 100s of games for FREE! http://games.mail.com/
>
>


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