This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCC Mips has 31 Masks in mips.opt

"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_â variables
(defined via Var(TARGET_â)).  target_flags should only really be needed
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_â).  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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]