The rtx u2 field currently uses a desc/tag pair for GTY. This seems unnecessary though, since the field is specifically supposed to be 32 bits wide on 64-bit hosts and so cannot hold a pointer.
Tested on x86_64-linux-gnu. OK to install? Thanks, Richard gcc/ * rtl.h (rtx_def): Mark u2 as GTY ((skip)). Index: gcc/rtl.h =================================================================== --- gcc/rtl.h 2014-05-10 09:35:05.112643742 +0100 +++ gcc/rtl.h 2014-05-10 14:02:52.349291772 +0100 @@ -354,8 +354,8 @@ struct GTY((chain_next ("RTX_NEXT (&%h)" /* In a CONST_WIDE_INT (aka hwivec_def), this is the number of HOST_WIDE_INTs in the hwivec_def. */ - unsigned GTY ((tag ("CONST_WIDE_INT"))) num_elem:32; - } GTY ((desc ("GET_CODE (&%0)"))) u2; + unsigned num_elem; + } GTY ((skip)) u2; /* The first element of the operands of this rtx. The number of operands and their types are controlled