From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id TAA11147; Mon, 17 Sep 2001 19:49:23 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id TAA13265 for ; Mon, 17 Sep 2001 19:49:21 +0200 (MET DST) Received: from snfc21.pbi.net (mta6.snfc21.pbi.net [206.13.28.240]) by concorde.inria.fr (8.11.1/8.10.0) with ESMTP id f8HHnKH09063 for ; Mon, 17 Sep 2001 19:49:21 +0200 (MET DST) Received: from checkerlap.d6.com ([209.79.135.210]) by mta6.snfc21.pbi.net (iPlanet Messaging Server 5.1 (built May 7 2001)) with ESMTP id <0GJT003QKITN0D@mta6.snfc21.pbi.net> for caml-list@pauillac.inria.fr; Mon, 17 Sep 2001 10:49:07 -0700 (PDT) Date: Mon, 17 Sep 2001 10:49:31 -0700 From: Chris Hecker Subject: Re: RE : [Caml-list] building ocaml 3.02 under win32 In-reply-to: <7kv1a6c3.fsf@supelec.fr> X-Sender: checker@arda.pair.com To: Fabrice Popineau , Lionel Fourquaux Cc: caml-list@pauillac.inria.fr Message-id: <4.3.2.7.2.20010917104431.02a3fa90@arda.pair.com> MIME-version: 1.0 X-Mailer: QUALCOMM Windows Eudora Version 4.3.2 Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7BIT References: <000001c13ba8$c8d91920$eea380d9@fourquauche3ay> <000001c13ba8$c8d91920$eea380d9@fourquauche3ay> Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk >In fact, the problem was that I tried to compile the whole system >using the default __fastcall IA32 convention of MSVC (it will use up >to 2 registers to pass parameters to functions, resulting in less >overhead). I was wondering about how much could be gained. > ... > The changes needed to cope with this are beyond the time I can spend >on it right now, but I'm pretty sure it could be result in >significative better performances. I'd be interesting in finding out as well, but I woudln't be so sure it will result in a win. The problem with register calling conventions is that often the called function has to spill everything onto the stack anyway to do its own work, resulting in slower and bigger code. Without going through and adding fastcall by hand to leaf functions, it's hard to tune this behavior. Mike Abrash wrote an article in DDJ about this years ago that might still be relevant. Chris ------------------- Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr