This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Mips question
- From: Ian Lance Taylor <ian at airs dot com>
- To: <mile dot davidovic at micronasnit dot com>
- Cc: <gcc at gcc dot gnu dot org>
- Date: 02 Feb 2005 10:35:18 -0500
- Subject: Re: Mips question
- References: <200502021539.j12FdW6N006973@krt.neobee.net>
"Mile Davidovic" <mile.davidovic@micronasnit.com> writes:
> Thanks a lot for Your answers.
>
> In mips.md:
>
> Is it enough to add && 0 here:
>
> (define_expand "extv"
> [(set (match_operand 0 "register_operand" "")
> (sign_extract (match_operand:QI 1 "memory_operand" "")
> (match_operand 2 "immediate_operand" "")
> (match_operand 3 "immediate_operand" "")))]
> "!TARGET_MIPS16 && 0"
> ....
There and the other two insns should be almost enough. You will also
have to do something about mips_block_move_straight() in mips.c. I
suspect that the easiest thing to do would be to add "&& 0" in the
condition for movmemsi in mips.md. There isn't much reason to have a
special MIPS version of movmemsi if you don't have lwl and friends.
It would probably be appropriate to submit a patch to add a compiler
option to do this, since I think there are various unlicensed MIPS
clones out there which don't have those instructions.
Ian