From patchwork Mon Feb 7 06:09:40 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chung-Lin Tang X-Patchwork-Id: 82078 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 07098B7106 for ; Mon, 7 Feb 2011 17:09:57 +1100 (EST) Received: (qmail 640 invoked by alias); 7 Feb 2011 06:09:55 -0000 Received: (qmail 630 invoked by uid 22791); 7 Feb 2011 06:09:54 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL, BAYES_00, TW_SV, T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 07 Feb 2011 06:09:45 +0000 Received: (qmail 622 invoked from network); 7 Feb 2011 06:09:44 -0000 Received: from unknown (HELO ?192.168.1.16?) (cltang@127.0.0.2) by mail.codesourcery.com with ESMTPA; 7 Feb 2011 06:09:44 -0000 Message-ID: <4D4F8CA4.7020601@codesourcery.com> Date: Mon, 07 Feb 2011 14:09:40 +0800 From: Chung-Lin Tang User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.13) Gecko/20101207 Lightning/1.0b2 Thunderbird/3.1.7 MIME-Version: 1.0 To: gcc-patches CC: Richard Earnshaw , Revital1 Eres Subject: [patch, ARM] Fix minipool ICE 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, the *arm_zero_extendhisi2[_v6] patterns currently do not have the constant pool range attributes specified, causing a minipool ICE case. This patch adds the needed pool_range/neg_pool_range settings. Reported originally from https://bugs.launchpad.net/bugs/711819 , also happens to occur when building ffmpeg svn trunk. Ok for trunk? Thanks, Chung-Lin 2011-02-07 Chung-Lin Tang * config/arm/arm.md (*arm_zero_extendhisi2): Set pool_range, neg_pool_range attributes for ldrh alternative. (*arm_zero_extendhisi2_v6): Same. Index: config/arm/arm.md =================================================================== --- config/arm/arm.md (revision 169875) +++ config/arm/arm.md (working copy) @@ -4202,7 +4202,9 @@ # ldr%(h%)\\t%0, %1" [(set_attr "type" "alu_shift,load_byte") - (set_attr "predicable" "yes")] + (set_attr "predicable" "yes") + (set_attr "pool_range" "*,256") + (set_attr "neg_pool_range" "*,244")] ) (define_insn "*arm_zero_extendhisi2_v6" @@ -4213,7 +4215,9 @@ uxth%?\\t%0, %1 ldr%(h%)\\t%0, %1" [(set_attr "type" "alu_shift,load_byte") - (set_attr "predicable" "yes")] + (set_attr "predicable" "yes") + (set_attr "pool_range" "*,256") + (set_attr "neg_pool_range" "*,244")] ) (define_insn "*arm_zero_extendhisi2addsi"