This is a minor cleanup to bail out early if the result of __builtin_object_size is not assigned to anything and avoid initializing the object size arrays.
gcc/ChangeLog: * tree-object-size (object_sizes_execute): Consolidate LHS null check and do it early. Signed-off-by: Siddhesh Poyarekar <siddh...@gotplt.org> --- gcc/tree-object-size.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/gcc/tree-object-size.c b/gcc/tree-object-size.c index 6a4dc724f34..46a976dfe10 100644 --- a/gcc/tree-object-size.c +++ b/gcc/tree-object-size.c @@ -1298,6 +1298,10 @@ object_sizes_execute (function *fun, bool insert_min_max_p) if (!gimple_call_builtin_p (call, BUILT_IN_OBJECT_SIZE)) continue; + tree lhs = gimple_call_lhs (call); + if (!lhs) + continue; + init_object_sizes (); /* If insert_min_max_p, only attempt to fold @@ -1312,11 +1316,9 @@ object_sizes_execute (function *fun, bool insert_min_max_p) { unsigned HOST_WIDE_INT object_size_type = tree_to_uhwi (ost); tree ptr = gimple_call_arg (call, 0); - tree lhs = gimple_call_lhs (call); if ((object_size_type == 1 || object_size_type == 3) && (TREE_CODE (ptr) == ADDR_EXPR - || TREE_CODE (ptr) == SSA_NAME) - && lhs) + || TREE_CODE (ptr) == SSA_NAME)) { tree type = TREE_TYPE (lhs); unsigned HOST_WIDE_INT bytes; @@ -1339,10 +1341,6 @@ object_sizes_execute (function *fun, bool insert_min_max_p) continue; } - tree lhs = gimple_call_lhs (call); - if (!lhs) - continue; - result = gimple_fold_stmt_to_constant (call, do_valueize); if (!result) { -- 2.31.1