[SPARC] Simplify const_all_ones_operand

Eric Botcazou ebotcazou@libertysurf.fr
Sat Sep 12 09:31:00 GMT 2015


[Sorry for the delay]

> gen_rtx_CONST_VECTOR ensures that there is a single instance of:
> 
>    (const_vector:M [(const_int -1) ... (const_int -1)])
> 
> for each M, so pointer equality with CONSTM1_RTX is enough.  Also,
> HOST_BITS_PER_WIDE_INT == 32 is doubly dead: HOST_WIDE_INT is always
> 64 bits now, and we always use const_int rather than const_double
> or const_wide_int for all-ones values (or any other value that
> fits in a signed HOST_WIDE_INT).
> 
> This seemed like a better fix than using the helper functions
> that I'm about to post.
> 
> Tested with a cross-compiler and ensured that the predicate was
> still accepting all (-)1 values.  OK to install?
> 
> Thanks,
> Richard
> 
> gcc/
> 	* config/sparc/predicates.md (const_all_ones_operand): Use
> 	CONSTM1_RTX to simplify definition.

OK, thanks.

-- 
Eric Botcazou



More information about the Gcc-patches mailing list