From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Noah Lavine Newsgroups: gmane.lisp.guile.bugs Subject: bug#13074: VM Segfaults with Bad `Call' Instruction Date: Mon, 10 Dec 2012 23:16:26 -0500 Message-ID: References: <87hao0r3nh.fsf@gnu.org> <87hao0p2of.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=f46d042f949409850004d08bf267 X-Trace: ger.gmane.org 1355199450 31546 80.91.229.3 (11 Dec 2012 04:17:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 11 Dec 2012 04:17:30 +0000 (UTC) Cc: 13074@debbugs.gnu.org To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Tue Dec 11 05:17:41 2012 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TiHHp-00064X-Bl for guile-bugs@m.gmane.org; Tue, 11 Dec 2012 05:17:41 +0100 Original-Received: from localhost ([::1]:55818 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiHHc-0007nM-Fx for guile-bugs@m.gmane.org; Mon, 10 Dec 2012 23:17:28 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:43750) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiHHY-0007n4-RS for bug-guile@gnu.org; Mon, 10 Dec 2012 23:17:26 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TiHHX-0005ly-HK for bug-guile@gnu.org; Mon, 10 Dec 2012 23:17:24 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:54074) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TiHHX-0005ls-Dx for bug-guile@gnu.org; Mon, 10 Dec 2012 23:17:23 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1TiHI9-0008Gr-Mw for bug-guile@gnu.org; Mon, 10 Dec 2012 23:18:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Noah Lavine Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-guile@gnu.org Resent-Date: Tue, 11 Dec 2012 04:18:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 13074 X-GNU-PR-Package: guile X-GNU-PR-Keywords: Original-Received: via spool by 13074-submit@debbugs.gnu.org id=B13074.135519943131737 (code B ref 13074); Tue, 11 Dec 2012 04:18:01 +0000 Original-Received: (at 13074) by debbugs.gnu.org; 11 Dec 2012 04:17:11 +0000 Original-Received: from localhost ([127.0.0.1]:36092 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TiHHL-0008Fp-4o for submit@debbugs.gnu.org; Mon, 10 Dec 2012 23:17:11 -0500 Original-Received: from mail-pa0-f44.google.com ([209.85.220.44]:43644) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1TiHHG-0008Fe-BZ for 13074@debbugs.gnu.org; Mon, 10 Dec 2012 23:17:07 -0500 Original-Received: by mail-pa0-f44.google.com with SMTP id hz11so2507260pad.3 for <13074@debbugs.gnu.org>; Mon, 10 Dec 2012 20:16:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=ePHbFPuSYJkxMQVpB9rWN7e0iQIuirHDavZDm7cBXB4=; b=jtzpfm5Xk6zlbT70MDRQWrO9c2A8ADsFgNtlMHIidrqjldI5A8AxwBo70vvrjxwQ0q JRClFR4zNvdvdRWPOV/STaFlGsWpqbw8HR/cpznmPzXZfgNuYjKZEPIVFqj4MertcbeI 0dyROWzTftCQUhDhoAdJI9UNKNu4vlciofQ4neiIBWzgXFxPNe1z+l2cuENpXEF1M88x y5orX5QZJec8FlaFzNZ5fxf7lHdaz8jbP3PvQoPgLCH3gNjQuXaB61oHD3fXCkm06QL4 ixeKnMcRZcA5psQ2tg1c+UQx5iZEVymZ/F2YYaGoRjSQvVGRW+R53DPAt/SuHKRBEKRj cqQQ== Original-Received: by 10.66.83.134 with SMTP id q6mr24888710pay.34.1355199386584; Mon, 10 Dec 2012 20:16:26 -0800 (PST) Original-Received: by 10.68.81.194 with HTTP; Mon, 10 Dec 2012 20:16:26 -0800 (PST) In-Reply-To: <87hao0p2of.fsf@gnu.org> X-Google-Sender-Auth: djfC2Aw4o0ZKViiMMxbPrU7MC7g X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 140.186.70.43 X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:6668 Archived-At: --f46d042f949409850004d08bf267 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On Wed, Dec 5, 2012 at 5:14 PM, Ludovic Court=E8s wrote: > Noah Lavine skribis: > > > That makes sense. I hit this error in debugging a CPS->GLIL compiler > (which > > I hope will become Guile's compiler, but that's another story). However= , > > once the debugging is done, I suppose it won't make a difference. > > Oooh, make sure to post about your plans. I will post more when I have more code to show, but basically it's the same idea as the CPS-to-RTL experiment earlier. The difference is that in that post I said that adding two new things at the same time (CPS and RTL) was probably a bad idea. Now I'm doing something about it, by making the CPS compiler generate GLIL instead. I hope this will be an easier path towards a nicer compiler. > > What do you think about enabling it only in the debug VM, or something > like > > that? Then if there's some way for me to run my code in debug mode, I c= an > > get the better output without slowing down most things. > > I=92m inclined to leave it as is, because it=92s only hit when generating > wrong code. How strongly do you feel about it? :-) > Well, I just fixed the bug, so I feel fine right now. :-) In general, I do think there should at least be an option for having full error-checking in the VM. It would have been much, much harder for me to find this without having patched the VM, because it would have taken me a very long time to try each new thing I tried, because I would have had to restart Guile. I am happy for it not to be on the regular code-path, though. I also realize that writing a compiler is an unusual application, so maybe it should even be a compile-time option for users who prefer their Guile slow. How does that sound? Noah --f46d042f949409850004d08bf267 Content-Type: text/html; charset=windows-1252 Content-Transfer-Encoding: quoted-printable

On Wed, Dec 5, 20= 12 at 5:14 PM, Ludovic Court=E8s <ludo@gnu.org> wrote:
Noah Lavine <noah.b.lavine@gm= ail.com> skribis:

> That makes sense. I hit this error in debugging a CPS->GLIL compile= r (which
> I hope will become Guile's compiler, but that's another story)= . However,
> once the debugging is done, I suppose it won't make a difference.<= br>
Oooh, make sure to post about your plans.

=
I will post more when I have more code to show, but basically it's= the same idea as the CPS-to-RTL experiment earlier. The difference is that= in that post I said that adding two new things at the same time (CPS and R= TL) was probably a bad idea. Now I'm doing something about it, by makin= g the CPS compiler generate GLIL instead. I hope this will be an easier pat= h towards a nicer compiler.
=A0
> What do you think about enabling it only in the debug VM, or something= like
> that? Then if there's some way for me to run my code in debug mode= , I can
> get the better output without slowing down most things.

I=92m inclined to leave it as is, because it=92s only hit when genera= ting
wrong code. =A0How strongly do you feel about it? =A0:-)

Well, I just fixed the bug, so I feel fine right now. :-)=

In general, I do think there should at least be a= n option for having full error-checking in the VM. It would have been much,= much harder for me to find this without having patched the VM, because it = would have taken me a very long time to try each new thing I tried, because= I would have had to restart Guile. I am happy for it not to be on the regu= lar code-path, though. I also realize that writing a compiler is an unusual= application, so maybe it should even be a compile-time option for users wh= o prefer their Guile slow. How does that sound?

Noah=A0

--f46d042f949409850004d08bf267--