From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?ISO-8859-1?Q?Sjoerd_van_Leent_Priv=E9?= Newsgroups: gmane.lisp.guile.devel Subject: Re: wip-rtl native closure creation Date: Mon, 06 Aug 2012 11:39:42 +0200 Message-ID: <501F90DE.8030702@gmail.com> References: <87ehnkqsbz.fsf@pobox.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1344245994 27162 80.91.229.3 (6 Aug 2012 09:39:54 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 6 Aug 2012 09:39:54 +0000 (UTC) To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon Aug 06 11:39:55 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 1SyJn1-0005hG-58 for guile-devel@m.gmane.org; Mon, 06 Aug 2012 11:39:55 +0200 Original-Received: from localhost ([::1]:54184 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SyJn0-0006E2-Ca for guile-devel@m.gmane.org; Mon, 06 Aug 2012 05:39:54 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:55072) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SyJmw-0006Dx-Ro for guile-devel@gnu.org; Mon, 06 Aug 2012 05:39:51 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SyJms-0004iY-Sq for guile-devel@gnu.org; Mon, 06 Aug 2012 05:39:50 -0400 Original-Received: from mail-ey0-f169.google.com ([209.85.215.169]:46858) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SyJms-0004iQ-Kt for guile-devel@gnu.org; Mon, 06 Aug 2012 05:39:46 -0400 Original-Received: by eaaf11 with SMTP id f11so680669eaa.0 for ; Mon, 06 Aug 2012 02:39:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=K/tN3ZeVWOfiFe3AngRWskeFotV4Yx2MlDA2SqPH0rQ=; b=JzdwnJhbwxZ3hKNXS+vu1VWVO0EFV1+FSOdTslM+djL25wYB+V4ajFK8yiI+Uw4XCA Roi9KjkiQtQ1RjP5QxD0TzRR0asI3ANbefxrtnnzwOTLI6BWAgjfLnKogiad43gPZ+4I +Z/QSZ/jx+pGZh3PJwSE3PJ8rotVGCdVqf+z6UNY2nse+yYtX3VeMBgYhvPN4B8eI/7b obp2Pp3CFsJn27GRH1+2O1PUtBWot7BfV2QqpQ8CH9w7A5OBfqcRjfBZObnmHt9epJK/ xPeD04xs2ws7Hi+UffPjSWcfynsNtDY0w54jtWMuVoCtvtCJX/+XwnGjNrUd5rlpHeSv DgPQ== Original-Received: by 10.14.175.8 with SMTP id y8mr9268612eel.8.1344245985365; Mon, 06 Aug 2012 02:39:45 -0700 (PDT) Original-Received: from [192.168.1.46] (195-240-166-168.ip.telfort.nl. [195.240.166.168]) by mx.google.com with ESMTPS id d48sm45971256eeo.10.2012.08.06.02.39.43 (version=SSLv3 cipher=OTHER); Mon, 06 Aug 2012 02:39:44 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20120714 Thunderbird/14.0 In-Reply-To: <87ehnkqsbz.fsf@pobox.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.215.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:14777 Archived-At: On 06-08-12 11:32, Andy Wingo wrote: > On Sun 05 Aug 2012 17:19, Stefan Israelsson Tampe writes: > >> Probably it is best to have the first qword / dword in the code to be >> 0 or the native adress e.g. I propose to add that feature to the >> rtl-branch. > Good question! Given the different tradeoffs, that seems workable. > Another possibility would be to use a different TC7 for native > procedures. After all, the only calls we need to make cheaply are > native->native and bytecode->bytecode, and the rest can go through a > general dispatch loop (possibly with inline caching). WDYT? (Also note > that RTL words are 32 bits wide, which may or may not be sufficient for > native code pointers.) > > Andy Wouldn't it be feasible in the future that there might be, because of more memory, other designs, such as caching, which create much more closures than current designs? I don't know, but on 64-bit platforms (and perhaps even architectures with a larger bus), it seems to me that it is necessary to stick to this bus length.