From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Newsgroups: gmane.lisp.guile.devel Subject: Re: guile and libgccjit Date: Sun, 10 Oct 2021 10:49:21 +0200 Message-ID: <20211010084921.GA5755@tuxteam.de> References: <76173fd8-3d24-4754-bef1-e68c70679b66@www.fastmail.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="FCuugMFkClbJLl1L" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1673"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/1.5.21 (2010-09-15) To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Sun Oct 10 10:49:48 2021 Return-path: Envelope-to: guile-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 1mZUWh-0000Cy-U7 for guile-devel@m.gmane-mx.org; Sun, 10 Oct 2021 10:49:47 +0200 Original-Received: from localhost ([::1]:37718 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mZUWf-0008Js-VG for guile-devel@m.gmane-mx.org; Sun, 10 Oct 2021 04:49:45 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45584) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mZUWS-0008Jf-Hg for guile-devel@gnu.org; Sun, 10 Oct 2021 04:49:32 -0400 Original-Received: from mail.tuxteam.de ([5.199.139.25]:34833) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.90_1) (envelope-from ) id 1mZUWQ-0000RC-E7 for guile-devel@gnu.org; Sun, 10 Oct 2021 04:49:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tuxteam.de; s=mail; h=From:In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:To:Date; bh=4N4ZbtS4bKV/ezevy1QyLtHWMEEfrxDvkf3/9wPAdVU=; b=c7YWvaSM9pZqz8Agq3dDuB5OEJPsS7NGAPhUz1zU+XEFqkxWlyzNqxY5OGTwc/0lnKnJosHwrnDoi7QKmcdTNGlAmKtsHCcI3SwqfqUWMwxd/s8/0LmfWs3NYiH3rQH5qMceVPcf452IsCFq3v8JM6LB6IBwEb2KOHlT8aGbBgX4L0ufz7BB1THMIHv3XV1yOJKwUKZly/upGH68AkB68d8JFkmqjoWOiQLYz6w3WMJi9oJ39TyvbXmGYGfZ6TSz1TJopz8KbgvQt3rQ0/t4dqPO/Xq+S5MGd1rDV3QI92eY1Is1HytZJsNY9k9gqVSY5+Rhnb2+AeaAfLzYv8TAgA==; Original-Received: from tomas by mail.tuxteam.de with local (Exim 4.80) (envelope-from ) id 1mZUWH-0001aS-VD for guile-devel@gnu.org; Sun, 10 Oct 2021 10:49:21 +0200 Content-Disposition: inline In-Reply-To: <76173fd8-3d24-4754-bef1-e68c70679b66@www.fastmail.com> Received-SPF: pass client-ip=5.199.139.25; envelope-from=tomas@tuxteam.de; helo=mail.tuxteam.de X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:20908 Archived-At: --FCuugMFkClbJLl1L Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Oct 10, 2021 at 09:57:13AM +0200, Linus Bj=C3=B6rnstam wrote: > The the current JIT is, in my understanding, more or less a stepping ston= e towards native compilation. The current JIT is very small and lightweight= , without any tracing, meaning things like register allocation is flexible = going forward. >=20 > I am not a maintainer, nor heavily involved, but I believe libgccjit woul= d be a step sideways considering the above.=20 I think there's some (very readable!) rationale on why Andy chose a relatively "simple" JIT in his blog [1]. It's a fork of GNU lightning. The post explains why the powerful optimisations built into new versions of Lightning seem contraproductive for Guile. Since libgccjit will have even more powerful optimisations (it's gcc, after all!), I guess the same arguments hold. Note that Emacs is currently integrating an Elisp compiler based on libgccjit. But as far as I can see, it's more an AOT compiler than a JIT. Cheers [1] https://wingolog.org/archives/2019/05/24/lightening-run-time-code-gener= ation - t --FCuugMFkClbJLl1L Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAmFiqREACgkQBcgs9XrR2kZv8ACfbCEH4YNXcjatwncQNVfdzoiz y84AoICRSHBUlMN/lgwZHqt9yus7Nw3A =nwbl -----END PGP SIGNATURE----- --FCuugMFkClbJLl1L--