From patchwork Fri May 16 23:21:37 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dehao Chen X-Patchwork-Id: 349835 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 5020C14009E for ; Sat, 17 May 2014 09:22:00 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:date:message-id:subject:from:to:cc:content-type; q=dns; s=default; b=kG/dQh4qy+tBlHYWX1ypkZ81TtUBA3gFihNg9ZfrQ2B vQhwNlVScEImJ/8YogBuOiwcKZv5tNM9BUv/3VeW3ZcmL4RgCbS1s6UroXEugQvI d3ofkcjk1Nk1+B/aBtuiJ7xah1G5CUolJhVOAXvuLTF3PeCGhaaVN2PIzD2DT+Ak = DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:date:message-id:subject:from:to:cc:content-type; s=default; bh=tDmZUI7Ypn8SGqwzuZ0Maop5XBM=; b=brTfu+mg/jj5UR2y5 yl4oAv9Kt8ulQsHH6bfGGpIYanCW1dyMzg9IF2e5y5jlDPtOBDwn/PScQaz3S4KR wNe+L1EI5NRYUdhCu+SDCh3fLwpIM/BVCb/U2q8gQgUEzDDisFqjCpnIz3eTPWnL QcchWr9EWhTWd5boXmDiLN5pg8= Received: (qmail 27792 invoked by alias); 16 May 2014 23:21:40 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 27747 invoked by uid 89); 16 May 2014 23:21:40 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.3 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-ie0-f178.google.com Received: from mail-ie0-f178.google.com (HELO mail-ie0-f178.google.com) (209.85.223.178) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Fri, 16 May 2014 23:21:39 +0000 Received: by mail-ie0-f178.google.com with SMTP id rl12so139026iec.37 for ; Fri, 16 May 2014 16:21:37 -0700 (PDT) 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:cc :content-type; bh=uXnfpkHM0mMotR8Qbezx2SFhAMjLD/HvYUP4wxjt2lA=; b=HEyqbmNPJJD2Tir7TrRWIu6BKwZrGOyDlzDHDGGZ1i6V4hLkp+Ac48IYb3NoDeEEJH lSlBn089Ng7uHZmaTi3zfP/0JOgONSSFQZo/42X9CpfbWWgbKuddOgEcZV4cH7cdjBYs DioBBjBIElu2bQDON/Q2oAywVAkkg0ODC9RtMQU3Mt0ux6UEGUvXr8gKXCZIuiie2XbC dGmvY60qTOATa0ogOa9Z5V04aNyxKy3ZrV0Ba1bR7GqlBT4HfDp/pGZQpNjCvtLP+M38 JdPOX4ZLY/GaIm3kodKu1pT9WgnH5fqk6K8pHDCiX9u9sl9jfznG7aDth+EoGOuBJY1y 1HjQ== X-Gm-Message-State: ALoCoQltOb/IdYtMxQBljI0lqnW4qJqDBfYeYWxEUFahWAAPmxlCyPQd+TvXs1gqxO1gCJ0vrC5U MIME-Version: 1.0 X-Received: by 10.42.177.134 with SMTP id bi6mr19463735icb.25.1400282497654; Fri, 16 May 2014 16:21:37 -0700 (PDT) Received: by 10.64.18.180 with HTTP; Fri, 16 May 2014 16:21:37 -0700 (PDT) Date: Fri, 16 May 2014 16:21:37 -0700 Message-ID: Subject: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE From: Dehao Chen To: GCC Patches Cc: Jan Hubicka , David Li X-IsSubscribed: yes Is this patch ok for trunk? Bootstrapped and regression test on-going. Thanks, Dehao 2014-05-16 Dehao Chen * tree-inline.c (initialize_cfun): Ensure count_scale is no larger than REG_BR_PROB_BASE. (copy_cfg_body): Likewise. Index: gcc/tree-inline.c =================================================================== --- gcc/tree-inline.c (revision 210535) +++ gcc/tree-inline.c (working copy) @@ -2190,7 +2190,8 @@ initialize_cfun (tree new_fndecl, tree callee_fnde if (!DECL_RESULT (new_fndecl)) DECL_RESULT (new_fndecl) = DECL_RESULT (callee_fndecl); - if (ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count) + if (ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count + && count < ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count) count_scale = GCOV_COMPUTE_SCALE (count, ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count); @@ -2451,7 +2452,8 @@ copy_cfg_body (copy_body_data * id, gcov_type coun freqs_to_counts (id->src_node, count > in_count ? count : in_count); } - if (ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count) + if (ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count + && count < ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count) count_scale = GCOV_COMPUTE_SCALE (count, ENTRY_BLOCK_PTR_FOR_FN (src_cfun)->count);