Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 40990 invoked from network); 23 May 2008 12:10:16 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 May 2008 12:10:16 -0000 Received: (qmail 34952 invoked by uid 500); 23 May 2008 12:10:18 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 34934 invoked by uid 500); 23 May 2008 12:10:18 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 34925 invoked by uid 99); 23 May 2008 12:10:18 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 May 2008 05:10:18 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 May 2008 12:09:39 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id D7A1C234C121 for ; Fri, 23 May 2008 05:09:55 -0700 (PDT) Message-ID: <50379262.1211544595879.JavaMail.jira@brutus> Date: Fri, 23 May 2008 05:09:55 -0700 (PDT) From: "Dmitry Pronichkin (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-5837) [drlvm][jit][opt] Code layout and alignment improvements In-Reply-To: <418280549.1211451835760.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-5837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dmitry Pronichkin updated HARMONY-5837: --------------------------------------- Attachment: (was: alignment.patch) > [drlvm][jit][opt] Code layout and alignment improvements > -------------------------------------------------------- > > Key: HARMONY-5837 > URL: https://issues.apache.org/jira/browse/HARMONY-5837 > Project: Harmony > Issue Type: Improvement > Environment: IA32 > Reporter: Dmitry Pronichkin > Attachments: alignment.patch, Ia32LayoutOpt.cpp > > > Code layout (control flow graph linearization) "bottom-up" algorithm was optimized. Less probable branches were carried out of main code layout order by algorithm and it was not always good (tested on microbenches). New codegen pass "layout_opt" inserts such branches back depending on branch probability and block size (these parameters are set through configuration). > Code alignment improvements include two heuristics. First is to align basic blocks that are much hotter than their layout predecessors (threshold is set in configuration). Second is to align basic blocks unreachable from their layout predecessors. These heuristics are implemented in emitter and alignment for loop headers was eliminated because it's a special case of first alignment heuristic. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.