*D.1663_44 = VIEW_CONVERT_EXPR<struct DB_LSN>(__tmp$B0F64_59);
which is seen as a struct copy. */
if (TREE_CODE (base1) == SSA_NAME
- || TREE_CODE (base2) == SSA_NAME
|| TREE_CODE (base1) == CONST_DECL
+ || TREE_CODE (base1) == CONSTRUCTOR
+ || TREE_CODE (base1) == ADDR_EXPR
+ || CONSTANT_CLASS_P (base1)
+ || TREE_CODE (base2) == SSA_NAME
|| TREE_CODE (base2) == CONST_DECL
- || TREE_CODE (base1) == STRING_CST
- || TREE_CODE (base2) == STRING_CST
- || is_gimple_min_invariant (base1)
- || is_gimple_min_invariant (base2))
+ || TREE_CODE (base2) == CONSTRUCTOR
+ || TREE_CODE (base2) == ADDR_EXPR
+ || CONSTANT_CLASS_P (base2))
return false;
/* We can end up refering to code via function and label decls.
As we likely do not properly track code aliases conservatively
bail out. */
if (TREE_CODE (base1) == FUNCTION_DECL
- || TREE_CODE (base2) == FUNCTION_DECL
|| TREE_CODE (base1) == LABEL_DECL
+ || TREE_CODE (base2) == FUNCTION_DECL
|| TREE_CODE (base2) == LABEL_DECL)
return true;
{
tree lhs = gimple_call_lhs (stmt);
if (lhs
- && !is_gimple_reg (lhs))
+ && TREE_CODE (lhs) != SSA_NAME)
{
ao_ref r;
ao_ref_init (&r, lhs);
else if (gimple_assign_single_p (stmt))
{
tree lhs = gimple_assign_lhs (stmt);
- if (!is_gimple_reg (lhs))
+ if (TREE_CODE (lhs) != SSA_NAME)
{
ao_ref r;
- ao_ref_init (&r, gimple_assign_lhs (stmt));
+ ao_ref_init (&r, lhs);
return refs_may_alias_p_1 (ref, &r, true);
}
}