aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2015-06-08 08:57:39 +0000
committerTom de Vries <vries@gcc.gnu.org>2015-06-08 08:57:39 +0000
commit9452ef0663208d3908cbec66f1521b1f9e82d14a (patch)
tree4adf666d83553cb88ff315152a87a159b4cfc32c /gcc
parentbd75ff94b295f58cdddd716a68c8c44b9a4e8c94 (diff)
downloadgcc-9452ef0663208d3908cbec66f1521b1f9e82d14a.zip
gcc-9452ef0663208d3908cbec66f1521b1f9e82d14a.tar.gz
gcc-9452ef0663208d3908cbec66f1521b1f9e82d14a.tar.bz2
Add debug msg to dump_file in add_new_function
2015-06-08 Tom de Vries <tom@codesourcery.com> PR tree-optimization/66435 * cgraphunit.c (cgraph_node::add_new_function): Dump message on new function. * gcc.dg/gomp/notify-new-function-2.c: New test. * gcc.dg/gomp/notify-new-function-3.c: Same. * gcc.dg/gomp/notify-new-function.c: Same. From-SVN: r224209
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cgraphunit.c17
-rw-r--r--gcc/testsuite/ChangeLog7
-rw-r--r--gcc/testsuite/gcc.dg/gomp/notify-new-function-2.c20
-rw-r--r--gcc/testsuite/gcc.dg/gomp/notify-new-function-3.c14
-rw-r--r--gcc/testsuite/gcc.dg/gomp/notify-new-function.c17
6 files changed, 81 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e1bd305..bd1c4b0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2015-06-08 Tom de Vries <tom@codesourcery.com>
+
+ PR tree-optimization/66435
+ * cgraphunit.c (cgraph_node::add_new_function): Dump message on new
+ function.
+
2015-06-06 Jan Hubicka <hubicka@ucw.cz>
* alias.c (get_alias_set): Be ready for TYPE_CANONICAL
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 722c4f4..6a1f0c1 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -507,6 +507,23 @@ cgraph_node::add_new_function (tree fndecl, bool lowered)
{
gcc::pass_manager *passes = g->get_passes ();
cgraph_node *node;
+
+ if (dump_file)
+ {
+ struct function *fn = DECL_STRUCT_FUNCTION (fndecl);
+ const char *function_type = ((gimple_has_body_p (fndecl))
+ ? (lowered
+ ? (gimple_in_ssa_p (fn)
+ ? "ssa gimple"
+ : "low gimple")
+ : "high gimple")
+ : "to-be-gimplified");
+ fprintf (dump_file,
+ "Added new %s function %s to callgraph\n",
+ function_type,
+ fndecl_name (fndecl));
+ }
+
switch (symtab->state)
{
case PARSING:
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 71d3858..913bd036 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2015-06-08 Tom de Vries <tom@codesourcery.com>
+
+ PR tree-optimization/66435
+ * gcc.dg/gomp/notify-new-function-2.c: New test.
+ * gcc.dg/gomp/notify-new-function-3.c: Same.
+ * gcc.dg/gomp/notify-new-function.c: Same.
+
2015-06-06 Jan Hubicka <hubicka@ucw.cz>
* gfortran.dg/lto/bind_c-1_0.f90: New testcase.
diff --git a/gcc/testsuite/gcc.dg/gomp/notify-new-function-2.c b/gcc/testsuite/gcc.dg/gomp/notify-new-function-2.c
new file mode 100644
index 0000000..e9c8939
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/notify-new-function-2.c
@@ -0,0 +1,20 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fopenmp -fdump-tree-omplower" } */
+
+void __attribute__((noinline))
+baz (int *p)
+{
+}
+
+void
+foo (void)
+{
+ int p[2];
+ p[0] = 1;
+ p[1] = 3;
+ #pragma omp task firstprivate (p)
+ baz (p);
+}
+
+/* Check for new function notification in omplower dump. */
+/* { dg-final { scan-tree-dump-times "Added new high gimple function foo\\._omp_cpyfn\\.1 to callgraph" 1 "omplower" } } */
diff --git a/gcc/testsuite/gcc.dg/gomp/notify-new-function-3.c b/gcc/testsuite/gcc.dg/gomp/notify-new-function-3.c
new file mode 100644
index 0000000..f173b8e
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/notify-new-function-3.c
@@ -0,0 +1,14 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -ftree-parallelize-loops=2 -fdump-tree-ompexpssa" } */
+
+void
+foo (int *__restrict a, int *__restrict b, int *__restrict c)
+{
+ int i;
+ for (i = 0; i < 1000; ++i)
+ c[i] = a[i] + b[i];
+}
+
+
+/* Check for new function notification in ompexpssa dump. */
+/* { dg-final { scan-tree-dump-times "Added new ssa gimple function foo\\._loopfn\\.0 to callgraph" 1 "ompexpssa" } } */
diff --git a/gcc/testsuite/gcc.dg/gomp/notify-new-function.c b/gcc/testsuite/gcc.dg/gomp/notify-new-function.c
new file mode 100644
index 0000000..4770a6b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/gomp/notify-new-function.c
@@ -0,0 +1,17 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -fopenmp -fdump-tree-ompexp" } */
+
+int
+main (void)
+{
+#pragma omp parallel
+ {
+ extern void foo (void);
+ foo ();
+ }
+ return 0;
+}
+
+
+/* Check for new function notification in ompexp dump. */
+/* { dg-final { scan-tree-dump-times "Added new low gimple function main\\._omp_fn\\.0 to callgraph" 1 "ompexp" } } */