diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-19 17:49:46 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-19 17:49:46 +0000 |
commit | b3a3ddece257f50649db88afb8e2248d91fa883b (patch) | |
tree | c47ee4cdc097d5f98d818d66731d4ecf07beeff8 /gcc/function.h | |
parent | f503118e3c5cee82ad9a2d58f5c6848faaaf4c9a (diff) | |
download | gcc-b3a3ddece257f50649db88afb8e2248d91fa883b.tar.gz |
PR gcov-profile/34610
* tree-cfg.c (make_edges): Mark both outgoing edges from
OMP_CONTINUE and from OMP_FOR as EDGE_ABNORMAL.
* omp-low.c (expand_omp_for): Clear EDGE_ABNORMAL bits
from OMP_FOR and OMP_CONTINUE outgoing edges.
* tree-profile.c (tree_profiling): Return early if
cfun->after_tree_profile != 0. Set cfun->after_tree_profile
at the end.
* omp-low.c (expand_omp_parallel): Copy after_tree_profile
from cfun to child_cfun.
* function.h (struct function): Add after_tree_profile bit.
* gcc.dg/gomp/pr34610.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131653 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/function.h')
-rw-r--r-- | gcc/function.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/function.h b/gcc/function.h index eb2a7530b9f..abc2303bcf7 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -1,6 +1,7 @@ /* Structure for saving state for a nested function. Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. + 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2008 + Free Software Foundation, Inc. This file is part of GCC. @@ -459,6 +460,9 @@ struct function GTY(()) /* Nonzero if function being compiled needs to return the address of where it has put a structure value. */ unsigned int returns_pcc_struct : 1; + + /* Nonzero if pass_tree_profile was run on this function. */ + unsigned int after_tree_profile : 1; }; /* If va_list_[gf]pr_size is set to this, it means we don't know how |