[mips sim]: Fix check for negative dmult operands
Andrew Cagney
ac131313@redhat.com
Sun Jun 15 17:04:00 GMT 2003
> Ping?
>
> Richard Sandiford <rsandifo@redhat.com> writes:
>
>> do_dmultx tests for negative operands with:
>>
>> if (op1 < 0)
>> {
>> op1 = - op1;
>> ++sign;
>> }
>> if (op2 < 0)
>> {
>> op2 = - op2;
>> ++sign;
>> }
>>
>> but op1 and op2 are unsigned...
>>
>> The patch below fixes some gcc.c-torture/execute/950426-2.c failures
>> on mipsisa64-elf. Please install if OK.
(I'm not ment to be maintaing MIPS sim any more :-)
Yes, just add a comment reminding the reader that op1 is already 64 bits.
Andrew
>> Richard
>>
>>
>> * mips.igen (do_dmultx): Fix check for negative operands.
>>
>> Index: sim/mips/mips.igen
>> ===================================================================
>> RCS file: /cvs/src/src/sim/mips/mips.igen,v
>> retrieving revision 1.53
>> diff -u -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.53 mips.igen
>> --- sim/mips/mips.igen 14 Jan 2003 19:01:41 -0000 1.53
>> +++ sim/mips/mips.igen 7 Jun 2003 10:14:00 -0000
>> @@ -1347,12 +1350,12 @@ 000000,5.RS,5.RT,0000000000,011011:SPECI
>> sign = 0;
>> if (signed_p)
>> {
>> - if (op1 < 0)
>> + if ((signed64) op1 < 0)
>> {
>> op1 = - op1;
>> ++sign;
>> }
>> - if (op2 < 0)
>> + if ((signed64) op2 < 0)
>> {
>> op2 = - op2;
>> ++sign;
>
>
More information about the Gdb-patches
mailing list