From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13694 invoked by alias); 27 Jul 2010 19:45:27 -0000 Received: (qmail 13602 invoked by alias); 27 Jul 2010 19:45:11 -0000 Date: Tue, 27 Jul 2010 19:45:00 -0000 Message-ID: <20100727194511.13601.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug middle-end/42574] [4.3/4.4/4.5/4.6 Regression] Address of global variable is calculated multiple times (missed CSE) In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "mkuvyrkov at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-07/txt/msg02997.txt.bz2 ------- Comment #14 from mkuvyrkov at gcc dot gnu dot org 2010-07-27 19:45 ------- Subject: Bug 42574 Author: mkuvyrkov Date: Tue Jul 27 19:44:51 2010 New Revision: 162595 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=162595 Log: PR target/42495 PR middle-end/42574 * config/arm/arm.c (legitimize_pic_address): Use gen_calculate_pic_address pattern to emit calculation of PIC address. (will_be_in_index_register): New function. (arm_legitimate_address_outer_p, thumb2_legitimate_address_p,) (thumb1_legitimate_address_p): Use it provided !strict_p. * config/arm/arm.md (calculate_pic_address): New expand and split. Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/arm.c trunk/gcc/config/arm/arm.md -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42574