This is the mail archive of the binutils@sources.redhat.com 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: 2.12 branch will be cut on Saturday


On Sun, Feb 10, 2002 at 10:59:25PM +0100, Jakub Jelinek wrote:
> On Sun, Feb 10, 2002 at 10:42:35PM +0100, Christian Jönsson wrote:
> > > FAIL: S-records with constructors
> > 
> > I agree with you. Still, the S-records is failing and perhaps that's a
> > binutils on sparc issue. Since we all heard you're the expert, :-), do
> > you think you perhaps could look into this specific failure?
> 
> Certainly not an expert on S-records (don't know about this binary format
> anything).
> Anyway, objdump -x diff of (ELF->srec objcopy, direct srec link) is:
>  Idx Name          Size      VMA               LMA               File off
> Algn
>    0 .sec1         0000020c  0000000000001000  0000000000001000  00000026 2**0
>                    CONTENTS, ALLOC, LOAD
> -  1 .sec2         0000001b  0000000000001210  0000000000001210  0000060c 2**0
> +  1 .sec2         00000020  0000000000001210  0000000000001210  0000060c 2**0
>                    CONTENTS, ALLOC, LOAD
> -  2 .sec3         0000000c  000000000001122c  000000000001122c  0000065e 2**0
> +  2 .sec3         0000000c  0000000000011230  0000000000011230  00000668 2**0
>                    CONTENTS, ALLOC, LOAD
> 
> where ELF link has the interesting sections:
>   [ 1] .text             PROGBITS        00001000 001000 00020c 00  AX  0 0 4
>   [ 2] .rodata           PROGBITS        00001210 001210 00001b 01  A   0 0 8
>   [ 3] .data             PROGBITS        0001122c 00122c 000004 00 WA   0 0 4
>   [ 4] .ctors            PROGBITS        00011230 001230 000004 00 WA   0 0 1
>   [ 5] .dtors            PROGBITS        00011234 001234 000004 00 WA   0 0 1
>   [ 6] .bss              NOBITS          00011238 001238 000058 00 WA   0 0 4
> 
> Contents of section .rodata:
>  1210 6175746f 6d617469 635f666f 6f000000  automatic_foo...
>  1220 73746174 69635f66 6f6f00             static_foo.
> 
> which is that in ELF a section size is not rounded up to its alignment, only
> next section start is rounded up to next section alignment.
> In srec, it looks like .rodata size is rounded up to its alignment.
> 
> 	Jakub

OK, well, here's the log file of "my" S-records falure:

Running /share1/gcc-dev/gcc/ld/testsuite/ld-srec/srec.exp ...
/share1/gcc-dev/gcc/objdir/gcc/xgcc -B/share1/gcc-dev/gcc/objdir/gcc/ -B/usr/local/sparc-linux/bin/ -B/usr/local/sparc-linux/lib/ -isystem /usr/local/sparc-linux/include -L/share1/gcc-dev/gcc/objdir/ld -B/share1/gcc-dev/gcc/objdir/ld/tmpdir/gas/ -I/share1/gcc-dev/gcc/ld/testsuite/ld-srec -g  -fPIC -c /share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr1.c -o tmpdir/sr1.o
/share1/gcc-dev/gcc/objdir/gcc/xgcc -B/share1/gcc-dev/gcc/objdir/gcc/ -B/usr/local/sparc-linux/bin/ -B/usr/local/sparc-linux/lib/ -isystem /usr/local/sparc-linux/include -L/share1/gcc-dev/gcc/objdir/ld -B/share1/gcc-dev/gcc/objdir/ld/tmpdir/gas/ -I/share1/gcc-dev/gcc/ld/testsuite/ld-srec -g  -fPIC -c /share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr2.c -o tmpdir/sr2.o
/share1/gcc-dev/gcc/objdir/ld/ld-new  -o tmpdir/sr1  -Ttext 0x1000 tmpdir/sr1.o tmpdir/sr2.o
/share1/gcc-dev/gcc/objdir/ld/ld-new  -o tmpdir/sr2.sr  -Ttext 0x1000 --oformat srec tmpdir/sr1.o tmpdir/sr2.o
tmpdir/sr1.o: In function `main':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr1.c:16: undefined reference to `_GLOBAL_OFFSET_TABLE_'
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr1.c:17: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr2.o: In function `fn1':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr2.c:9: undefined reference to `_GLOBAL_OFFSET_TABLE_'
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr2.c:10: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr2.o: In function `fn2':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr2.c:16: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr2.o:/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr2.c:17: more undefined references to `_GLOBAL_OFFSET_TABLE_' follow
FAIL: S-records
/share1/gcc-dev/gcc/objdir/gcc/g++ -B/share1/gcc-dev/gcc/objdir/gcc/ -nostdinc++ -nostdinc++ -I/share1/gcc-dev/gcc/objdir/sparc-linux/libstdc++-v3/include/sparc-linux -I/share1/gcc-dev/gcc/objdir/sparc-linux/libstdc++-v3/include -I/share1/gcc-dev/gcc/libstdc++-v3/libsupc++ -I/share1/gcc-dev/gcc/libstdc++-v3/libio -I/share1/gcc-dev/gcc/libstdc++-v3/include/backward -I/share1/gcc-dev/gcc/libstdc++-v3/testsuite -L/share1/gcc-dev/gcc/objdir/sparc-linux/libstdc++-v3/src -L/share1/gcc-dev/gcc/objdir/sparc-linux/libstdc++-v3/src/.libs -B/usr/local/sparc-linux/bin/ -B/usr/local/sparc-linux/lib/ -isystem /usr/local/sparc-linux/include -L/share1/gcc-dev/gcc/objdir/ld -g -O2 -fgnu-linker -fno-exceptions -B/share1/gcc-dev/gcc/objdir/ld/tmpdir/gas/ -I/share1/gcc-dev/gcc/ld/testsuite/ld-srec -g  -fPIC -c /share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc -o tmpdir/sr3.o
/share1/gcc-dev/gcc/objdir/ld/ld-new  -o tmpdir/sr1  -Ttext 0x1000 tmpdir/sr3.o
/share1/gcc-dev/gcc/objdir/ld/ld-new  -o tmpdir/sr2.sr  -Ttext 0x1000 --oformat srec tmpdir/sr3.o
tmpdir/sr3.o: In function `main':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:24: undefined reference to `_GLOBAL_OFFSET_TABLE_'
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:25: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr3.o: In function `Foo::init_foo()':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:87: undefined reference to `_GLOBAL_OFFSET_TABLE_'
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:88: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr3.o: In function `Foo::Foo()':
/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:92: undefined reference to `_GLOBAL_OFFSET_TABLE_'
tmpdir/sr3.o:/share1/gcc-dev/gcc/ld/testsuite/ld-srec/sr3.cc:93: more undefined references to `_GLOBAL_OFFSET_TABLE_' follow
FAIL: S-records with constructors
testcase /share1/gcc-dev/gcc/ld/testsuite/ld-srec/srec.exp completed in 8 seconds


(Now, a fun detail, cdtests fail using glibc-2.2.5 :-)


Cheers,

/ChJ


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