/* Language independent return value optimizations
- Copyright (C) 2004, 2005, 2007, 2008, 2009, 2010
- Free Software Foundation, Inc.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of GCC.
#include "basic-block.h"
#include "tree-pretty-print.h"
#include "tree-flow.h"
-#include "timevar.h"
-#include "tree-dump.h"
#include "tree-pass.h"
#include "langhooks.h"
#include "flags.h" /* For "optimize" in gate_pass_return_slot.
{
unlink_stmt_vdef (stmt);
gsi_remove (&gsi, true);
+ release_defs (stmt);
}
else
{
SET_DECL_VALUE_EXPR (found, result);
DECL_HAS_VALUE_EXPR_P (found) = 1;
- /* FOUND is no longer used. Ensure it gets removed. */
- clear_is_used (found);
return 0;
}
{
GIMPLE_PASS,
"nrv", /* name */
+ OPTGROUP_NONE, /* optinfo_flags */
gate_pass_return_slot, /* gate */
tree_nrv, /* execute */
NULL, /* sub */
{
GIMPLE_PASS,
"retslot", /* name */
+ OPTGROUP_NONE, /* optinfo_flags */
NULL, /* gate */
execute_return_slot_opt, /* execute */
NULL, /* sub */