This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: Question on gcc RTL and scheduling step.
[ Top-post do please not. ]
On Wed, Feb 26, 2020 at 04:11:06PM +0100, Henri Cloetens wrote:
> - On the issue of the restore of R18 in mode DI, it seems from
> analysing the log file that the compiler does not understand this
> also affects R19. This looks a bug to me ??. Anyway, I have resolved
> this, by adding a 'clobber' statement to R19 when R18 is written
> in mode 'DI'.
You haven't showed any evidence like this, so it's hard for use to help
you with this at all. *Is* DImode a two register mode in your backend?
> - The other issue, I have changed ((set) (pc) (return)) to (return),
> but, as far as I understand the logfiles, and the documentation,
> both forms are equivalent. Anyway, after fixing the first issue, I do
> not see the second issue any more.
The docs say
Note that an insn pattern of @code{(return)} is logically equivalent to
@code{(set (pc) (return))}, but the latter form is never used.
If something is never used, then not everything might expect that form,
that's all.
Segher