From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Israelsson Tampe Newsgroups: gmane.lisp.guile.devel Subject: Re: patching gcc to allow other calling conventions Date: Thu, 21 Jun 2012 20:53:57 +0200 Message-ID: References: <878vflzjsu.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=14dae9340f17c1491a04c3000990 X-Trace: dough.gmane.org 1340304852 28202 80.91.229.3 (21 Jun 2012 18:54:12 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 21 Jun 2012 18:54:12 +0000 (UTC) Cc: =?ISO-8859-1?Q?Ludovic_Court=E8s?= , guile-devel@gnu.org To: Daniel Krueger Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Jun 21 20:54:11 2012 Return-path: Envelope-to: guile-devel@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 1ShmW6-0008S8-G6 for guile-devel@m.gmane.org; Thu, 21 Jun 2012 20:54:06 +0200 Original-Received: from localhost ([::1]:41998 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShmW6-0004WP-IM for guile-devel@m.gmane.org; Thu, 21 Jun 2012 14:54:06 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:59914) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShmW2-0004Vc-Rk for guile-devel@gnu.org; Thu, 21 Jun 2012 14:54:04 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ShmW1-0006jM-54 for guile-devel@gnu.org; Thu, 21 Jun 2012 14:54:02 -0400 Original-Received: from mail-yx0-f169.google.com ([209.85.213.169]:63596) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ShmW0-0006ix-UK; Thu, 21 Jun 2012 14:54:01 -0400 Original-Received: by yenr5 with SMTP id r5so1050875yen.0 for ; Thu, 21 Jun 2012 11:53:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=XwtuH6g/hFcKQTanbZgqyYZG0xCdyYhRiZGp0AOzWVA=; b=q/PFg/BNJgmIfhTLnpCmEVuvu2gdJZcwyC+M6j7KLSMAtzQLfu8/rPmU6m3AmKecaA 2QoDd0z9Vo89I09YqthpXnNYTjYJsccEirlLOJ1s3K5CJqFofHu9saj6ngT8Jg1pw5hY +/eKU7HRCcYQLqED3ZHnMKXFC9OgwTKAyEQl63DuHNPEFSUDRyBHtOeDKhl9YqEsvf0/ XUbF+9jOMAwyPTvjH56N9QK80FFX1mOZXSgXN4/cHnGOapiVjblwI2h9rPs3w45MvW79 X0aLrmLQwm2jbYuD+QPuNpHiJf4GxtAAHNz2ugfEBPNpQAwhKBKSyE+fhIk0ucCztztO XJAQ== Original-Received: by 10.50.179.101 with SMTP id df5mr8762789igc.22.1340304837920; Thu, 21 Jun 2012 11:53:57 -0700 (PDT) Original-Received: by 10.50.109.166 with HTTP; Thu, 21 Jun 2012 11:53:57 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.213.169 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:14661 Archived-At: --14dae9340f17c1491a04c3000990 Content-Type: text/plain; charset=ISO-8859-1 Hmm, yes then it can work. I would compile only to C at the first phase as you say as it should not be of too high complexity to output the C part and be pretty swift although you are interpreting. Then the VM can compile all guile including code to emit and compile assembler and then one can add the possibility to compile to native code by some kind of just in time mechanism. Cool! I will try to start investigating this approach. /Stefan On Thu, Jun 21, 2012 at 7:57 PM, Daniel Krueger wrote: > On Thu, Jun 21, 2012 at 7:50 PM, Stefan Israelsson Tampe > wrote: > > On a second thought guile do have an initital interpreter that is either > a > > vm or a native no? > > Perhaps one can make use of that somehow! > > Yeah, I thought about that too, but thought first that it would be > impossible. But if you first only compile the interpreter code > (without the VM), then create the C file with the instructions and > compile the VM it should work. I think .. ^^ > > - Daniel > --14dae9340f17c1491a04c3000990 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hmm, yes then it can work.

I would compile only to C at the first ph= ase as you say as it should not be of too high
complexity to output the= C part and be pretty swift although you are interpreting. Then the VM can = compile all guile including code to emit and compile assembler and then one= can add the possibility to compile to native code by some kind of just in = time mechanism. Cool!

I will try to start investigating this approach.

/Stefan

=
On Thu, Jun 21, 2012 at 7:57 PM, Daniel Krueger = <keenbug@googlemail.com> wrote:
On Thu, Jun 21, 2012 at 7:= 50 PM, Stefan Israelsson Tampe
<stefan.itampe@gmail.com&= gt; wrote:
> On a second thought guile do have an initital interpreter that is eith= er a
> vm or a native no?
> Perhaps one can make use of that somehow!

Yeah, I thought about that too, but thought first that it would be impossible. But if you first only compile the interpreter code
(without the VM), then create the C file with the instructions and
compile the VM it should work. I think .. ^^

- Daniel

--14dae9340f17c1491a04c3000990--