From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15702 invoked by alias); 20 Aug 2011 15:46:46 -0000 Received: (qmail 15691 invoked by uid 22791); 20 Aug 2011 15:46:45 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 20 Aug 2011 15:46:31 +0000 From: "dave.anglin at bell dot net" To: gcc-bugs@gcc.gnu.org Subject: [Bug libgomp/46967] lots of testsuite failures with libgomp on hppa-hp-hpux11.31 Date: Sat, 20 Aug 2011 17:04:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libgomp X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: dave.anglin at bell dot net X-Bugzilla-Status: WAITING X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-08/txt/msg01730.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46967 --- Comment #8 from dave.anglin at bell dot net 2011-08-20 15:45:46 UTC --- The pthread change was applied in r170290. If it doesn't fix the bug, then further debugging is needed. I can say the tests don't fail with 11.11. You also indicated the tests don't fail with 11.23. So, these fails either have to do with differences in linking, or processor architecture. The linking issue mentioned in comment #2 is a libtool issue. It incorrectly links in libc in shared library links. It is possible to hack libtool to not link in libtool on hppa*-*-hpux*. Some other targets do this, so there is sample code. If the non functional pthread stubs are used, races will result causing test failures. The for-*.C tests are especially sensitive to this as they create many threads to parallelize loops. The libtool project is essentially dormant, and none of the maintainers have responded to my patches or bug reports in recent months. I believe there are subtle differences in the behavior of the dynamic linker in different hpux versions. There is also the issue that 11.31 usually only runs on PA8800/PA8900 servers. These CPUs have much larger instruction and data caches (32 MB), and the caches do not support non equivalent aliasing. From experience, I know that it is much more difficult to do a good pthread implementation on these CPUs. More cache flushing is needed than on earlier CPUs, and this changes program timing quite a bit. It's quite tricky to avoid the aliasing issues and cache corruption. -- John David Anglin dave.anglin@bell.net