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: [BUG] Regression in 2.14.90 (relative to 2.13.90)


On Tue, Nov 18, 2003 at 11:01:36PM +0100, Carlo Wood wrote:
> This is very weird, how is it possible that you don't see the
> bug with the current CVS and I do?

I am convinced the bug is still there.  When I *only* replace
'ld', then I can flip the existance of the bug on or off.

Example:

/usr/src/GNU/gcc/PR9509/jasons.test>rm ld

Compile it with installed binutils-2.13.90 (has the bug not) using
a recent compiler that I have laying around:

/usr/src/GNU/gcc/PR9509/jasons.test>/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/crtbegin.o -L/usr/src/GNU/builds-gcc/PR13045/PR13045-native/i686-pc-linux-gnu/libstdc++-v3/src/.libs -L/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc -L/usr/src/GNU/install/lib/gcc/i686-pc-linux-gnu/3.4 -L/usr/src/GNU/install/lib/gcc/i686-pc-linux-gnu/3.4/../../.. --rpath /usr/src/GNU/builds-gcc/PR13045/PR13045-native/i686-pc-linux-gnu/libstdc++-v3/src/.libs:/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc wa.o wa2.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/crtend.o /usr/lib/crtn.o

Store the results (independently tested to be equivalent to your
posted results):

/usr/src/GNU/gcc/PR9509/jasons.test>readelf -wl a.out | grep -A1000 'Length:                      71' | sed -e 's/8048[0-9a-f]*/8048000/g' > out1

Now use a different 'ld' (I have PATH=.: ...)

/usr/src/GNU/gcc/PR9509/jasons.test>ln -sf /usr/src/GNU/binutils/src/build-i386-redhat-linux/ld/.libs/ld-new ld

And repeat the exact same test:

/usr/src/GNU/gcc/PR9509/jasons.test>/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/collect2 --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/crtbegin.o -L/usr/src/GNU/builds-gcc/PR13045/PR13045-native/i686-pc-linux-gnu/libstdc++-v3/src/.libs -L/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc -L/usr/src/GNU/install/lib/gcc/i686-pc-linux-gnu/3.4 -L/usr/src/GNU/install/lib/gcc/i686-pc-linux-gnu/3.4/../../.. --rpath /usr/src/GNU/builds-gcc/PR13045/PR13045-native/i686-pc-linux-gnu/libstdc++-v3/src/.libs:/usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc wa.o wa2.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/src/GNU/builds-gcc/PR13045/PR13045-native/gcc/crtend.o /usr/lib/crtn.o
/usr/src/GNU/gcc/PR9509/jasons.test>readelf -wl a.out | grep -A1000 'Length:                      71' | sed -e 's/8048[0-9a-f]*/8048000/g' > out2

Compare results:

/usr/src/GNU/gcc/PR9509/jasons.test>diff -u out1 out2
--- out1        2003-11-18 23:20:20.753641368 +0100
+++ out2        2003-11-18 23:20:39.929726160 +0100
@@ -72,10 +72,10 @@

  Line Number Statements:
   Set File Name to entry 2 in the File Name Table
-  Extended opcode 2: set Address to 0x0
-  Special opcode 9: advance Address by 0 to 0x0 and Line by 4 to 5
-  Special opcode 90: advance Address by 6 to 0x6 and Line by 1 to 6
-  Advance PC by 14 to 14
+  Extended opcode 2: set Address to 0x8048000
+  Special opcode 9: advance Address by 0 to 0x8048000 and Line by 4 to 5
+  Special opcode 90: advance Address by 6 to 0x8048000 and Line by 1 to 6
+  Advance PC by 14 to 8048000
   Extended opcode 1: End of Sequence

   Extended opcode 2: set Address to 0x8048000

As you see, the bug appears by JUST and ONLY using the 'ld' from todays CVS.

-- 
Carlo Wood <carlo@alinoe.com>


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