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: [PATCH] Fix one-sized FP arrays returning on MIPS

> But:

Okay, but :-)

> (a) The code in calls.c is supposed to handle this case.  It really
>     is a bug that it doesn't.  Regardless of what MIPS does, other ABIs
>     could have this requirement, and the code should deal with it
> properly.

I think patching this code might be dangerous on a release branch.  You could 
inadvertently introduce ABI changes there.  So the safe approach could be to 
patch only the mainline.

> (b) You wanted a patch that could be applied to 3.4.  That means not
>     changing the ABI.  I believe that the callee side does _not_ ICE
>     on single-element float arrays, so this is definitely an ABI change.

Confirmed, it doesn't ICE on the callee side.  However, I don't see how you 
could qualify this as an ABI change, since there is currently no Interface 
for that case.

> (c) The double case is wrong.  Making the float case match it is a
>     step backwards, not forwards.

Agreed.  However you (rightfully) don't want to change that case on the 3.4.x 
branch, so it is now the ABI there.  We'd better be consistent I'd say.

> (d) As you said yourself, the patch to change the ABI would be a kludge.
>     I don't see why we should prefer that over a patch that addresses
>     the ICE directly.

To sum up: less risky, gives better code, brings consistency.  And it would 
not change the ABI, since we currently have no ABI for that case.

Eric Botcazou

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