When compiling the test-case with r268755, we run into a SIGSEGV in
oacc_entry_exit_ok_1 when trying to dereference a NULL red:
...
struct reduction_info *red;
red = reduction_phi (reduction_list, use_stmt);
tree val = PHI_RESULT (red->keep_res);
...
Fix this by handling ref == NULL.
Bootstrapped and reg-tested on x86_64.
Build and reg-tested on x86_64 with nvptx accelerator.
2019-06-16 Tom de Vries <tdevries@suse.de>
PR tree-optimization/89376
* tree-parloops.c (oacc_entry_exit_ok_1): Handle red == NULL.
* testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
From-SVN: r272338
+2019-06-16 Tom de Vries <tdevries@suse.de>
+
+ PR tree-optimization/89376
+ * tree-parloops.c (oacc_entry_exit_ok_1): Handle red == NULL.
+
2019-06-15 Maya Rashish <coypu@sdf.org>
* doc/invoke.texi (Spec Files): Update location of the
{
use_operand_p use_p;
gimple *use_stmt;
+ struct reduction_info *red;
single_imm_use (lhs, &use_p, &use_stmt);
- if (gimple_code (use_stmt) == GIMPLE_PHI)
+ if (gimple_code (use_stmt) == GIMPLE_PHI
+ && (red = reduction_phi (reduction_list, use_stmt)))
{
- struct reduction_info *red;
- red = reduction_phi (reduction_list, use_stmt);
tree val = PHI_RESULT (red->keep_res);
if (has_single_use (val))
{
+2019-06-16 Tom de Vries <tdevries@suse.de>
+
+ PR tree-optimization/89376
+ * testsuite/libgomp.oacc-c-c++-common/pr89376.c: New test.
+
2019-06-15 Tom de Vries <tdevries@suse.de>
PR tree-optimization/89713
--- /dev/null
+/* { dg-do run } */
+/* { dg-additional-options "-fno-tree-ch -fno-tree-dce -fno-tree-vrp" } */
+
+int
+main (void)
+{
+ int fa;
+
+ #pragma acc kernels
+ for (int rw = 0; rw < 1; ++rw)
+ fa = 0;
+
+ return 0;
+}
+