AVR: CC0 to CCmode conversion
Denis Chertykov
denisc@overta.ru
Fri Mar 18 23:19:00 GMT 2005
Paul Schlie <schlie@comcast.net> writes:
> > Denis wrote:
> > I have converted the AVR port from CC0 to CCmode.
> > But may be I have converted the port in wrong way.
> > (It's because I was interested in *this* way.)
> >
> > I have used CCmode register and havn't added the
> > '(clobber (reg:QI CC_REGNUM))' to any insn that really clobber the
> > CC_REGNUM just because AVR is'n needed in scheduling.
> > I think that sequence of compare + cond-jump will exists in any
> > compiler pass.
> > The port was successfully tested without new regressions.
> > What do you (MAINTAINERS) think about this ?
>
> Interesting:
>
> - might you be able to post the resulting port files for review?
patch against cvs:
http://home.overta.ru/users/denisc/cc0-ccmode/cc0-ccmode.patch.gz
new port:
http://home.overta.ru/users/denisc/cc0-ccmode/avr.tgz
> - are you proposing that all conditional branches then required to be
> explicitly paired with a corresponding immediately previous compare
> instruction?
I founded that GCC isn't break cmp+jump sequences.
(My port havn't scheduling.)
> (if so, how is this a good thing observing that it's fairly typical
> for most conditional branches to be naturally based on comparisons
> against 0 resulting from the immediately preceding operation, which
> would have otherwise not required an explicit compare?)
I think that it's not good.
Denis.
More information about the Gcc
mailing list