From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id 133177FF9F for ; Tue, 8 Mar 2016 23:10:42 +0100 (CET) IronPort-PHdr: 9a23:H3Q9shQVHPo1tGFLtemMbXXbM9psv+yvbD5Q0YIujvd0So/mwa64YxKN2/xhgRfzUJnB7Loc0qyN4/+mCTBLuM3f+Fk5M7VyFDY9wf0MmAIhBMPXQWbaF9XNKxIAIcJZSVV+9Gu6O0UGUOz3ZlnVv2HgpWVKQka3CwN5K6zPF5LIiIzvjqbpq8KVM1kD3WHjKZpJbzyI7izp/vEMhoVjLqtjgjDomVBvP9ps+GVzOFiIlAz97MrjtLRq8iBXpu5zv5UYCfayV+0CQLdZFDUrNXwurI2u7EGbDFjH2nxJdU4flx4AJwne8FmuVZ70tm7+t/Fh8CicJ8z/C74uD2eM9aBuHTrhkiQaLHYc933LjoQkiatBow+64Rl435LQSI6QPft6OKjaeIVJFiJ6Qs9NWnkZUcuHZIwVAr9EZL4Aog== Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=markus.mottl@gmail.com; spf=Pass smtp.mailfrom=markus.mottl@gmail.com; spf=None smtp.helo=postmaster@mail-ob0-f169.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of markus.mottl@gmail.com) identity=pra; client-ip=209.85.214.169; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of markus.mottl@gmail.com designates 209.85.214.169 as permitted sender) identity=mailfrom; client-ip=209.85.214.169; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="markus.mottl@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-ob0-f169.google.com) identity=helo; client-ip=209.85.214.169; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="markus.mottl@gmail.com"; x-sender="postmaster@mail-ob0-f169.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AdCgCaTN9WkqnWVdFcg1g0bQaoRgQDiUCIQQEBgXMZhzgHPQ8BAQEBAQEBARABAQEBBwsLCSEvgi2CLREdARQHHgMSEA8CJgIjAQERAQUBIhMih2wBAxKfdYIHgTE+MYs2gWqCV4U/ChknDVGEHAEFCgRthRyGf4R9gToFjiSJBoEjJ4ovgXWFMYlKhw2GCxEegQ84AQEBgjuBbh4uiX8BAQE X-IPAS-Result: A0AdCgCaTN9WkqnWVdFcg1g0bQaoRgQDiUCIQQEBgXMZhzgHPQ8BAQEBAQEBARABAQEBBwsLCSEvgi2CLREdARQHHgMSEA8CJgIjAQERAQUBIhMih2wBAxKfdYIHgTE+MYs2gWqCV4U/ChknDVGEHAEFCgRthRyGf4R9gToFjiSJBoEjJ4ovgXWFMYlKhw2GCxEegQ84AQEBgjuBbh4uiX8BAQE X-IronPort-AV: E=Sophos;i="5.22,558,1449529200"; d="scan'208";a="167710691" Received: from mail-ob0-f169.google.com ([209.85.214.169]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 08 Mar 2016 23:10:41 +0100 Received: by mail-ob0-f169.google.com with SMTP id fp4so28436871obb.2 for ; Tue, 08 Mar 2016 14:10:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to; bh=T5b3ygYqj7AwflksKPyyy3giseOZlpzdzuOpentLpeE=; b=ighn09qztmv37O/CUpf/fjRRM6F/hA8COc/HDfTtLzhjkt3s41zlOLq+jOhZ4kbagh mFa21fAUiK6uosHje6yWElPUzespiD1y2OIVkk4GgjubmGSrOH+rMHNSbrj9ZNbUGoOT t36dYc1VWGSpSvSXe414cbLhfgH6AXQ6rlI3r/bGuDfdfhBF7yZeyRAt8C1w/iej/fL7 N012s6Xn4l8GtNXb4z8oeJTmU/+2I9GE5rsYvmdZTmX9W7HHYoFKo0TevUbX0KfkdGDO r637VLEij9pAiTIugjZeHnGI8NHTVYsEKfmmtbj9/iLyeJBMD+zIbZvKaYCY6K5C9f78 qmyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to; bh=T5b3ygYqj7AwflksKPyyy3giseOZlpzdzuOpentLpeE=; b=lrKt+AaEaYaqKlanqGTxYQLuggRMRMK1vmnx9Sk7jlK1P2IMWeM1XA+xxUZNPrkBTu P/Qie8CKwbbyJ4cJuQZJAQz+x65usA0xsQ4Rv+kcbDIw88ExhdcUYVgyTHL9BGqU796F EosE5EwWSL5BuMqJ883R1kSD3+oDygswJOKHRpDpKXpoIWBNYrexvCFHML27gzby6y4d +zv8r8nKSEHtCCWbuXe1BQ9scF3nZOKS3eL2aqCFifnh86ZCGmJh4Q+NeqrQSBz3ULpE DrwbDVzMNgG7thIbOTtuzVgLe0sDs5gQSM0bUS3dIX0EIHDb+ewHdXzRSGeIkiJUYAUr 8KAQ== X-Gm-Message-State: AD7BkJLDLAWka82z4K5jDAEHbhXL4XZUl5Ct7i1h32S2sWwH3JPyqQGusD1+Nn6Pab+RGn8Eq1eAd2ytMHcNPQ== MIME-Version: 1.0 X-Received: by 10.60.50.98 with SMTP id b2mr18704818oeo.38.1457475039895; Tue, 08 Mar 2016 14:10:39 -0800 (PST) Received: by 10.182.128.164 with HTTP; Tue, 8 Mar 2016 14:10:39 -0800 (PST) Date: Tue, 8 Mar 2016 17:10:39 -0500 Message-ID: From: Markus Mottl To: OCaml List Content-Type: text/plain; charset=UTF-8 Subject: [Caml-list] Status of Flambda in OCaml 4.03 Hi, I'm trying out OCaml 4.03.0+beta1 right now and wanted to test Flambda optimizations. But looking at the generated assembly, it doesn't seem to be doing much if anything on the simple test examples that I thought would benefit. To give an example of what I expected to see, lets consider this code: ----- let map_pair f (x, y) = f x, f y let succ x = x + 1 let map_pair_succ1 pair = map_pair succ pair let map_pair_succ2 (x, y) = succ x, succ y ----- I would have thought that the "succ" function would be inlined in "map_pair_succ1" as the compiler would do for "map_pair_succ2". But the generated code looks like this: ----- L101: movq %rax, %rdi movq %rdi, 8(%rsp) movq %rbx, (%rsp) movq 8(%rbx), %rax movq (%rdi), %rsi movq %rdi, %rbx call *%rsi L102: movq %rax, 16(%rsp) movq (%rsp), %rax movq (%rax), %rax movq 8(%rsp), %rbx movq (%rbx), %rdi call *%rdi ----- Is Flambda supposed to work out of the box with the current beta? What flags or annotations should I use for testing? Any showcase examples I should try out that are expected to be improved? Regards, Markus -- Markus Mottl http://www.ocaml.info markus.mottl@gmail.com