From patchwork Tue Jul 17 09:20:08 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ramana Radhakrishnan X-Patchwork-Id: 171360 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]) by ozlabs.org (Postfix) with SMTP id 12D422C01D5 for ; Tue, 17 Jul 2012 19:20:28 +1000 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1343121629; h=Comment: DomainKey-Signature:Received:Received:Received:Received: MIME-Version:Received:Received:Date:Message-ID:Subject:From:To: Cc:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=RmIPKdG m2FlfR12RXS1U2yplF8I=; b=ASLAEi1KKN+JozJSTaVxwpD9vwXyfGeL5y/LSMY VlD6UlUBDqpyVcA3QOzv7yc0X3G5TQtCERX2XaZK6KbvAhT62RJPhr4YyBTaE4Oa LGFX7pyWNNo8nrTbc83W4iUbGSlhyoadHuZxAECDSmWCvDaKb1wUMFZhvFINmalm fEH0= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:X-Google-DKIM-Signature:MIME-Version:Received:Received:Date:Message-ID:Subject:From:To:Cc:Content-Type:X-Gm-Message-State:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=DNamb92a6t5orv5zG4yuCcESfKz4BHE6cO4RFPd+eHUKagqWRVvryEh+YoNBtO Ti/g5PK+tZO6VREqpk6b779kHLWR45HA9nUJZUT/jNs9ecqO4TxQueTec+nO9fRs eIbtBSbyrfsKw9xa/Z1YPy1covCLs9nRLS54DG2t+pD04=; Received: (qmail 30254 invoked by alias); 17 Jul 2012 09:20:23 -0000 Received: (qmail 30244 invoked by uid 22791); 17 Jul 2012 09:20:22 -0000 X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL, BAYES_00, KHOP_RCVD_UNTRUST, RCVD_IN_DNSWL_LOW, RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org Received: from mail-vc0-f175.google.com (HELO mail-vc0-f175.google.com) (209.85.220.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 17 Jul 2012 09:20:09 +0000 Received: by vcbfy27 with SMTP id fy27so112678vcb.20 for ; Tue, 17 Jul 2012 02:20:08 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:date:message-id:subject:from:to:cc:content-type :x-gm-message-state; bh=kThJEj3qz2XjVvjGjxgc0+ki7dAqZ1juVV/uPZ3JJ+w=; b=ibQNBbTc5OtjTx/YUgYHksblc2aAz6pxVVGTIUXe1MKLPeVlOUOog4RvwKabCruGPa oGSu7m62OwoRXwW+Fhza5XSz0Ovd2SxtD7HjAg750KqfpeVCp5L2bq/XT9/N5IL51LqJ n0jW/MgzJLHMJM8Vk2f5qMB/MCYVBsy+R6hqPyCcQrgY6hVFh6Gq2tqlunVd9Z+6oqws LEUPp1S5zJNWWgp9nm5fBAFovWQ2ZtcwoJQlVdmvZWJUGhEJEtwhN/dVCAQb6SIeB4rA VkCxhgJnpYVt6V4Epp3OAlR0bBwwIlljlJAHfeY5V9OJK6IfGxYCfdyr7Y/a52k2MOVY iQmg== MIME-Version: 1.0 Received: by 10.52.88.234 with SMTP id bj10mr705830vdb.48.1342516808672; Tue, 17 Jul 2012 02:20:08 -0700 (PDT) Received: by 10.52.185.201 with HTTP; Tue, 17 Jul 2012 02:20:08 -0700 (PDT) Date: Tue, 17 Jul 2012 10:20:08 +0100 Message-ID: Subject: [Patch ARM] Turn on sched-pressure by default on the ARM architecture. From: Ramana Radhakrishnan To: gcc-patches Cc: Patch Tracking , Ulrich Weigand X-Gm-Message-State: ALoCoQmlFpdoQ26eVkflcQOPv1aDDdZnsOUuO4DI+D4xqMdPRJ7p+hlPuTi2nKVOpWPVx7vF4xPH X-IsSubscribed: yes 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 Hi, After benchmarking on a number of cores and measuring good improvements across the board on the Cortex-A9 , on some cores (Cortex M) we saw no great improvements but no regressions either, we should just turn this on by default for the ARM port as in general it appears to give us a good win. Theoretically there's no reason why this will not benefit us by default on single issue machines as it prevents the first sched pass from having excessive register pressure. I have turned this on by default for O1_PLUS level of optimization so that if someone uses -O1 -fschedule-insns they get the benefit of having sched-pressure on by default. Applied. Thanks, Ramana 2012-07-17 Ramana Radhakrishnan Ulrich Weigand * common/config/arm/arm-common.c (arm_option_optimization_table): Enable -fsched-pressure by default while optimizing. * config/arm/arm.c (arm_option_override): Use the alternate scheduler pressure algorithm by default. Index: gcc/common/config/arm/arm-common.c =================================================================== --- gcc/common/config/arm/arm-common.c (revision 189562) +++ gcc/common/config/arm/arm-common.c (working copy) @@ -35,6 +35,7 @@ /* Enable section anchors by default at -O1 or higher. */ { OPT_LEVELS_1_PLUS, OPT_fsection_anchors, NULL, 1 }, { OPT_LEVELS_1_PLUS, OPT_fomit_frame_pointer, NULL, 1 }, + { OPT_LEVELS_1_PLUS, OPT_fsched_pressure, NULL, 1 }, { OPT_LEVELS_NONE, 0, NULL, 0 } }; Index: gcc/config/arm/arm.c =================================================================== --- gcc/config/arm/arm.c (revision 189562) +++ gcc/config/arm/arm.c (working copy) @@ -2009,6 +2009,11 @@ global_options.x_param_values, global_options_set.x_param_values); + /* Use the alternative scheduling-pressure algorithm by default. */ + maybe_set_param_value (PARAM_SCHED_PRESSURE_ALGORITHM, 2, + global_options.x_param_values, + global_options_set.x_param_values); + /* Register global variables with the garbage collector. */ arm_add_gc_roots (); }