Free up bits in DECLs and TYPEs

Bernd Schmidt bschmidt@redhat.com
Thu Dec 10 17:11:00 GMT 2015


On 12/10/2015 04:04 PM, Michael Matz wrote:
> This isn't stage 3 material really, OTOH fairly low risk.  Anyway, okay
> for trunk now or once stage 1 opens?

This is cool and we want it, but not now. Ok for stage 1, with the 
formatting problems quoted below fixed.


Bernd

> +#define TYPE_ALIGN(NODE) \
> +    (TYPE_CHECK (NODE)->type_common.align \
> +       ? ((unsigned)1) << ((NODE)->type_common.align - 1) \
> +       : 0)

> +#define DECL_ALIGN(NODE) \
> +    (DECL_COMMON_CHECK (NODE)->decl_common.align \
> +       ? ((unsigned)1) << ((NODE)->decl_common.align - 1) \
> +       : 0)

>   #ifdef BIGGEST_FIELD_ALIGNMENT
> -	  DECL_ALIGN (decl)
> -	    = MIN (DECL_ALIGN (decl), (unsigned) BIGGEST_FIELD_ALIGNMENT);
> +	  SET_DECL_ALIGN (decl,
> +	      MIN (DECL_ALIGN (decl), (unsigned) BIGGEST_FIELD_ALIGNMENT));

> +  SET_DECL_ALIGN (fndecl,
> +    FUNCTION_BOUNDARY_P (TREE_TARGET_OPTION (callee_tree)->x_target_flags));



More information about the Gcc-patches mailing list