if (walk_tree (&t, find_single_pointer_decl_1, &decl, NULL))
{
- /* find_single_pointer_decl_1 returns a non-zero value, causing
- walk_tree to return a non-zero value, to indicate that it
+ /* find_single_pointer_decl_1 returns a nonzero value, causing
+ walk_tree to return a nonzero value, to indicate that it
found more than one pointer DECL. */
return NULL_TREE;
}
&& needs_to_live_in_memory (*to_p))
/* It's OK to use the return slot directly unless it's an NRV. */
use_target = true;
- else if (is_gimple_reg_type (TREE_TYPE (*to_p)))
+ else if (is_gimple_reg_type (TREE_TYPE (*to_p))
+ || (DECL_P (*to_p) && DECL_REGISTER (*to_p)))
/* Don't force regs into memory. */
use_target = false;
else if (TREE_CODE (*to_p) == VAR_DECL
}
/* A subroutine of gimplify_omp_atomic_pipeline. Walk *EXPR_P and replace
- appearences of *LHS_ADDR with LHS_VAR. If an expression does not involve
+ appearances of *LHS_ADDR with LHS_VAR. If an expression does not involve
the lhs, evaluate it into a temporary. Return 1 if the lhs appeared as
a subexpression, 0 if it did not, or -1 if an error was encountered. */