This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] [MIPS] Fix operands for microMIPS SW16, SH16 and SB16
- From: "Maciej W. Rozycki" <macro at codesourcery dot com>
- To: Richard Sandiford <rdsandiford at googlemail dot com>
- Cc: Matthew Fortune <Matthew dot Fortune at imgtec dot com>, "Moore, Catherine" <Catherine_Moore at mentor dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 15 Apr 2014 12:28:04 +0100
- Subject: Re: [PATCH] [MIPS] Fix operands for microMIPS SW16, SH16 and SB16
- Authentication-results: sourceware.org; auth=none
- References: <FD3DCEAC5B03E9408544A1E416F1124201497ED8A4 at NA-MBX-04 dot mgc dot mentorg dot com> <6D39441BF12EF246A7ABCE6654B023534E17E5 at LEMAIL01 dot le dot imgtec dot org> <87zjjrxb11 dot fsf at talisman dot default> <87r452ygnm dot fsf at talisman dot default> <alpine dot DEB dot 1 dot 10 dot 1404141725530 dot 15259 at tp dot orcam dot me dot uk> <8761ma2ab7 dot fsf at sandifor-thinkpad dot stglab dot manchester dot uk dot ibm dot com>
On Tue, 15 Apr 2014, Richard Sandiford wrote:
> > I believe you need to adjust constraints to ensure constant 0 is known to
> > produce a 16-bit instruction encoding where possible. Otherwise you'll
> > end up with suboptimal code when the instruction is in a branch delay
> > slot.
>
> Yeah, it'd be good to do that too (although this is a preexisting problem).
Well, it depends on how you look at the problem being solved here -- if
it is "for SW16, SH16 and SB16 GCC produces broken code for the `s0'
source register", then indeed it is, whereas if it is "GCC does not handle
the source register set for SW16, SH16 and SB16 correctly", then it is a
part of the same problem, not completely corrected. I can live with that
until 4.10/4.9.1 though if you prefer.
> I'm relying on you guys to do the microMIPS stuff though -- I don't have
> a way of testing it.
An assembly/objdump test is enough to cover this, so you've got all tools
at hand, although I understand you may not be inclined to rush working on
it. ;)
Maciej