> PSImode is 20 bits, fits in a 20 bit register, and uses 20 bit operations.

Then why do you need this change?

> -      TYPE_SIZE (type) = bitsize_int (GET_MODE_BITSIZE (TYPE_MODE (type)));
> +      TYPE_SIZE (type) = bitsize_int (GET_MODE_PRECISION (TYPE_MODE
> (type))); TYPE_SIZE_UNIT (type) = size_int (GET_MODE_SIZE (TYPE_MODE
> (type))); break;

What are GET_MODE_BITSIZE and GET_MODE_PRECISION for PSImode?

> If a type is 17-20 bits, PSImode is chosen.  If it's 21 bits or
> larger, SImode is chosen.  If it's 16 or fewer bits, HImode is chosen.

Size or precision?  That's the crux of the matter.

-- 
Eric Botcazou

Reply via email to