This was noticed in the review of copy propagation for aggregates patch, instead of checking for a NULL or a non-ssa name of vuse, we should instead check if it the vuse is a default name and stop then.
Bootstrapped and tested on x86_64-linux-gnu. gcc/ChangeLog: * tree-ssa-forwprop.cc (optimize_memcpy_to_memset): Change check from NULL/non-ssa name to default name. Signed-off-by: Andrew Pinski <quic_apin...@quicinc.com> --- gcc/tree-ssa-forwprop.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/tree-ssa-forwprop.cc b/gcc/tree-ssa-forwprop.cc index 4c048a9a298..e457a69ed48 100644 --- a/gcc/tree-ssa-forwprop.cc +++ b/gcc/tree-ssa-forwprop.cc @@ -1226,7 +1226,8 @@ optimize_memcpy_to_memset (gimple_stmt_iterator *gsip, tree dest, tree src, tree gimple *defstmt; unsigned limit = param_sccvn_max_alias_queries_per_access; do { - if (vuse == NULL || TREE_CODE (vuse) != SSA_NAME) + /* If the vuse is the default definition, then there is no stores beforhand. */ + if (SSA_NAME_IS_DEFAULT_DEF (vuse)) return false; defstmt = SSA_NAME_DEF_STMT (vuse); if (is_a <gphi*>(defstmt)) -- 2.43.0