gcc/libgomp/testsuite
liuhongt d61ce6ab04 Adjust testcase for O2 vectorization enabling
This issue was observed in rs6000 specific PR102658 as well.

I've looked into it a bit, it's caused by the "conditional store replacement" which
is originally disabled without vectorization as below code.

  /* If either vectorization or if-conversion is disabled then do
     not sink any stores.  */
  if (param_max_stores_to_sink == 0
      || (!flag_tree_loop_vectorize && !flag_tree_slp_vectorize)
      || !flag_tree_loop_if_convert)
    return false;

The new change makes the innermost loop look like

for (int c1 = 0; c1 <= 1499; c1 += 1) {
  if (c1 <= 500) {
     S_10(c0, c1);
  } else {
      S_9(c0, c1);
  }
  S_11(c0, c1);
}

and can not be splitted as:

for (int c1 = 0; c1 <= 500; c1 += 1)
  S_10(c0, c1);

for (int c1 = 501; c1 <= 1499; c1 += 1)
  S_9(c0, c1);

So instead of disabling vectorization, could we just disable this cs replacement
with parameter "--param max-stores-to-sink=0"?

I tested this proposal on ppc64le, it should work as well.

2021-10-11  Kewen Lin  <linkw@linux.ibm.com>

libgomp/ChangeLog:

	* testsuite/libgomp.graphite/force-parallel-8.c: Add --param max-stores-to-sink=0.
2021-10-12 15:24:12 +08:00
..
config
lib Allow matching Intel MIC in OpenMP 'declare variant' 2021-08-23 17:45:40 +02:00
libgomp.c Adjust more testcases for O2 vectorization enabling. 2021-10-09 16:28:11 +08:00
libgomp.c-c++-common libgomp: Add tests for omp_atv_serialized and deprecate omp_atv_sequential. 2021-10-11 04:34:51 -07:00
libgomp.c++ Adjust more testcases for O2 vectorization enabling. 2021-10-09 16:28:11 +08:00
libgomp.fortran libgomp: Add tests for omp_atv_serialized and deprecate omp_atv_sequential. 2021-10-11 04:34:51 -07:00
libgomp.graphite Adjust testcase for O2 vectorization enabling 2021-10-12 15:24:12 +08:00
libgomp.oacc-c
libgomp.oacc-c-c++-common openacc: Shared memory layout optimisation 2021-09-17 21:04:30 +02:00
libgomp.oacc-c++ Don't require 'openacc_nvidia_accel_selected' in additional 'libgomp.oacc-*/declare-*' 2021-06-08 11:21:47 +02:00
libgomp.oacc-fortran Further test case adjustment re "Fortran: Fix assumed-size to assumed-rank passing" 2021-09-28 14:18:21 +02:00
libgomp-site-extra.exp.in
libgomp-test-support.exp.in
Makefile.am
Makefile.in