[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [f-cpu] GCC 3.1 for F-CPU port
> > *beep* false :
> > it means that you have to put one NOP or another instruction
> > before you can use the result.
> > your idea would hold for the "oldfashioned" loadcons
> > but IIRC it was "changed" .... alors maintenant, "faut assumer" :-P
> I'm lost - how is supposed the "newfashioned loadcons" to work ?
> Any importand difference I did miss ?
> devik
The story of loadcons is very long. This year (in june), Michael RIEPE propose
to use a new form loadcons/loadconsp :
loadcons $imm17, reg // similar to the original `loadconsx'
=> reg := sign_extend(imm17)
loadconsp $imm16, reg // `p' means `partial'
=> reg := shift_left(reg, 16) | imm16
But Yann was totally against it, and an other instruction appear in the
discussion :
cshiftl r3, r2, r1 // r1 = r2 << (64 * r3)
cshiftr r3, r2, r1 // r1 = r2 >> (64 * r3)
With this instruction, loadcons[x].[4-15] wasn't needed anymore. And the one
that must be defined in the manual are loadcons[x].[0-3].
Finally the loadconsx wasn't droped by this discussion, but when I reintroduce
it loadcons in the 0.2.7 manual, I forgot to add it (an other opcode was
needed). So it's a lack in the manual (I find some other error in that part
too).
Cedric
*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu in the body. http://f-cpu.seul.org/