+2018-09-09 Cesar Philippidis <cesar@codesourcery.com>
+ Julian Brown <julian@codesourcery.com>
+
+ PR middle-end/86336
+ * gimplify.c (gimplify_scan_omp_clauses): Set
+ target_firstprivatize_array_bases in OpenACC parallel and kernels
+ region contexts. Remove GOMP_MAP_FIRSTPRIVATE_REFERENCE clauses from
+ OpenACC data regions.
+
2018-09-12 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (sqrt_extend<mode>xf3_i387): Remove.
+2018-09-09 Cesar Philippidis <cesar@codesourcery.com>
+ Julian Brown <julian@codesourcery.com>
+
+ PR middle-end/86336
+ * semantics.c (finish_omp_clauses): Treat C++ references the same in
+ OpenACC as OpenMP.
+
2018-08-28 Martin Liska <mliska@suse.cz>
* constexpr.c (cxx_eval_call_expression): Add quotes
handle_map_references:
if (!remove
&& !processing_template_decl
- && (ort & C_ORT_OMP_DECLARE_SIMD) == C_ORT_OMP
+ && ort != C_ORT_DECLARE_SIMD
&& TYPE_REF_P (TREE_TYPE (OMP_CLAUSE_DECL (c))))
{
t = OMP_CLAUSE_DECL (c);
case OMP_TARGET_EXIT_DATA:
case OACC_DECLARE:
case OACC_HOST_DATA:
+ case OACC_PARALLEL:
+ case OACC_KERNELS:
ctx->target_firstprivatize_array_bases = true;
default:
break;
if (code == OACC_DATA
&& OMP_CLAUSE_CODE (c) == OMP_CLAUSE_MAP
- && OMP_CLAUSE_MAP_KIND (c) == GOMP_MAP_FIRSTPRIVATE_POINTER)
+ && (OMP_CLAUSE_MAP_KIND (c) == GOMP_MAP_FIRSTPRIVATE_POINTER
+ || OMP_CLAUSE_MAP_KIND (c) == GOMP_MAP_FIRSTPRIVATE_REFERENCE))
remove = true;
if (remove)
*list_p = OMP_CLAUSE_CHAIN (c);
+2018-09-09 Cesar Philippidis <cesar@codesourcery.com>
+ Julian Brown <julian@codesourcery.com>
+
+ PR middle-end/86336
+ * testsuite/libgomp.oacc-c++/non-scalar-data.C: Remove XFAIL.
+
2018-08-21 Nicolas Koenig <koenigni@gcc.gnu.org>
Thomas Koenig <tkoenig@gcc.gnu.org>
// Ensure that a non-scalar dummy arguments which are implicitly used inside
// offloaded regions are properly mapped using present_or_copy semantics.
-// { dg-xfail-if "TODO" { *-*-* } }
-// { dg-excess-errors "ICE" }
+// { dg-do run }
#include <cassert>