]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Merge remote-tracking branch 'origin/releases/gcc-9' into devel/omp/gcc-9
authorTobias Burnus <tobias@codesourcery.com>
Thu, 5 Mar 2020 13:47:08 +0000 (14:47 +0100)
committerTobias Burnus <tobias@codesourcery.com>
Thu, 5 Mar 2020 13:47:08 +0000 (14:47 +0100)
Update all GCC 9 commits between tag 'releases/gcc-9.2.0' (r9-7613) and
today's GCC 9 branch (r9-8340-g7beafc829c5b122298093ba517023015611aeca8).

50 files changed:
1  2 
gcc/Makefile.in
gcc/c-family/c-attribs.c
gcc/c-family/c-common.h
gcc/c-family/c-omp.c
gcc/c/c-parser.c
gcc/c/c-typeck.c
gcc/config.gcc
gcc/config/i386/i386.c
gcc/cp/constexpr.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/parser.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/doc/invoke.texi
gcc/fortran/gfortran.h
gcc/fortran/gfortran.texi
gcc/fortran/intrinsic.texi
gcc/fortran/match.c
gcc/fortran/match.h
gcc/fortran/openmp.c
gcc/fortran/parse.c
gcc/fortran/resolve.c
gcc/fortran/trans-array.c
gcc/fortran/trans-decl.c
gcc/fortran/trans-expr.c
gcc/fortran/trans-openmp.c
gcc/fortran/trans-stmt.c
gcc/fortran/trans.c
gcc/fortran/trans.h
gcc/gimplify.c
gcc/internal-fn.c
gcc/ira.c
gcc/lra-spills.c
gcc/omp-low.c
gcc/passes.def
gcc/tree-core.h
gcc/tree-pass.h
gcc/tree-ssa-structalias.c
gcc/tree-vrp.c
gcc/tree.c
gcc/tree.h
libgomp/affinity-fmt.c
libgomp/libgomp.h
libgomp/oacc-init.c
libgomp/target.c
libgomp/testsuite/libgomp.oacc-fortran/routine-7.f90
libstdc++-v3/acinclude.m4
libstdc++-v3/configure

diff --cc gcc/Makefile.in
Simple merge
Simple merge
index c99f7b4228665cbeecbb3090222b109045964175,68376426721ba84559b1646b2ef3e1c660de2ddb..a6c13d0c14cfe53b7d4dd20d9d469c51e2c8e6e2
@@@ -1184,8 -1185,8 +1185,9 @@@ extern void c_omp_split_clauses (locati
                                 tree, tree *);
  extern tree c_omp_declare_simd_clauses_to_numbers (tree, tree);
  extern void c_omp_declare_simd_clauses_to_decls (tree, tree);
+ extern bool c_omp_predefined_variable (tree);
  extern enum omp_clause_default_kind c_omp_predetermined_sharing (tree);
 +extern const char *c_omp_map_clause_name (tree, bool);
  
  /* Return next tree in the chain for chain_next walking of tree nodes.  */
  static inline tree
index 50c5296e015ebb48cf210b417126bba72b9fa8f1,ebe0b4e81559aa13c4518ba0cf8273dd9b7f325a..d3126e33602baeede466e496b316771e8fac0641
@@@ -2036,38 -2055,8 +2055,41 @@@ c_omp_predetermined_sharing (tree decl
        && INTEGRAL_TYPE_P (TREE_TYPE (decl)))
      return OMP_CLAUSE_DEFAULT_SHARED;
  
+   if (c_omp_predefined_variable (decl))
+     return OMP_CLAUSE_DEFAULT_SHARED;
    return OMP_CLAUSE_DEFAULT_UNSPECIFIED;
  }
 +
 +/* For OpenACC, the OMP_CLAUSE_MAP_KIND of an OMP_CLAUSE_MAP is used internally
 +   to distinguish clauses as seen by the user.  Return the "friendly" clause
 +   name for error messages etc., where possible.  See also
 +   c/c-parser.c:c_parser_oacc_data_clause and
 +   cp/parser.c:cp_parser_oacc_data_clause.  */
 +
 +const char *
 +c_omp_map_clause_name (tree clause, bool oacc)
 +{
 +  if (oacc && OMP_CLAUSE_CODE (clause) == OMP_CLAUSE_MAP)
 +    switch (OMP_CLAUSE_MAP_KIND (clause))
 +    {
 +    case GOMP_MAP_FORCE_ALLOC:
 +    case GOMP_MAP_ALLOC: return "create";
 +    case GOMP_MAP_FORCE_TO:
 +    case GOMP_MAP_TO: return "copyin";
 +    case GOMP_MAP_FORCE_FROM:
 +    case GOMP_MAP_FROM: return "copyout";
 +    case GOMP_MAP_FORCE_TOFROM:
 +    case GOMP_MAP_TOFROM: return "copy";
 +    case GOMP_MAP_RELEASE: return "delete";
 +    case GOMP_MAP_FORCE_PRESENT: return "present";
 +    case GOMP_MAP_ATTACH: return "attach";
 +    case GOMP_MAP_FORCE_DETACH:
 +    case GOMP_MAP_DETACH: return "detach";
 +    case GOMP_MAP_DEVICE_RESIDENT: return "device_resident";
 +    case GOMP_MAP_LINK: return "link";
 +    case GOMP_MAP_FORCE_DEVICEPTR: return "deviceptr";
 +    default: break;
 +    }
 +  return omp_clause_code_name[OMP_CLAUSE_CODE (clause)];
 +}
Simple merge
Simple merge
diff --cc gcc/config.gcc
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc gcc/cp/decl.c
Simple merge
diff --cc gcc/cp/decl2.c
Simple merge
diff --cc gcc/cp/parser.c
Simple merge
diff --cc gcc/cp/pt.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc gcc/gimplify.c
Simple merge
Simple merge
diff --cc gcc/ira.c
Simple merge
Simple merge
diff --cc gcc/omp-low.c
Simple merge
diff --cc gcc/passes.def
Simple merge
diff --cc gcc/tree-core.h
Simple merge
diff --cc gcc/tree-pass.h
Simple merge
Simple merge
diff --cc gcc/tree-vrp.c
Simple merge
diff --cc gcc/tree.c
Simple merge
diff --cc gcc/tree.h
Simple merge
index cd5783f4658e764645427209320eb3f401623ff1,61417c9e5ae345985c727ceea5cdcb196ebe41d8..09a66f02925ccd2a36286412cb72bb943ed49924
  #include <sys/utsname.h>
  #endif
  
- void
+ bool
 -gomp_print_string (const char *str, size_t len)
 +gomp_write_string (const char *str, size_t len)
  {
-   fwrite (str, 1, len, stderr);
+   return fwrite (str, 1, len, stderr) != len;
  }
  
  void
index ab216a31206727c2813e734d8303bdd4151f8006,c98c1452bd4d9f33714f9abd8ab6ccb2a4a6eeca..a59bc3330f4bcf26db1dd179c11beb01a54790d2
@@@ -769,7 -751,7 +769,7 @@@ extern void gomp_display_affinity_plac
  
  /* affinity-fmt.c */
  
- extern void gomp_write_string (const char *str, size_t len);
 -extern bool gomp_print_string (const char *str, size_t len);
++extern bool gomp_write_string (const char *str, size_t len);
  extern void gomp_set_affinity_format (const char *, size_t);
  extern void gomp_display_string (char *, size_t, size_t *, const char *,
                                 size_t);
Simple merge
index 683a42b1164fc8e9f27ccb117b9735bac6602f64,97fc1ee2ddc4d5ef0616c207059b7675f4d3e3f3..9a5b259223ea517c143eb0d825d537ff8bb07b0d
@@@ -2170,8 -1214,8 +2170,9 @@@ gomp_load_image_to_device (struct gomp_
        k->tgt = tgt;
        k->tgt_offset = target_table[i].start;
        k->refcount = REFCOUNT_INFINITY;
 -      k->dynamic_refcount = 0;
 -      k->link_key = NULL;
 +      k->virtual_refcount = 0;
 +      k->u.attach_count = NULL;
++      k->u.link_key = NULL;
        array->left = NULL;
        array->right = NULL;
        splay_tree_insert (&devicep->mem_map, array);
        k->tgt = tgt;
        k->tgt_offset = target_var->start;
        k->refcount = target_size & link_bit ? REFCOUNT_LINK : REFCOUNT_INFINITY;
 -      k->dynamic_refcount = 0;
 -      k->link_key = NULL;
 +      k->virtual_refcount = 0;
 +      k->u.attach_count = NULL;
++      k->u.link_key = NULL;
        array->left = NULL;
        array->right = NULL;
        splay_tree_insert (&devicep->mem_map, array);
Simple merge
Simple merge