Hi!

I think it is better to announce 4.5 than 4.0 at the current state.

Bootstrapped/regtested on x86_64-linux and i686-linux, committed to trunk.

2016-11-10  Jakub Jelinek  <ja...@redhat.com>

gcc/fortran/
        * cpp.c (cpp_define_builtins): Define _OPENMP to 201511 instead
        of 201307.
        * gfortran.texi: Mention partial OpenMP 4.5 support.
        * intrinsic.texi: Update for OpenMP 4.5.
gcc/testsuite/
        * gfortran.dg/openmp-define-3.f90: Expect 201511 instead of
        201307.
libgomp/
        * omp_lib.f90.in (openmp_version): Change to 201511 from 201307.
        * omp_lib.h.in (openmp_version): Likewise.
        * testsuite/libgomp.fortran/openmp_version-1.f: Expect 201511 instead
        of 201307.
        * testsuite/libgomp.fortran/openmp_version-2.f90: Likewise.

--- gcc/fortran/cpp.c.jj        2016-01-04 14:55:59.000000000 +0100
+++ gcc/fortran/cpp.c   2016-11-10 12:59:33.829477276 +0100
@@ -168,7 +168,7 @@ cpp_define_builtins (cpp_reader *pfile)
     cpp_define (pfile, "_OPENACC=201306");
 
   if (flag_openmp)
-    cpp_define (pfile, "_OPENMP=201307");
+    cpp_define (pfile, "_OPENMP=201511");
 
   /* The defines below are necessary for the TARGET_* macros.
 
--- gcc/fortran/gfortran.texi.jj        2016-11-03 22:03:29.000000000 +0100
+++ gcc/fortran/gfortran.texi   2016-11-10 13:02:11.380466602 +0100
@@ -536,7 +536,8 @@ The current status of the support is can
 and @ref{TS 18508 status} sections of the documentation.
 
 Additionally, the GNU Fortran compilers supports the OpenMP specification
-(version 4.0, @url{http://openmp.org/@/wp/@/openmp-specifications/}).
+(version 4.0 and most of the features of the 4.5 version,
+@url{http://openmp.org/@/wp/@/openmp-specifications/}).
 There also is initial support for the OpenACC specification (targeting
 version 2.0, @uref{http://www.openacc.org/}).
 Note that this is an experimental feature, incomplete, and subject to
@@ -1999,7 +2000,7 @@ and environment variables that influence
 
 GNU Fortran strives to be compatible to the 
 @uref{http://openmp.org/wp/openmp-specifications/,
-OpenMP Application Program Interface v4.0}.
+OpenMP Application Program Interface v4.5}.
 
 To enable the processing of the OpenMP directive @code{!$omp} in
 free-form source code; the @code{c$omp}, @code{*$omp} and @code{!$omp}
--- gcc/fortran/intrinsic.texi.jj       2016-10-31 13:28:11.000000000 +0100
+++ gcc/fortran/intrinsic.texi  2016-11-10 13:02:57.463880355 +0100
@@ -14769,7 +14769,7 @@ with the following options: @code{-fno-u
 @section OpenMP Modules @code{OMP_LIB} and @code{OMP_LIB_KINDS}
 @table @asis
 @item @emph{Standard}:
-OpenMP Application Program Interface v4.0
+OpenMP Application Program Interface v4.5
 @end table
 
 
@@ -14783,8 +14783,8 @@ the named constants defined in the modul
 below.
 
 For details refer to the actual
-@uref{http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf,
-OpenMP Application Program Interface v4.0}.
+@uref{http://www.openmp.org/wp-content/uploads/openmp-4.5.pdf,
+OpenMP Application Program Interface v4.5}.
 
 @code{OMP_LIB_KINDS} provides the following scalar default-integer
 named constants:
@@ -14799,7 +14799,7 @@ named constants:
 @code{OMP_LIB} provides the scalar default-integer
 named constant @code{openmp_version} with a value of the form
 @var{yyyymm}, where @code{yyyy} is the year and @var{mm} the month
-of the OpenMP version; for OpenMP v4.0 the value is @code{201307}.
+of the OpenMP version; for OpenMP v4.5 the value is @code{201511}.
 
 The following scalar integer named constants of the
 kind @code{omp_sched_kind}:
--- gcc/testsuite/gfortran.dg/openmp-define-3.f90.jj    2014-06-18 
09:11:57.000000000 +0200
+++ gcc/testsuite/gfortran.dg/openmp-define-3.f90       2016-11-10 
13:04:12.381927290 +0100
@@ -6,6 +6,6 @@
 # error _OPENMP not defined
 #endif
 
-#if _OPENMP != 201307
+#if _OPENMP != 201511
 # error _OPENMP defined to wrong value
 #endif
--- libgomp/omp_lib.f90.in.jj   2016-01-04 14:38:59.000000000 +0100
+++ libgomp/omp_lib.f90.in      2016-11-10 13:04:30.704694198 +0100
@@ -59,7 +59,7 @@
       module omp_lib
         use omp_lib_kinds
         implicit none
-        integer, parameter :: openmp_version = 201307
+        integer, parameter :: openmp_version = 201511
 
         interface
           subroutine omp_init_lock (svar)
--- libgomp/omp_lib.h.in.jj     2016-01-04 14:38:59.000000000 +0100
+++ libgomp/omp_lib.h.in        2016-11-10 13:04:43.363533159 +0100
@@ -58,7 +58,7 @@
       parameter (omp_lock_hint_contended = 2)
       parameter (omp_lock_hint_nonspeculative = 4)
       parameter (omp_lock_hint_speculative = 8)
-      parameter (openmp_version = 201307)
+      parameter (openmp_version = 201511)
 
       external omp_init_lock, omp_init_nest_lock
       external omp_init_lock_with_hint
--- libgomp/testsuite/libgomp.fortran/openmp_version-1.f.jj     2014-06-18 
09:11:57.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/openmp_version-1.f        2016-11-10 
13:05:04.255267386 +0100
@@ -4,6 +4,6 @@
       implicit none
       include "omp_lib.h"
 
-      if (openmp_version .ne. 201307) call abort;
+      if (openmp_version .ne. 201511) call abort;
 
       end program main
--- libgomp/testsuite/libgomp.fortran/openmp_version-2.f90.jj   2014-06-18 
09:11:57.000000000 +0200
+++ libgomp/testsuite/libgomp.fortran/openmp_version-2.f90      2016-11-10 
13:05:15.489124475 +0100
@@ -4,6 +4,6 @@ program main
   use omp_lib
   implicit none
 
-  if (openmp_version .ne. 201307) call abort;
+  if (openmp_version .ne. 201511) call abort;
 
 end program main

        Jakub

Reply via email to