From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18589 invoked by alias); 26 Feb 2011 09:38:37 -0000 Received: (qmail 18580 invoked by uid 22791); 26 Feb 2011 09:38:36 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST X-Spam-Check-By: sourceware.org Received: from mail-ww0-f43.google.com (HELO mail-ww0-f43.google.com) (74.125.82.43) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 26 Feb 2011 09:38:28 +0000 Received: by wwe15 with SMTP id 15so2288898wwe.12 for ; Sat, 26 Feb 2011 01:38:26 -0800 (PST) Received: by 10.227.30.84 with SMTP id t20mr3018567wbc.156.1298713106477; Sat, 26 Feb 2011 01:38:26 -0800 (PST) Received: from localhost (rsandifo.gotadsl.co.uk [82.133.89.107]) by mx.google.com with ESMTPS id u9sm1343768wbg.18.2011.02.26.01.38.24 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 26 Feb 2011 01:38:25 -0800 (PST) From: Richard Sandiford To: "Maciej W. Rozycki" Mail-Followup-To: "Maciej W. Rozycki" ,binutils@sourceware.org, rdsandiford@googlemail.com Cc: binutils@sourceware.org Subject: Re: [PATCH] MIPS/GAS: Disable branch relaxation for BPOSGE32/64 References: Date: Sat, 26 Feb 2011 09:38:00 -0000 In-Reply-To: (Maciej W. Rozycki's message of "Fri, 25 Feb 2011 00:57:38 +0000 (GMT)") Message-ID: <87hbbrqgog.fsf@firetop.home> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2011-02/txt/msg00361.txt.bz2 "Maciej W. Rozycki" writes: > Here's a change to disable branch relaxation for the BPOSGE32 and > BPOSGE64 MIPS DSP instructions. They have no complementing branches and > therefore cannot be relaxed using our current infrastructure -- an extra > unconditional branch over the long jump would have to be produced and I > think there's little demand for such a feature, hence my simple change. Agreed. > 2011-02-21 Maciej W. Rozycki > > gas/ > * config/tc-mips.c (append_insn): Disable branch relaxation for > DSP instructions. > > gas/testsuite/ > * gas/mips/relax-bposge.l: New test for DSP branch relaxation. > * gas/mips/relax-bposge.s: Source for the new test. > * gas/mips/mips.exp: Run the new test. OK. For the record, I wasn't sure at first whether keying off ISA_DSP* was conceptually a good idea, because there doesn't seem to be anything inherent in the DSP extensions that would prevent complementing branches from being defined in DSPr3. Of course, if that happened, the change is still conservatively correct. We'd just lack a potential feature for those branches. But I was wondering whether it would be better to have a separate flag for branches without complements. I agree that that's probably overkill as things stand though. If we ever need to use the condition elsewhere, or if more branches of this kind are added, then we can add a separate flag at that stage. Thanks, Richard