This is the mail archive of the 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] sparc: Prevent all but undef weak syms from becoming dynamic.

Hi Egeyar.

    Prevent sparc backend making symbols dynamic unless they are undefined
    weak. By doing so, stop dynamic linker confusing these symbols with
    library symbols.

Your patch seems to fix all the currently failing tests of the LD
testsuite in sparc64:

FAIL: Run indirect5 3
FAIL: Run indirect5 4
FAIL: Run indirect6 3
FAIL: Run indirect6 4
FAIL: indirect5c dynsym
FAIL: indirect5d dynsym
FAIL: indirect6c dynsym
FAIL: indirect6d dynsym
FAIL: Run pr2404 with PIE
FAIL: Run pr2404 with PIE (-z now)

These all pass now.  Which is great! :)

However, it also triggers a regression:

gcc -B/home/jemarch/couts2/binutils-gdb/build/ld/tmpdir/ld/
-L/usr/local/sparc64-unknown-linux-gnu/lib64 \
-L/usr/local/lib64 -L/lib64 -L/usr/lib64
-L/usr/local/sparc64-unknown-linux-gnu/lib -L/usr/local/lib -L/lib\
 -L/usr/lib  -o tmpdir/ifunc-mainpn
 -L/home/jemarch/couts2/binutils-gdb/ld/testsuite/ld-ifunc -pie -Wl,-z,\
 now -Wl,--no-as-needed tmpdir/ tmpdir/ifunc-main.o
 Executing on host: sh -c {gcc
 4-unknown-linux-gnu/lib64 -L/usr/local/lib64 -L/lib64 -L/usr/lib64
 ib -L/usr/local/lib -L/lib -L/usr/lib  -o tmpdir/ifunc-mainpn
 uite/ld-ifunc -pie -Wl,-z,now -Wl,--no-as-needed
 tmpdir/ tmpdir/ifunc-main.o 2>&1}  /dev/nu\
 ll ld.tmp (timeout = 300)
 spawn [open ...]^M
 Running: tmpdir/ifunc-mainpn > tmpdir/ifunc-mainpn.out
 child killed: segmentation violation
FAIL: Run ifunc-main with PIE (-z now)

Could you please take a look?

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