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: PATCH: Re: EH frame optimization bug


"H. J. Lu" <hjl@lucon.org> writes:

> On Wed, Oct 15, 2003 at 02:18:43PM +0100, James Troup wrote:
>> "H.J. Lu" <hjl@lucon.org> writes:
>> 
>> > 2003-10-03  H.J. Lu  <hongjiu.lu@intel.com>
>> > 
>> > 	* elf-eh-frame.c (_bfd_elf_write_section_eh_frame): Pad the
>> >	last CIE/FDE if needed.
>> 
>> This patch has regressed binutils on Linux/alpha.  After applying the
>> patch the following (previously PASS) ld tests FAIL:
>> 
>> +FAIL: vers26b2
>> +FAIL: vers26b3
>> +FAIL: vers27d3
>> +FAIL: vers27d5
>> +FAIL: weak hidden symbol DSO last
>> +FAIL: NOCROSSREFS 1
>> 
>
> Can you provide more info on that?

Since it's not crashing, not sure what more info you want?  I've
attached the relevant parts of ld.log for what it's worth.

>> This also breaks building of the kernel and other software.
>
> Can you verify if you back out just
>
> http://sources.redhat.com/ml/binutils/2003-10/msg00130.html
>
> everything works fine on Linux/alpha?

Yes.  Clean CVS trunk, back out the patch, testsuite regressions
disappear, kernel compiles etc.  Reapply the patch, testsuite
regresses, kernel fails to compile.

-- 
James

| gcc -L/home/troup/binutils/src/ld -S -fpic -g -O2 -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvers -g
|  -O2  -c /home/troup/binutils/src/ld/testsuite/ld-elfvers/vers26b.c -o tmpdir/vers26b2.s
| /home/troup/binutils/src/ld/../gas/as-new   -o tmpdir/vers26b2.o tmpdir/vers26b2.s
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/vers26b2.so --shared --no-undefined-version tmpdir/vers26b2.o  tmpdir/vers26a.so tmpdir/vers26b1.so
|  tmpdir/vers26a.o 
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value
| FAIL: vers26b2
| gcc -L/home/troup/binutils/src/ld -S  -g -O2 -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvers -g -O2 
|  -c /home/troup/binutils/src/ld/testsuite/ld-elfvers/vers26b.c -o tmpdir/vers26b3.s
| /home/troup/binutils/src/ld/../gas/as-new   -o tmpdir/vers26b3.o tmpdir/vers26b3.s
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/vers26b3.so --shared --no-undefined-version tmpdir/vers26b3.o  tmpdir/vers26a.so tmpdir/vers26b1.so
|  tmpdir/vers26a.o 
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value
| FAIL: vers26b3

| gcc -L/home/troup/binutils/src/ld -S  -g -O2 -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvers -g -O2 
|  -c /home/troup/binutils/src/ld/testsuite/ld-elfvers/vers27d3.c -o tmpdir/vers27d3.s
| /home/troup/binutils/src/ld/../gas/as-new   -o tmpdir/vers27d3.o tmpdir/vers27d3.s
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/vers27d3.so  tmpdir/vers27d3.o  tmpdir/vers27b.o tmpdir/vers27d2.so tmpdir/vers27d1.so 
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value
| FAIL: vers27d3

| gcc -L/home/troup/binutils/src/ld -S  -g -O2 -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvers -g -O2 
|  -c /home/troup/binutils/src/ld/testsuite/ld-elfvers/vers27d3.c -o tmpdir/vers27d5.s
| /home/troup/binutils/src/ld/../gas/as-new   -o tmpdir/vers27d5.o tmpdir/vers27d5.s
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/vers27d5.so  tmpdir/vers27d5.o  tmpdir/vers27d4.so tmpdir/vers27b.o tmpdir/vers27a.so 
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value
| FAIL: vers27d5

| gcc -L/home/troup/binutils/src/ld -g -g -O2 -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvsb -g -O2  -
| c /home/troup/binutils/src/ld/testsuite/ld-elfvsb/test.c -o tmpdir/test.o
| gcc -L/home/troup/binutils/src/ld -g -g -O2 -fpic -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-elfvsb -g 
| -O2  -c /home/troup/binutils/src/ld/testsuite/ld-elfvsb/sh3.c -o tmpdir/sh3.o
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/sh3.so -shared tmpdir/sh3.o
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/weak tmpdir/test.o tmpdir/sh3.o
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value

| gcc -L/home/troup/binutils/src/ld -B/home/troup/binutils/src/ld/tmpdir/gas/ -I/home/troup/binutils/src/ld/testsuite/ld-scripts -g -O2  -c /home/t
| roup/binutils/src/ld/testsuite/ld-scripts/cross2.c -o tmpdir/cross2.o
| /home/troup/binutils/src/ld/ld-new  -o tmpdir/cross1 -T /home/troup/binutils/src/ld/testsuite/ld-scripts/cross1.t tmpdir/cross1.o tmpdir/cross2.o
| /home/troup/binutils/src/ld/ld-new: final link failed: Bad value
| FAIL: NOCROSSREFS 1

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

| troup@escher:~$ uname -a 
| Linux escher 2.4.22 #2 Sat Sep 6 18:23:54 CEST 2003 alpha GNU/Linux
| troup@escher:~$ cat /proc/cpuinfo 
| cpu                     : Alpha
| cpu model               : PCA56
| cpu variation           : 7
| cpu revision            : 0
| cpu serial number       : 
| system type             : EB164
| system variation        : SX164
| system revision         : 0
| system serial number    : 
| cycle frequency [Hz]    : 533333333 
| timer frequency [Hz]    : 1024.00
| page size [bytes]       : 8192
| phys. address bits      : 40
| max. addr. space #      : 127
| BogoMIPS                : 1059.80
| kernel unaligned acc    : 0 (pc=0,va=0)
| user unaligned acc      : 62 (pc=200000e71a4,va=11fff713c)
| platform string         : Digital AlphaPC 164SX 533 MHz
| cpus detected           : 1
| troup@escher:~$ gcc --version
| gcc (GCC) 3.3.2 20031005 (Debian prerelease)
[...]
| troup@escher:~$ ~/binutils/src/ld/ld-new  --version
| GNU ld version 2.14.90 20031015
[...]

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


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