2009/3/13 Paolo Bonzini <bonz...@gnu.org>:
> These are all the !SHIFT_COUNT_TRUNCATED targets.
>
> For 4.5 I would like to improve our RTL canonicalization so that no
> out-of-range shifts are ever in the RTL representation.
>
> This in turn means that the description given by SHIFT_COUNT_TRUNCATED
> must be exact.  Right now !SHIFT_COUNT_TRUNCATED means "I don't know",
> I want it to mean "it is never truncated".
>
> I would like to know whether for avr,bfin,cris,frv,h8300,pdp11,rs6000
> (which define SHIFT_COUNT_TRUNCATED as 0) and for mcore,sh,vax (which
> do not define it at all) it is right that shift counts are never
> truncated.

AVR target do not define SHIFT_COUNT_TRUNCATED at all.

> In addition, for arm and m68k I'd like to know whether bitfield
> instructions truncate the bit position the same as shifts (8 bits for
> arm, 6 bits for m68k).
>
> This information is particularly important for targets that do not
> have a simulator in src.

AVR don't have a hardware instructions for variable shifts.
While AVR port emulate such shifts the 8bits register used for shift count.
AVR port truncate shift counter to 8 bits.

Denis.

Reply via email to