From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 44800 invoked by alias); 4 May 2015 09:29:34 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 44788 invoked by uid 89); 4 May 2015 09:29:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.6 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW autolearn=no version=3.3.2 X-HELO: mx08-00178001.pphosted.com Received: from mx08-00178001.pphosted.com (HELO mx08-00178001.pphosted.com) (91.207.212.93) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Mon, 04 May 2015 09:29:32 +0000 Received: from pps.filterd (m0046661.ppops.net [127.0.0.1]) by mx08-00178001.pphosted.com (8.14.5/8.14.5) with SMTP id t4499h6S027674; Mon, 4 May 2015 11:29:29 +0200 Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx08-00178001.pphosted.com with ESMTP id 1u619rh7wc-1 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 04 May 2015 11:29:29 +0200 Received: from zeta.dmz-eu.st.com (zeta.dmz-eu.st.com [164.129.230.9]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id DBB403A; Mon, 4 May 2015 09:29:27 +0000 (GMT) Received: from Webmail-eu.st.com (safex1hubcas5.st.com [10.75.90.71]) by zeta.dmz-eu.st.com (STMicroelectronics) with ESMTP id B5B252C0A; Mon, 4 May 2015 09:29:27 +0000 (GMT) Received: from [164.129.122.197] (164.129.122.197) by webmail-eu.st.com (10.75.90.13) with Microsoft SMTP Server (TLS) id 8.3.342.0; Mon, 4 May 2015 11:29:27 +0200 Message-ID: <55473BF4.3010603@st.com> Date: Mon, 04 May 2015 09:29:00 -0000 From: Christian Bruel User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: "Bin.Cheng" , Uros Bizjak CC: Richard Henderson , Jan Hubicka , "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH, x86] Add TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE hook References: <54D21CD9.7040201@st.com> In-Reply-To: Content-Type: multipart/mixed; boundary="------------010209070109050605070207" X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.13.68,1.0.33,0.0.0000 definitions=2015-05-04_01:2015-05-04,2015-05-03,1970-01-01 signatures=0 X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg00200.txt.bz2 --------------010209070109050605070207 Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Content-length: 444 > Hi Christian, > I noticed case gcc.dg/ipa/iinline-attr.c failed on aarch64. The > original patch is x86 specific, while the case is added as general > one. Could you please have a look at this? > > FAIL: gcc.dg/ipa/iinline-attr.c scan-ipa-dump inline > "hooray[^\\n]*inline copy in test" > that is the same latent bug for aarch64: alignment flags are not propagated with attribute optimize ("O2"). testing attached patch Christian --------------010209070109050605070207 Content-Type: text/x-patch; name="align.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="align.patch" Content-length: 1248 Index: config/aarch64/aarch64.c =================================================================== --- config/aarch64/aarch64.c (revision 222627) +++ config/aarch64/aarch64.c (working copy) @@ -6908,18 +6908,6 @@ #endif } - /* If not opzimizing for size, set the default - alignment to what the target wants */ - if (!optimize_size) - { - if (align_loops <= 0) - align_loops = aarch64_tune_params->loop_align; - if (align_jumps <= 0) - align_jumps = aarch64_tune_params->jump_align; - if (align_functions <= 0) - align_functions = aarch64_tune_params->function_align; - } - if (AARCH64_TUNE_FMA_STEERING) aarch64_register_fma_steering (); @@ -6935,6 +6923,18 @@ flag_omit_leaf_frame_pointer = false; else if (flag_omit_leaf_frame_pointer) flag_omit_frame_pointer = true; + + /* If not opzimizing for size, set the default + alignment to what the target wants */ + if (!optimize_size) + { + if (align_loops <= 0) + align_loops = aarch64_tune_params->loop_align; + if (align_jumps <= 0) + align_jumps = aarch64_tune_params->jump_align; + if (align_functions <= 0) + align_functions = aarch64_tune_params->function_align; + } } static struct machine_function * --------------010209070109050605070207--