autoinc / postinc not used
Oleg Endo
oleg.endo@t-online.de
Tue Jan 16 23:52:20 GMT 2024
Hi,
On Tue, 2024-01-16 at 21:02 +0100, stefan@franke.ms wrote:
> Hi all,
>
>
>
> I work a lot with the good old m68k target where post-increment is supported, and I was surprised that there almost no post-increments are used in the generated code.
>
> This simple code:
>
>
>
> void memclr (int length, long * ptr) {
>
> for(;length--;){
>
> *ptr++= 0;
>
> }
>
> }
>
>
>
> does not use post-increments on AVR or SH. See also https://godbolt.org/z/fTvdv65rr
>
>
This issue has been around for a very long time. I guess auto-inc is not
important enough on modern architectures to be of a major concern.
On SH{1,2,3,4} post-inc is only available for mem stores, not for mem loads.
SH2A adds support for stores with post-inc. You have to specify "-mb -m2a"
for that, as the default target of sh-elf is SH1 (-m1). But yeah, it's also
not utilized in this case.
Cheers,
Oleg
More information about the Gcc-help
mailing list