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