From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21428 invoked by alias); 25 Jan 2014 20:34:45 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 21367 invoked by uid 89); 25 Jan 2014 20:34:44 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wg0-f52.google.com Received: from mail-wg0-f52.google.com (HELO mail-wg0-f52.google.com) (74.125.82.52) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Sat, 25 Jan 2014 20:34:42 +0000 Received: by mail-wg0-f52.google.com with SMTP id b13so4268109wgh.7 for ; Sat, 25 Jan 2014 12:34:39 -0800 (PST) X-Received: by 10.181.12.20 with SMTP id em20mr7447343wid.0.1390682079471; Sat, 25 Jan 2014 12:34:39 -0800 (PST) Received: from localhost ([2.28.234.162]) by mx.google.com with ESMTPSA id p1sm16749137wie.1.2014.01.25.12.34.38 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 25 Jan 2014 12:34:38 -0800 (PST) From: Richard Sandiford To: "Steve Ellcey " Mail-Followup-To: "Steve Ellcey " ,, , rdsandiford@googlemail.com Cc: , Subject: Re: GCC Mips has 31 Masks in mips.opt References: <08ead5c2-5777-4f50-a607-e63202286db6@BAMAIL02.ba.imgtec.org> Date: Sat, 25 Jan 2014 21:56:00 -0000 In-Reply-To: <08ead5c2-5777-4f50-a607-e63202286db6@BAMAIL02.ba.imgtec.org> (Steve Ellcey's message of "Fri, 24 Jan 2014 15:20:42 -0800") Message-ID: <87sisb4x7n.fsf@talisman.default> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-SW-Source: 2014-01/txt/msg00264.txt.bz2 "Steve Ellcey " writes: > Richard, > > While experimenting with a local GCC change I added two new Masks to > mips.opt and ran into a build failure about too many masks: > > ./options.h:4172:2: error: #error too many target masks > > It looks like we already have 31 Masks in the MIPS mips.opt file and 32 > is the limit. It looks like the fix for this is to put some of the Masks > in a variable other then target_flags with the Var() syntax. I see i386 > and rs6000 doing this with ix86_isa_flags and rs6000_isa_flags. > > Now I could just put my new flags (and any other new flags that come > up) in a separate variable, but I was wondering if we wanted to > move a set of existing Masks to a new variable instead of just using > a first-come first-serve approach to what goes into the default > target_flags and what goes into a new flags variable. Yeah, I've been trying to use separate variables for new flags. That's why a lot of the MIPS options have discrete TARGET_=E2=80=A6 variabl= es (defined via Var(TARGET_=E2=80=A6)). target_flags should only really be ne= eded for options whose defaults are controlled by config.gcc. E.g. from a quick look, -mdsp, -mdspr2, -mfp-exceptions, -mfused-madd and -mips3d don't need to be masks and could easily be converted to Var(TARGET_=E2=80=A6). That's pre-approved it works. Others could be moved too with a bit more effort, but hopefully those 5 will be enough for now. Thanks, Richard