public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "Frank Ch. Eigler" <fche@redhat.com>
To: gcc-patches@gcc.gnu.org
Cc: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Subject: Re: Improve Solaris mudflap support (PR libmudflap/49550)
Date: Wed, 06 Jul 2011 16:16:00 -0000	[thread overview]
Message-ID: <20110706161117.GC24690@redhat.com> (raw)

Hi, Rainer -


> > It addresses a couple of testsuite failures:
> > [...]
> >   where the registration of __iob has been done automatically by the
> >   compiler.  I avoid this problem by not registering stdin, stdout, and
> >   stderr separately on Solaris.

OK.


> > * Some tests were failing while calling unregister in munmap.  It turned
> >   out that there had been no corresponding mmap registration before.
> >   This occurs because Solaris has mmap64 for largefile-aware programs
> >   instead.  Fixed by wrapping mmap64, too.  What I don't know is if
> >   mmap64 needs to be added to MFWRAP_SPEC in gcc.c?  

I believe so.

> >   If so, I'd rather do it by adding some MFWRAP_OS_SPEC to avoid
> >   having to duplicate the whole spec in the Solaris config
> >   headers.

Why would solaris have to duplicate MFWRAP_SPEC if mmap64 is added to
the default gcc.c one?

> > * As noted in the last patch, the getmntent signature differs in
> >   Solaris.  This patch implements a wrapper for the Solaris version.

OK.

> > * libmudflap.cth/pass37-frag.c would fail like this:
> >   Investigating with -trace-calls reveals that all registrations and
> >   unregistrations of errno are for the same address, which is wrong for
> >   multithreaded programs which access errno via an accessor function.
> >   To enable that, <errno.h> needs to be included with _REENTRANT
> >   defined.  It turned out that it suffices to do this in mf-hooks3.c.

OK.

> > * libmudflap.c/heap-scalestress.c always timed out on my SPARC test
> >   system: on a 1.2 GHz UltraSPARC-T2, it takes
> >
> > real        8:47.06
> > user          43.12
> > sys         8:03.77
> >
> >   which is way over the limit.  On my laptop (1.6 GHz Core i7), it takes
> >
> > real          37.35
> > user           5.06
> > sys           32.23
> >
> >   I've divided SCALE by 10 to account for this.

OK; I'm surprised by the order-of-magnitude performance difference
between the machines though.


> > * I've replaced all the __FreeBSD__ && ... tests in
> >   libmudflap.c/pass-stratcliff.c with appropriate autoconf macros, and
> >   also define MIN which can be missing.

OK.

> > * libmudflap.c/pass47-frag.c originally failed like this:
> > With this patch (and the next), I get almost clean testsuite results on
> > sparc-sun-solaris2.11 (both multilibs):

OK.


- FChE

             reply	other threads:[~2011-07-06 16:11 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-06 16:16 Frank Ch. Eigler [this message]
  -- strict thread matches above, loose matches on Subject: below --
2011-07-07 12:36 Uros Bizjak
2011-06-30 17:37 Rainer Orth
2011-07-04 13:27 ` Rainer Orth
     [not found]   ` <20110706160706.GB24690@redhat.com>
2011-07-06 16:16     ` Rainer Orth
2011-07-06 16:58       ` Frank Ch. Eigler
2011-07-06 17:11         ` Rainer Orth
2011-07-07 10:10         ` Rainer Orth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110706161117.GC24690@redhat.com \
    --to=fche@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=ro@CeBiTec.Uni-Bielefeld.DE \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).