> Unfortunately the proposed patch fails the testcase from PR41993:
>
> --cut here--
> short retframe_short (void *rframe)
> {
> __builtin_return (rframe);
> }
OK, so that's not only an issue with the mode of the return register, but with
the return register itself. Then the original patch is OK if the comment is
reworked, something like:
/* __builtin_return emits a sequence of loads to all return
registers. One of them might require another mode than
MODE_EXIT, even if it is unrelated to the return value,
so we want to put the final mode switch after it. */
--
Eric Botcazou