<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/59943>59943</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
             [OpenMP][5.1] Accept `reproducible` modifier for `order` clause
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            openmp
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          jdoerfert
      </td>
    </tr>
</table>

<pre>
    The order clause should accept the `reproducible` modifier, e.g.,
```
#pragma omp parallel for order(reproducible:concurrent)
for (int i = 0; i < N; i++) {
  x[i] = x[i] + 2;      
}
```
which we we need to pass to the runtime and ensure we actually generate reproducible schedules (which we mostly do I think).

See also: https://github.com/SOLLVE/sollve_vv/blob/master/tests/5.1/order/test_parallel_for_order_reproducible.c
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U1FvozgQ_jXDy6iIjGMSHngIzSGd1Lue1NO9RsaeBPcMRrZJt_9-Bcluu9Kq0gjb4Plmvm8-VIz2MjLXIBuQx0zNqfehfjWew5lDyjpv3ut_e0YfDAfUTs2RMfZ-dgaV1jwlTD0jlEXgKXgza9s5hrLAwRt7thyAHpHzSw70CMURigOUxT1uRxJTUJdBoR8mnFRQzrHDsw-3okD7X6DFQftRzyHwmICqG8hyG2hvx4QWQRyxANGs20f8e90CNWtUCLvmloT4DWRjQR7XlI8DNUggGiju6LA7_rb1t97qHt94iZHZYPI4qRiXdVElzGOyA6MaDfIY57DeVDrNyrl3vPDIQSXGz_ww6p7N7DguhH5WGHxM7h2Nxz8x9Xb8H6jK702tzxdmVC56EAfsU5oiiANQC9RebOrnLtd-AGpfnp-e_vsDqI3euSufrlegtnO-A2oHFdOid5s4pgjUynwD1N6nsL49_ZjP6ezDaf1y-tx9rjNTC1OJSmVcb8qd2JZEJLK-NkJIMrLbG9XJrd5rNlzuq10l9tVZVjKzNRUkis1ms9mLXSFyIU3RaU2iE1xuqx1sCx6Udblz1yH34ZLZGGeuZVVtReZUxy6uTibyE4_DBESLq0O9JDx08yXCtnA2pvgBkWxyXCPI5nni8a9_QB5BNgtzecTDzeFfuHv1KZTFTaSyuP8i2Rxc_cUYlvL35WEK_pV1AmpXOqvwC6PvAQAA___L8CEy">