Commit ca786352 by Jakub Jelinek Committed by Jakub Jelinek

re PR middle-end/52285 (libgcrypt _gcry_burn_stack slowdown)

	PR tree-optimization/52285
	* tree-tailcall.c (find_tail_calls): Ignore gimple_clobber_p stmts
	when deciding if a call is a tail call or tail recursion.

From-SVN: r184317
parent 60a3da27
2012-02-16 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/52285
* tree-tailcall.c (find_tail_calls): Ignore gimple_clobber_p stmts
when deciding if a call is a tail call or tail recursion.
2012-02-16 Kai Tietz <ktietz@redhat.com>
* config/i386/i386.c (legitimate_pic_address_disp_p): Allow
......
/* Tail call optimization on trees.
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Free Software Foundation, Inc.
This file is part of GCC.
......@@ -400,9 +400,10 @@ find_tail_calls (basic_block bb, struct tailcall **ret)
{
stmt = gsi_stmt (gsi);
/* Ignore labels, returns and debug stmts. */
/* Ignore labels, returns, clobbers and debug stmts. */
if (gimple_code (stmt) == GIMPLE_LABEL
|| gimple_code (stmt) == GIMPLE_RETURN
|| gimple_clobber_p (stmt)
|| is_gimple_debug (stmt))
continue;
......@@ -523,6 +524,9 @@ find_tail_calls (basic_block bb, struct tailcall **ret)
if (gimple_code (stmt) == GIMPLE_RETURN)
break;
if (gimple_clobber_p (stmt))
continue;
if (is_gimple_debug (stmt))
continue;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment