tree-ssa-alias.c (nonoverlapping_component_refs_p): Also truncate access path on BIT_FIELD_REFs.

* tree-ssa-alias.c (nonoverlapping_component_refs_p): Also truncate
	access path on BIT_FIELD_REFs.

From-SVN: r272380
This commit is contained in:
Jan Hubicka 2019-06-17 12:22:39 +02:00 committed by Jan Hubicka
parent c98d845f30
commit e67ddda63c
2 changed files with 9 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2019-06-17 Jan Hubicka <hubicka@ucw.cz>
* tree-ssa-alias.c (nonoverlapping_component_refs_p): Also truncate
access path on BIT_FIELD_REFs.
2019-06-17 Martin Liska <mliska@suse.cz>
PR ipa/90874

View File

@ -1268,7 +1268,8 @@ nonoverlapping_component_refs_p (const_tree x, const_tree y)
if (TREE_CODE (type) == RECORD_TYPE)
fieldsx.safe_push (field);
}
else if (TREE_CODE (x) == VIEW_CONVERT_EXPR)
else if (TREE_CODE (x) == VIEW_CONVERT_EXPR
|| TREE_CODE (x) == BIT_FIELD_REF)
fieldsx.truncate (0);
x = TREE_OPERAND (x, 0);
}
@ -1284,7 +1285,8 @@ nonoverlapping_component_refs_p (const_tree x, const_tree y)
if (TREE_CODE (type) == RECORD_TYPE)
fieldsy.safe_push (TREE_OPERAND (y, 1));
}
else if (TREE_CODE (y) == VIEW_CONVERT_EXPR)
else if (TREE_CODE (y) == VIEW_CONVERT_EXPR
|| TREE_CODE (y) == BIT_FIELD_REF)
fieldsy.truncate (0);
y = TREE_OPERAND (y, 0);
}