From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 95D98BBAF for ; Sun, 5 Dec 2010 17:44:19 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AtcBAORP+0zRVdY0gWdsb2JhbACVG44MCBUBAQsJCgcTBB6jQIwCAQWNCgEEghSDNQ X-IronPort-AV: E=Sophos;i="4.59,302,1288566000"; d="scan'208";a="82034441" Received: from mail-bw0-f52.google.com ([209.85.214.52]) by mail4-smtp-sop.national.inria.fr with ESMTP; 05 Dec 2010 17:44:19 +0100 Received: by bwz4 with SMTP id 4so9747226bwz.39 for ; Sun, 05 Dec 2010 08:44:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:content-type:mime-version :subject:from:in-reply-to:date:content-transfer-encoding:message-id :references:to:x-mailer; bh=pRw/9oIiiYYN/PCBaTnhl6EPsTO0MWZhPZtocjNc0lo=; b=O1BN6Om+1FjnZN0CtumWXzsLJpKqWOUGKLhu3RncnuIIxrcLgfKubrlmm4P6R4rtdU s5gPPEN7dm8Ts5jHQ6KiyUA1jiSWTurdt/BSjVNWnTQdqC6ecx+4Z4tZTDZJUbCNZKCn tis1NeYAiG7UBk6oKkyl4GATVgKO4qzDbj4ZI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; b=kczZq2jF8w9T6FS7xuxjJ2sgSNOtynr2ov+8MNsPRH2HgfoLgHyherkd6wv1jlmXFZ r3mlzvjJjfSgHUYc7IopGoRL/+reAXQTQSMu2VwW1Cuit5OAsYOIFL1dGsED309GJtRx nLi6i2qy+OxXnTAyxUxU2xscGLxLtjXP0YFc0= Received: by 10.204.152.139 with SMTP id g11mr4814755bkw.127.1291567458537; Sun, 05 Dec 2010 08:44:18 -0800 (PST) Received: from bespin.kosmos.all (ip-95-223-170-32.unitymediagroup.de [95.223.170.32]) by mx.google.com with ESMTPS id d11sm1325924bkd.10.2010.12.05.08.44.17 (version=SSLv3 cipher=RC4-MD5); Sun, 05 Dec 2010 08:44:17 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1081) Subject: Re: ocamlopt LLVM support (Was: [Caml-list] OCamlJIT2 vs. OCamlJIT) From: Benedikt Meurer In-Reply-To: Date: Sun, 5 Dec 2010 17:44:16 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <3DCEA910-1382-47E5-876B-059178F8F82E@googlemail.com> <20101130124803.7952fca1@deb0> <0a8b01cb90da$da5e6240$8f1b26c0$@com> <5E2DA3F1-7998-4F62-B617-7B6451D1001D@googlemail.com> <0b3b01cb9161$a81c8e10$f855aa30$@com> <0b9301cb91a3$8f42fd60$adc8f820$@com> To: caml-list@yquem.inria.fr X-Mailer: Apple Mail (2.1081) X-Spam: no; 0.00; ocamlopt:01 ocaml:01 compiler:01 combinator:01 functors:01 inlining:01 compiler:01 cheers:01 wrote:01 caml-list:01 functions:01 match:02 constraints:03 programming:03 library:03 On Dec 3, 2010, at 14:34 , Till Varoquaux wrote: > Thanks for the summary. >=20 > You seem to think LLVM wouldn't actually buy us much in term of > optimisations. In my experience the current ocaml compiler is really > good when writing code fairly low level but discourages use of > combinator library, higher order functions, functors in performance > sensitive code (i.e. you have to do inlining, specialization, constant > propaagation etc... by hand). >=20 > I was under the impression that some of LLVM passes could be a good > match for those problems. That is: micro benchmark code that is > written carefully with those constraints in mind wouldn't gain much > but some form of "origami" programming could be unfolded by the > compiler. Am I missing something obvious? (e.g. need for better side > effect analysis). This would be possible, yes. And the usual special note: No, it doesn't work with floating point = stuff (automagically). > Cheers, > Till Benedikt=