This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch] MIPS: mips16e machine patterns - zeb/zeh seb/seh
On Fri, 2005-06-10 at 14:09 +0100, Richard Sandiford wrote:
> David Ung <davidu@mips.com> writes:
> > Looks like we've agreed to leave in the -mips16e option then.
> > here is a revised patch. I've added a few lines in the manual and now
> > use GENERATE_MIPS16E instead, since TARGET_MIPS16E is already generated
> > by mips.opt.
>
> I'm a bit confused here. I thought the two options under discussion were:
>
> (a) -mips16e as a separate flag. You get MIPS16e instructions
> if and only if you use -mips16e.
>
> (b) -mips16 is always used to enable MIPS16(e) instructions.
> The -march setting decides whether MIPS16e is available.
>
> (a) was what your first patch did and (b) was what I mentioned in
> the review (purely for discussion purposes ;).
>
> Like you say, the balance of opinion was that having a separate
> flag was better than (b), but you now seem to have gone for a
> hybrid in which -mips16 sometimes selects MIPS16 and sometimes
> selects MIPS16e. Why did you do that rather than stick with
> your original?
That's because to be MIPS32/32R2/64/64R2 ASE compliant, the full MIPS16e
set is required, not a subset (MIPS16). I've simply made that if the
user gave -mips16 option for mips_isa>=32, they really mean -mips16e.
As in Ian's previous reply, -march=mips32 -mips16 will imply -mips16e.
David.