<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body>
    <p>(Awesome)<br>
    </p>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 8/4/21 7:55 AM, Ole Marius Strohm
      via cfe-dev wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:DB7PR08MB34986B378722086186F52FDD8DF19@DB7PR08MB3498.eurprd08.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      <style type="text/css" style="display:none;">P {margin-top:0;margin-bottom:0;}</style>
      <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
        font-size: 12pt; color: rgb(0, 0, 0);">
        Hi, all!</div>
      <div style="font-family: Calibri, Arial, Helvetica, sans-serif;
        font-size: 12pt; color: rgb(0, 0, 0);">
        <div><br>
        </div>
        <div>As OpenCL C 3.0 is getting support in clang there is a wish
          to expand C++ for
        </div>
        <div>OpenCL to be compatible with OpenCL 3.0 as well. Being able
          to support OpenCL</div>
        <div>3.0 is important in making C++ for OpenCL a viable option
          for as many platforms</div>
        <div>as possible.</div>
        <div><br>
        </div>
        <div>Arm is therefore proposing adding a new version of C++ for
          OpenCL which will</div>
        <div>add support for OpenCL 3.0. This version will aim to be
          backwards compatible</div>
        <div>with OpenCL C 3.0.  This will involve a new language
          version of C++ for OpenCL,</div>
        <div>currently called C++ for OpenCL 2021 in the draft of the
          new documentation [1].</div>
        <div><br>
        </div>
        <div>----- Implementation Details -----</div>
        <div><br>
        </div>
        <div>As the biggest changes in OpenCL 3.0 are making some 2.0
          features optional, and
        </div>
        <div>a lot of work as already been done in clang to support
          OpenCL C 3.0 [2] there</div>
        <div>shouldn't be a need for any big conceptual changes in clang
          as a result of this</div>
        <div>work. Our hope is to reuse the work done for OpenCL C 3.0
          and apply similar</div>
        <div>logic to C++ mode.</div>
        <div><br>
        </div>
        <div>Most of the work is expected to be related to making the
          'generic' address space</div>
        <div>optional. Currently this address space is used for several
          implicitly generated</div>
        <div>constructors and operators, so these will need to be
          adjusted. </div>
        <div><br>
        </div>
        <div>This should still be able to leverage work done for OpenCL
          C 3.0. For example</div>
        <div>this has already dealt with detecting when the 'generic'
          address space is</div>
        <div>available. This can then be used to adjust the current C++
          for OpenCL</div>
        <div>implementation without requiring large scale changes.</div>
        <div><br>
        </div>
        <div>----------------------------------</div>
        <div><br>
        </div>
        <div>As mentioned, the linked documentation is only a draft and
          will be revised and
        </div>
        <div>finalized along with the implementation.</div>
        <div><br>
        </div>
        <div>If you have any thoughts or comments, please make contact.</div>
        <div><br>
        </div>
        <div>Thanks,</div>
        <div>Ole</div>
        <div><br>
        </div>
        <div>[1] <a
            href="https://github.com/KhronosGroup/OpenCL-Docs/pull/616"
            id="LPlnk967299" moz-do-not-send="true">
            https://github.com/KhronosGroup/OpenCL-Docs/pull/616</a></div>
        <span>[2] <a
href="https://lists.llvm.org/pipermail/cfe-dev/2020-September/066883.html"
            id="LPlnk879678" moz-do-not-send="true">
https://lists.llvm.org/pipermail/cfe-dev/2020-September/066883.html</a></span><br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
cfe-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:cfe-dev@lists.llvm.org">cfe-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a>
</pre>
    </blockquote>
    <div class="moz-signature">-- <br>
      <br>
      <b>Phil Bouchard</b><br>
      Founder & CTO<br>
      C.: (819) 328-4743<br>
      <br>
      <a href="http://www.fornux.com"><img class="logo-main
          scale-with-grid"
          src="https://fcxxss.fornux.com/wp-content/uploads/2017/10/fornux.png"
data-retina="https://fcxxss.fornux.com/wp-content/uploads/2017/10/fornux.png"
          data-height="60" alt="Fornux Logo"></a></div>
  </body>
</html>