Bug 14660

Summary: unwind-dw2.o in libgcc_eh.a causes NPTL in glibc to fail
Product: gcc Reporter: H.J. Lu <hjl.tools>
Component: cAssignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED INVALID    
Severity: normal CC: gcc-bugs
Priority: P2    
Version: 3.4.0   
Target Milestone: ---   
Host: i686-pc-linux-gnu Target: i686-pc-linux-gnu
Build: i686-pc-linux-gnu Known to work:
Known to fail: Last reconfirmed:

Description H.J. Lu 2004-03-19 21:43:32 UTC
NPTL in glibc uses libgcc_eh.a. With gcc 3.4.0 20040317,
"make check" in glibc failed in nptl:

make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx4.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx5.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx10.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx11.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx12.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx14.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx17.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx18.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx15.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cleanupx0.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cleanupx1.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cleanupx3.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx16.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cleanupx4.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-oncex3.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx20.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-cancelx21.out] Error 1
make[4]: ***
[/export/build/gnu/glibc-nptl-3.4/build-i686-linux/nptl/tst-oncex4.out] Error 1
make[3]: *** [nptl/xtests] Error 2
make[2]: *** [xcheck] Error 2
make[1]: *** [check] Error 2
make: *** [one] Error 2

When I replace unwind-dw2.o in libgcc_eh.a with the one from gcc 3.3.3, the
failed test passes.
Comment 1 H.J. Lu 2004-03-19 22:54:41 UTC
It is a glibc bug. We have 2 copies of _Unwind_GetGR/_Unwind_SetGR, one
in executable and the other in libgcc_s.so.1. They don't work that way
because of 2 copies of dwarf_reg_size_table.