From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail1-relais-roc.national.inria.fr (mail1-relais-roc.national.inria.fr [192.134.164.82]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id p7ULLUTF010895 for ; Tue, 30 Aug 2011 23:21:30 +0200 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AiYBANRTXU7RVdU2kGdsb2JhbABChEybVwGIFAgUAQEBAQkJDQcUBCGBQAEBAQECARICDx0BGxILAQMBCwYFCw0NGgMCAiIBEQEFAQsRBhMIGodQBJpqCot7QIJVhSg7iG0CAwaFNoERBJMkiXqCZzyDag X-IronPort-AV: E=Sophos;i="4.68,304,1312149600"; d="scan'208";a="117758379" Received: from mail-yw0-f54.google.com ([209.85.213.54]) by mail1-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 30 Aug 2011 23:21:24 +0200 Received: by ywo32 with SMTP id 32so85551ywo.27 for ; Tue, 30 Aug 2011 14:21:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=UDqEzE+mATIWpzRRjdmEqY69rL6uhrdj0VJifscUPxg=; b=iDbs/HXfq9B2Xtpy+EgpA3NmQUsW6vMEoLvrwc5d4+TmEXnmEWbyjZiTBxqmJCOIz/ TMsrT+XUIrPS1/zdxNys7GjuZPt3gRgtyxZK12L635aXjUHuCWQ5FxveOpeGCUwFzpVQ BFtmHOmHA0WWBoAb6vv9eiQ8sXWP1QC6Hidlc= Received: by 10.236.139.169 with SMTP id c29mr37030703yhj.122.1314739283046; Tue, 30 Aug 2011 14:21:23 -0700 (PDT) MIME-Version: 1.0 Received: by 10.236.155.66 with HTTP; Tue, 30 Aug 2011 14:21:02 -0700 (PDT) In-Reply-To: <4E5D50FD.3030308@acm.org> References: <93199F3B-E9CF-4D93-9B2B-BAAB03F4FC08@googlemail.com> <4EF51F29-D437-4F6F-9C91-DBEA3D4C3EB8@googlemail.com> <1314218451.3496.42.camel@thinkpad> <11577B43-4270-4BA4-AA77-7FDEFB4B563B@googlemail.com> <1314267668.3496.62.camel@thinkpad> <20110826222943.1e28a3c110f9da2a871db261@mega-nerd.com> <4E5D50FD.3030308@acm.org> From: Pierre-Alexandre Voye Date: Tue, 30 Aug 2011 23:21:02 +0200 Message-ID: To: Fermin Reig Cc: caml-list@inria.fr Content-Type: multipart/alternative; boundary=20cf303ea174f0324304abbf976a Subject: Re: [Caml-list] Linear Scan Register Allocator for ocamlopt/ocamlnat --20cf303ea174f0324304abbf976a Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Fermin, Your thesis is very interessting, but your code is far more interesting ! Why don't you release it with an open source licence ? 2011/8/30 Fermin Reig > Pierre-Alexandre Voye wrote: > >> Note that the ocaml compiler has a flag -cmm which outputs C-- ast code. >> F. Reig made a c-- ocaml backend during his thesis. Including a GC. >> Unhappily, sources code haven't been released. >> But it proves it works. >> > > If anyone is interested, the dissertation is available at > http://theses.gla.ac.uk/686/ > > Fermin > > >> Le 26 ao=C3=BBt 2011 14:30, "Erik de Castro Lopo" >> mle%2Bocaml@mega-nerd.**com >> a =C3=A9cri= t : >>> >>> >>> Pierre-Alexandre Voye wrote: >>> >>> > I have a stupid question : I wonder if it would not be a bad idea th.= .. >>> >>> I have some experience in thie area. I work on the DDC compiler [0] >>> a compiler for a strict by default (optionally lazy) evaluation >>> dialect of Haskell. >>> >>> When I joined the project the compiler had a working compile via C >>> backend, to which I added an LLVM backend [1]. >>> >>> Executables compiled via the LLVM backend (even without exploring >>> any of the LLVM optimisation passes) were faster than the same >>> executables compiled via C (gcc -O2). I suspect this is because >>> the generated C code was nothing like the C code people write and >>> the GCC is only good at optimising idiomatic C code. >>> >>> I highly recommend LLVM as a compiler backend. >>> >>> HTH, >>> Erik >>> >>> [0] http://disciple.ouroborus.net/ >>> [1] http://www.mega-nerd.com/**erikd/Blog/CodeHacking/DDC/**index.html<= http://www.mega-nerd.com/erikd/Blog/CodeHacking/DDC/index.html> >>> >>> -- >>> ------------------------------**------------------------------** >>> ---------- >>> Erik de Castro Lopo >>> http://www.mega-nerd.com/ >>> >>> >>> -- >>> Caml-list mailing list. Subscription management and archives: >>> https://sympa-roc.inria.fr/**wws/i. >>> .. >>> >>> > --=20 --------------------- https://twitter.com/#!/ontologiae/ http://linuxfr.org/users/montaigne --20cf303ea174f0324304abbf976a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Fermin,
Your thesis is very interessting, but your code is far more i= nteresting ! Why don't you release it with an open source licence ?
=
2011/8/30 Fermin Reig <= reig@acm.org>
Pierre-Alexandre Voye wro= te:
Note that the ocaml compiler has a flag -cmm which outputs C-- ast code.
F. Reig made a c-- ocaml backend during his thesis. =C2=A0Including a GC. Unhappily, sources code haven't been released.
But it proves it works.

If anyone is interested, the dissertation is available at http://theses.gla.ac.uk/686/<= br>
Fermin


Le 26 ao=C3=BBt 2011 14:30, "Erik de Castro Lopo" <mle+ocaml@mega-nerd.com= <mailto:mle%2Bocaml@mega-nerd.com>> a =C3=A9crit :


Pierre-Alexandre Voye wrote:

> I have a stupid question : I wonder if it would not be a bad idea th..= .

I have some experience in thie area. I work on the DDC compiler [0]
a compiler for a strict by default (optionally lazy) evaluation
dialect of Haskell.

When I joined the project the compiler had a working compile via C
backend, to which I added an LLVM backend [1].

Executables compiled via the LLVM backend (even without exploring
any of the LLVM optimisation passes) were faster than the same
executables compiled via C (gcc -O2). I suspect this is because
the generated C code was nothing like the C code people write and
the GCC is only good at optimising idiomatic C code.

I highly recommend LLVM as a compiler backend.

HTH,
Erik

[0] http://dis= ciple.ouroborus.net/
[1] http://www.mega-nerd.com/erikd/Blog/CodeHackin= g/DDC/index.html

--
-------------------------------------------------------------= ---------
Erik de Castro Lopo
http://www.mega-ner= d.com/


--
Caml-list mailing list. Subscription management and archives:
https://sym= pa-roc.inria.fr/wws/i...





--
---------------------https:= //twitter.com/#!/ontologiae/
http://linuxfr.org/users/montaigne

--20cf303ea174f0324304abbf976a--