diff mbox

[gomp4] handle missing OMP_LIST_ clauses in fortran's parse tree debugger

Message ID 560D9C22.8080805@codesourcery.com
State New
Headers show

Commit Message

Cesar Philippidis Oct. 1, 2015, 8:48 p.m. UTC
While debugging gfortran with -fdump-fortran-*, I noticed that a couple
of OMP_LIST_ entries weren't being handled show_omp_clauses so I've
added them. I also took advantage of the opportunity to rearrange the
the cases in the switch statement that handles those lists in a way that
matches the enum in gfortran.h because I couldn't figure out how things
were ordered before.

I've applied this patch to gomp-4_0-branch.

Cesar
diff mbox

Patch

2015-10-01  Cesar Philippidis  <cesar@codesourcery.com>

	gcc/fortran/
	* dump-parse-tree.c (show_omp_clauses): Add missing omp list_types
	and reorder the switch cases to match the enum in gfortran.h.
	

diff --git a/gcc/fortran/dump-parse-tree.c b/gcc/fortran/dump-parse-tree.c
index 48476af..3e5ac17 100644
--- a/gcc/fortran/dump-parse-tree.c
+++ b/gcc/fortran/dump-parse-tree.c
@@ -1251,19 +1251,24 @@  show_omp_clauses (gfc_omp_clauses *omp_clauses)
 	const char *type = NULL;
 	switch (list_type)
 	  {
-	  case OMP_LIST_USE_DEVICE: type = "USE_DEVICE"; break;
-	  case OMP_LIST_DEVICE_RESIDENT: type = "USE_DEVICE"; break;
-	  case OMP_LIST_CACHE: type = ""; break;
 	  case OMP_LIST_PRIVATE: type = "PRIVATE"; break;
 	  case OMP_LIST_FIRSTPRIVATE: type = "FIRSTPRIVATE"; break;
 	  case OMP_LIST_LASTPRIVATE: type = "LASTPRIVATE"; break;
-	  case OMP_LIST_SHARED: type = "SHARED"; break;
+	  case OMP_LIST_COPYPRIVATE: type = "COPYPRIVATE"; break;
+	  case OMP_LIST_SHARED: type = "SHARE"; break;
 	  case OMP_LIST_COPYIN: type = "COPYIN"; break;
 	  case OMP_LIST_UNIFORM: type = "UNIFORM"; break;
 	  case OMP_LIST_ALIGNED: type = "ALIGNED"; break;
 	  case OMP_LIST_LINEAR: type = "LINEAR"; break;
-	  case OMP_LIST_REDUCTION: type = "REDUCTION"; break;
 	  case OMP_LIST_DEPEND: type = "DEPEND"; break;
+	  case OMP_LIST_MAP: type = "MAP"; break;
+	  case OMP_LIST_TO: type = "TO"; break;
+	  case OMP_LIST_FROM: type = "FROM"; break;
+	  case OMP_LIST_REDUCTION: type = "REDUCTION"; break;
+	  case OMP_LIST_DEVICE_RESIDENT: type = "DEVICE_RESIDENT"; break;
+	  case OMP_LIST_LINK: type = "LINK"; break;
+	  case OMP_LIST_USE_DEVICE: type = "USE_DEVICE"; break;
+	  case OMP_LIST_CACHE: type = "CACHE"; break;
 	  default:
 	    gcc_unreachable ();
 	  }