[PATCH] include MEM_REF type in tree dumps (PR 90676)
Jakub Jelinek
jakub@redhat.com
Mon Jun 10 19:29:00 GMT 2019
On Mon, Jun 10, 2019 at 01:23:28PM -0600, Martin Sebor wrote:
> + else if (integer_zerop (TREE_OPERAND (node, 1))
> + /* Dump the types of INTEGER_CSTs explicitly, for we can't
> + infer them and MEM_ATTR caching will share MEM_REFs
> + with differently-typed op0s. */
> + && TREE_CODE (TREE_OPERAND (node, 0)) != INTEGER_CST
> + /* Released SSA_NAMES have no TREE_TYPE. */
> + && TREE_TYPE (TREE_OPERAND (node, 0)) != NULL_TREE
> + /* Same pointer types, but ignoring POINTER_TYPE vs.
> + REFERENCE_TYPE. */
> + && (TREE_TYPE (TREE_TYPE (TREE_OPERAND (node, 0)))
> + == TREE_TYPE (TREE_TYPE (TREE_OPERAND (node, 1))))
> + && (TYPE_MODE (TREE_TYPE (TREE_OPERAND (node, 0)))
> + == TYPE_MODE (TREE_TYPE (TREE_OPERAND (node, 1))))
> + && (TYPE_REF_CAN_ALIAS_ALL (TREE_TYPE (TREE_OPERAND (node, 0)))
> + == TYPE_REF_CAN_ALIAS_ALL (TREE_TYPE (TREE_OPERAND (node, 1))))
> + /* Same value types ignoring qualifiers. */
> + && (TYPE_MAIN_VARIANT (TREE_TYPE (node))
> + == TYPE_MAIN_VARIANT
> + (TREE_TYPE (TREE_TYPE (TREE_OPERAND (node, 1)))))
You should be using types_compatible_p rather than type equality, that is
all GIMPLE cares about.
Jakub
More information about the Gcc-patches
mailing list