aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDiego Novillo <dnovillo@redhat.com>2006-02-10 22:34:42 +0000
committerDiego Novillo <dnovillo@gcc.gnu.org>2006-02-10 17:34:42 -0500
commit88f4034b4b948a5f4c63ab27caea5e92db8fc0ac (patch)
treeedb1e3b77f76def3fe6a4609e274e9f809c8b184 /gcc
parent1f92226479da2a62e1f313e1ac32031952c4ada0 (diff)
downloadgcc-88f4034b4b948a5f4c63ab27caea5e92db8fc0ac.zip
gcc-88f4034b4b948a5f4c63ab27caea5e92db8fc0ac.tar.gz
gcc-88f4034b4b948a5f4c63ab27caea5e92db8fc0ac.tar.bz2
tree-inline.c (estimate_num_insns_1): Make OpenMP directives expensive.
* tree-inline.c (estimate_num_insns_1): Make OpenMP directives expensive. From-SVN: r110853
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-inline.c23
2 files changed, 19 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 413d150..8181bb8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-02-10 Diego Novillo <dnovillo@redhat.com>
+
+ * tree-inline.c (estimate_num_insns_1): Make OpenMP directives
+ expensive.
+
2006-02-10 Zdenek Dvorak <dvorakz@suse.cz>
* doc/invoke.texi (-floop-optimize2): Removed.
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index f9ce09b..81682c8 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -1600,15 +1600,6 @@ estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data)
case LOOP_EXPR:
case PHI_NODE:
case WITH_SIZE_EXPR:
- case OMP_PARALLEL:
- case OMP_FOR:
- case OMP_SECTIONS:
- case OMP_SINGLE:
- case OMP_SECTION:
- case OMP_MASTER:
- case OMP_ORDERED:
- case OMP_CRITICAL:
- case OMP_ATOMIC:
case OMP_CLAUSE:
case OMP_RETURN_EXPR:
break;
@@ -1797,6 +1788,20 @@ estimate_num_insns_1 (tree *tp, int *walk_subtrees, void *data)
*count += PARAM_VALUE (PARAM_INLINE_CALL_COST);
break;
}
+
+ case OMP_PARALLEL:
+ case OMP_FOR:
+ case OMP_SECTIONS:
+ case OMP_SINGLE:
+ case OMP_SECTION:
+ case OMP_MASTER:
+ case OMP_ORDERED:
+ case OMP_CRITICAL:
+ case OMP_ATOMIC:
+ /* OpenMP directives are generally very expensive. */
+ *count += 40;
+ break;
+
default:
gcc_unreachable ();
}