Date: Tue, 22 Oct 2002 18:04:39 +0300 From: Ruslan Ermilov <ru@FreeBSD.org> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: Alexander Kabaev <kan@FreeBSD.org>, "David O'Brien" <obrien@FreeBSD.org>, current@FreeBSD.org Subject: Re: Groff problems (was Re: alpha tinderbox failure) Message-ID: <20021022150439.GA97285@sunbay.com> In-Reply-To: <15797.25760.427922.700729@grasshopper.cs.duke.edu> References: <200210210942.g9L9gLpM025724@beast.freebsd.org> <15796.17145.909288.498725@grasshopper.cs.duke.edu> <20021022142929.GB48398@sunbay.com> <15797.25760.427922.700729@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
--FCuugMFkClbJLl1L Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Oct 22, 2002 at 10:45:52AM -0400, Andrew Gallatin wrote: >=20 > Ruslan Ermilov writes: > > If you remove -fno-exceptions from gnu/usr.bin/groff/Makefile.inc and > > recompile libgroff and groff, it seems to work (I did not check it > > thoroughly). But I think this only has a side effect, because Groff > > does not seem to have any exception code (please correct me if I am > > wrong), and why the hell it should depend on -mcpu, if any? > >=20 >=20 > Interesting. I wonder of the lack of exceptions is what's confusing > ld? >=20 Seems so. With -fno-exceptions and last delta to groff/Makefile backed out: $ roff/groff/groff -V /usr/libexec/ld-elf.so.1: roff/groff/groff: too few PT_LOAD segments The same, but without -fno-exceptions: $ roff/groff/groff -V troff -Tps | grops I wonder if the follwing commit might be relevant to the -DNOSHARED issue with groff: : kan 2002/10/19 16:03:35 PDT :=20 : Modified files: : libexec/rtld-elf rtld.c : Log: : Change the symbol lookup order to search RTLD_GLOBAL objects : before referencing object's DAG. This makes it possible for : C++ exceptions to work across shared libraries and brings : us closer to the search order used by Solaris/Linux. :=20 : Reviewed by: jdp : Approved by: obrien : MFC after: 1 month :=20 : Revision Changes Path : 1.68 +12 -12 src/libexec/rtld-elf/rtld.c > As to mpcu: On alphas, the compiler has more chance to make mistakes > if its compiled for CPUs < ev56 which do not support byte/word > instructions. In those cases, it needs to generate shifty/masky code > to pull 8 and 16 bit values out of 32-bit loads and stores. This has > a history of being more error prone. Eg, some complex ports work on > stable at high optimization levels with -mcpu=3Dev56 which don't work > without -mpcu. >=20 > If we have to, we can always compile groff as -mcpu=3Dev56 because we > emulate these instructions in the kernel on older machines. That > would make groff run about like molases in January on older machines, > though, as each byte/word instruction would generate an illegal > instruction trap and that trap would be handled by the alpha trap > handler.. >=20 Can't we make it the default in GCC, or in share/mk/bsd.cpu.mk? Cheers, --=20 Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age --FCuugMFkClbJLl1L Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (FreeBSD) iD8DBQE9tWkHUkv4P6juNwoRAvS2AJ9zBidN1xebuUx4DVZLTd7qhvqlngCfap+C q4pzfHICFtHUGHLoDPXLsSs= =4rN8 -----END PGP SIGNATURE----- --FCuugMFkClbJLl1L-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021022150439.GA97285>