From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: pdumper on Solaris 10 Date: Sat, 14 Dec 2024 16:30:48 +0200 Message-ID: <86seqqtjzb.fsf@gnu.org> References: <8634iyf257.fsf@gnu.org> <8634iwex8q.fsf@gnu.org> <86wmg7bso1.fsf@gnu.org> <865xnrbh3r.fsf@gnu.org> <87bjxil35f.fsf@protonmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2503"; mail-complaints-to="usenet@ciao.gmane.io" Cc: gerd.moellmann@gmail.com, emacs-devel@gnu.org To: Pip Cet Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Dec 14 15:31:34 2024 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1tMTB8-0000Vt-6s for ged-emacs-devel@m.gmane-mx.org; Sat, 14 Dec 2024 15:31:34 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tMTAY-0003lo-KN; Sat, 14 Dec 2024 09:30:58 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tMTAX-0003lE-9d for emacs-devel@gnu.org; Sat, 14 Dec 2024 09:30:57 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tMTAX-0007Vi-1R; Sat, 14 Dec 2024 09:30:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=zj+mzt2TiGSEiNqIg4xJcTwfzav2zOznz0eAqwkzRUo=; b=UYzbGgP2LhlJO+tdKKg3 BRvHVivcZOHoKbho80FDKsVzR8XPw28mD89KOIiB3pe92mCG7c5tp0sJ4roqJcLI6Gw99CqHhEPVO KPhbcSF+Zb990eqcfxrze4Z5pDSWvpwEVzpxjR5B/mG9IlfhPiYvtykV7y8J1P8Ndc+Hlw+iSPSVI WV1HvZEJdjx8HB0prbIkCfBc1FqUwg6OS90Du9okS5QMV4/2wowb2H6UqzWiwryzcpFf01PWAFkfX 80ucKU5fbkdPGtBkpCZSlSwr3H18MaxE8vewbm02u2ONRqwV2KZVqA10y4EvS02P3/MW8NXfQDKWv fgETe6vX3DD37w==; In-Reply-To: <87bjxil35f.fsf@protonmail.com> (message from Pip Cet on Wed, 11 Dec 2024 14:13:11 +0000) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:326489 Archived-At: > Date: Wed, 11 Dec 2024 14:13:11 +0000 > From: Pip Cet > Cc: Eli Zaretskii , stefankangas@gmail.com, luangruo@yahoo.com, ali_gnu2@emvision.com, emacs-devel@gnu.org > > Pip Cet writes: > > Gerd Möllmann writes: > >> Eli Zaretskii writes: > >>> That's not what Gerd says, AFAIU. But if you are right, then how > >>> about making the WIDE_EMACS_INT configuration on the igc branch use > >>> USE_LSB_TAG in the HAVE_MPS code branch? I can volunteer to test such > >>> a build, if that would help. > > > > Thanks for the offer. I definitely think we should move away from > > USE_LSB_TAG=0 as much as possible, and if the only place where such a > > change would not be vetoed is scratch/igc + WIDE_EMACS_INT, we can at > > least fix it there. If any issues arise, of course, it will be more > > difficult to ascertain whether they were caused by the USE_LSB_TAG > > change or the IGC changes themselves. > > > > So I'll push that change in a bit, unless someone objects. > > Just pushed it to the scratch/igc branch. It shouldn't have any effect > on ordinary 64-bit builds; some of the code is to cater to the > hypothetical big-endian 32-bit use case, and technically the x86 MPS > weak pointer "optimization" could bite us again, but recent GCC does not > generate the precise instructions that MPS emulates, so I'll risk it. > > As I've just explained, bug reports for the WIDE_EMACS_INT case will be > difficult to deal with, as there are two major changes; let's see what > happens, but I suspect we'll end up having to ask users to build a !MPS > + USE_LSB_TAG + WIDE_EMACS_INT configuration. Thanks, I've now built the igc branch --with-wide-int, and it compiled cleanly, with the exception of these 2 warnings: CC igc.o igc.c: In function 'weak_hash_table_entry': igc.c:4102:16: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 4102 | client = (mps_addr_t)entry.intptr; | ^ igc.c:4107:16: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] 4107 | client = (mps_addr_t)real_ptr; | ^ The warnings are real, because mps_addr_t is a 'void *', so a 32-bit data type, whereas entry.intptr is EMACS_UINT, so an unsigned 64-bit type. I've started the produced Emacs and scrolled through a long file, which seemed to work. However, profiling doesn't work, whereas it did in the "normal" 32-bit build. (Note that SIGPROF is emulated on Windows, so maybe that emulation somehow causes this problem when wide ints are used with MPS.) Thanks.