> Another improvement is introduction of SUBREG_PROMOTED_UNSIGNED_P
> predicate in the same area to handle paradoxical SUBREGs. When SUBREG
> satisfies this predicate, the compiler guarantees, that excess bits
> are zero (see the documentation). This is exaclty what we want in
> registers that form the address. In theory, we can allow registers of
> any integer mode here, but in practice only DImode subreg of SImode
> register is important.

Note that SUBREG_PROMOTED_UNSIGNED_P wasn't designed for paradoxical subregs, 
but for regular subregs (typically of word-sized objects).  You should check 
that the ones created for x32 (because of POINTERS_EXTEND_UNSIGNED I guess) 
are legitimate.

-- 
Eric Botcazou

Reply via email to