[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Re: [f-cpu] GCC 3.1 for F-CPU port



> We are planning to do a documentation for our assembler, but it take a lot of
> time to write it (more than to code it in fact ;-).

good. Did anyone attempted to port gas ? It could benefit
from having ELF lin and linker in place ...

> > >So I wanted to say that I have to add all others like
> > >logic, other shifts, rots ....
>
> It will be perhaps a good idea to put it on a cvs, so that some other people
> can help you.

Maybe on holidays :) But yesterday I implemented all possible
generic insns (about 20) using short M4 macro ....

> > >> the 'trick' is maybe to use a "macro" and the instruction
> > >> can be rescheduled by Cédric's assembler ...
>
> I don't think it's a good idea, because the assembler can only do limited
> scheduling. The compiler can schedule thing before allocating register,
> something that the assembler couldn't do.

exactly.

> > i thought that loadconsx could do the trick...
>
> loadconsx has been removed since 0.2.5 or 0.2.6, I think it was because we
> have widden. But I think a loadconsz that will zero the other chunk can be
> useful.

loadconsx seems more useful :( loadconsz can be split to
move r0,r and loadcons.0 with no stall ...

> > >which is without possible stall. Of course the "stall" slot
> > >will be probably used by compiler but not always. Do you
> > >know better code for small negatives ?
>
> I was thinking that 8 bits immediates were signed. For other you need to use
> widden, but I was thinking that it only take one cycle. So I don't understand
> your stall.

manual says (well I had to look into .tex for it) that widen has
1 cycle latency (it is regular EU, not as move or loadcons whose
emits value directly from decode FFs to xbar). Because gcc currently
can't schedule across basic blocks it often stalls at next insn after
widen.

PS: did you took into account my comments from mail named
    "Manual problems and...." especially regarding cor/cand
    and mux ? I'd like to use them in gcc but i'm not sure
    with semantic - search over all mail archives didn't help ..

devik

*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu       in the body. http://f-cpu.seul.org/