Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use hidden friend comparison operators instead of member functions #308

Merged
merged 2 commits into from
Oct 5, 2021

Conversation

keryell
Copy link
Member

@keryell keryell commented Oct 1, 2021

Follow WG21 P1601R0 "Recommendations for Specifying “Hidden Friends”"
from Walter E. Brown & Daniel Sunderland.

This removes compilation warnings like:

.../triSYCL/include/triSYCL/device_selector/detail/device_selector_tail.hpp:98:18: warning:
      ISO C++20 considers use of overloaded operator '==' (with operand types 'const trisycl::device' and
      'const trisycl::device') to be ambiguous despite there being a unique best viable function
      [-Wambiguous-reversed-operator]
      return dev == default_device ? 1 : -1;

Also remove a useless capture of this.

Follow WG21 P1601R0 "Recommendations for Specifying “Hidden Friends”"
from Walter E. Brown & Daniel Sunderland.

This removes compilation warnings like:
.../triSYCL/include/triSYCL/device_selector/detail/device_selector_tail.hpp:98:18: warning:
      ISO C++20 considers use of overloaded operator '==' (with operand types 'const trisycl::device' and
      'const trisycl::device') to be ambiguous despite there being a unique best viable function
      [-Wambiguous-reversed-operator]
      return dev == default_device ? 1 : -1;
@keryell keryell merged commit cab4ed5 into triSYCL:master Oct 5, 2021
keryell added a commit that referenced this pull request Jun 9, 2023
The list of commits since last publication:

commit b596193247df3d630231ae612d07aaf93c1bdb07
Merge: 4b78ce24 949ddbda
Author: Ronan Keryell <Ronan.Keryell@amd.com>
Date:   Wed May 24 15:52:28 2023 -0700

    Merge pull request #325 from keryell/github-actions-checkout-v3
    
    GitHub actions moved to actions/checkout@v3
    
    Update to latest https://github.com/actions/checkout to remove these warnings:
    ```
    Annotations
    5 warnings
    CMake with default option on the default GitHub Ubuntu
    Node.js 12 actions are deprecated. Please update the following actions to use Node.js 16: actions/checkout@v2. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/.
    ```

commit 949ddbda9d89b3e3ca405e719bd655fd6b751d2b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue May 23 11:24:25 2023 -0700

    GitHub actions moved to actions/checkout@v3
    
    https://github.com/actions/checkout

commit 4b78ce24260e627d36c106aa5da2def559bd180c
Merge: fb7ab21f 555a5c1d
Author: Ronan Keryell <Ronan.Keryell@amd.com>
Date:   Mon May 22 14:02:41 2023 -0700

    Merge pull request #321 from keryell/marray
    
     Implement sycl::marray
    
    This is just an alias for sycl::vec internally for now.
    Add aliases for marray of size 1 too, like sycl::mdouble1.

commit 555a5c1d9dcfa7a19fdc274e9971c8b2535deb15
Merge: bfe9e5e6 fb7ab21f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon May 22 13:37:15 2023 -0700

    Merge branch 'master' into marray

commit fb7ab21f3554590f055cc1d9fc56ee3b3ce02af6
Merge: 62a1d9bc 3843410d
Author: Ronan Keryell <Ronan.Keryell@amd.com>
Date:   Fri May 12 14:28:37 2023 -0700

    Merge pull request #324 from keryell/ci-ubuntu-23.04
    
    Use Ubuntu 23.04, Clang 17 ToT and update for latest mdspan.
    
    Clang 15 crashes on the code, so use a distribution providing a more modern version.
    Actually the bug was only fixed recently with https://reviews.llvm.org/D149637 and https://reviews.llvm.org/D150008.
    Also update `mdspan` namespace to remove `experimental::` now it landed in C++23.

commit 3843410d6ebf9aa6b9626703868da6d5f7443622
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 11 16:11:39 2023 -0700

    Do not use LLVM install script
    
    It was not suitable for the use case.
    Instead, just set up the authentication key and fetch the packages as usual.

commit d6313ad35659d1fadda501c14ad20fe210c1c91e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 11 14:51:11 2023 -0700

    Install tools used by the LLVM repository set-up script

commit 191d98186b4bedd7d84e248255a812a2fdbac9c4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 11 10:38:58 2023 -0700

    Add latest Clang/LLVM repository when clang or clang++ is required
    
    This is required to use the latest C++23 features.

commit ab0bcff63ec2b90ff384c7b15849b49a7796374c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 11 10:30:04 2023 -0700

    Use directly std::mdspan without experimental:: now it is in C++23

commit 5073e75634d6f8cb51b868dc693e891308e58438
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 10 16:57:31 2023 -0700

    Install latest Clang to avoid crashing on C++23 operator[](pack...)
    
    See https://reviews.llvm.org/D149637 and https://reviews.llvm.org/D150008

commit 69cf39e312427f5498cf74261f81edc91aa7e491
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Apr 28 06:01:55 2023 -0700

    Use Ubuntu 23.04 and Clang 16
    
    Clang 15 crashes on the code, so use a distribution providing a more
    modern version.

commit 62a1d9bc4dfac266e7d3e15b46ecedf05a3f853f
Merge: a80d6946 17dcc334
Author: Ronan Keryell <Ronan.Keryell@amd.com>
Date:   Sun Feb 12 14:35:47 2023 -0800

    Merge pull request #322 from keryell/ci-ubuntu-22.10
    
    Move CI to Ubuntu 22.10

commit 17dcc33420827efaae51bd0204425a7aecb5878f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sun Feb 12 14:01:48 2023 -0800

    Move to Clang 15

commit 8ff382f0eb8fd9ebdb8698b53c53cd76819227a1
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Dec 22 09:28:15 2022 -0800

    Move CI to Ubuntu 22.10

commit bfe9e5e6e90c96727435bec946f4fbe26795af18
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 22 18:02:04 2022 -0800

    Add aliases for marray of size 1 too
    
    This is not currently in the SYCL 2020 specification but it looks like
    it might be useful.
    https://github.com/KhronosGroup/SYCL-Docs/issues/319

commit 3042ffa368bd8e0911f827812c22a7d043277bda
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 22 17:22:06 2022 -0800

    Add marray alias types like mdouble2

commit a004996294522e800758bdbb8ed518ec4aa9908e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 22 16:58:46 2022 -0800

    Make a trivial sycl::marray as an alias for sycl::vec
    
    This is good enough for a CPU implementation for now.

commit a80d6946983a602122cb5e2320f6c6b5da15639b
Merge: 072d85f0 cdeeeb97
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Aug 22 23:32:07 2022 -0700

    Merge pull request #320 from keryell/c++23-mdspan-example
    
    Add C++23 mdspan-like indexing and tuple protocol on accessors
    Now it is possible to write code like:
    
    int main() {
      {
        sycl::queue q;
    
        sycl::buffer<int, 4> a { { 2, 3, 5, 7 } };
    
        q.submit([&](sycl::handler& cgh) {
          sycl::accessor acc { a, cgh };
          cgh.parallel_for(a.get_range(), [=](sycl::id<4> i) {
            auto [x, y, z, t] = i;
            acc[x, y, z, t] = x + y + z + t;
          });
        });
        VERIFY_BUFFER_VALUE(a, [](sycl::id<4> i) { return i[0] + i[1] + i[2] + i[3]; });
      return 0;
      }
    }

commit cdeeeb979db8d0cf1180384b64667933add9d434
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Aug 22 11:55:22 2022 -0700

    Implement C++23 [i1, i2,...] indexing syntax on accessors

commit 675a32996f0361c74257a7bbafd9510720e02ff0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Aug 22 08:34:36 2022 -0700

    Generalize conceptually the tuple protocol to small_array heirs
    
    This way sycl::id & sycl::range benefit directly from a tuple-like
    interface.

commit 21b364ec629b190e64d6c1544e9383889bfc3f3c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Aug 19 19:32:56 2022 -0700

    Add tuple-like protocol to sycl::id

commit a89646a8a8e21500a6f9606a57e277fd670374a5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Aug 19 16:26:49 2022 -0700

    Generalize test-helpers.hpp to work with other SYCL namespaces
    
    Not only cl::sycl but also sycl or trisycl for example."

commit 106e53dbf9179923ee5af26a38c771e7feb44b2e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Aug 19 16:13:02 2022 -0700

    Add TRISYCL_SYCL_NAMESPACE macro stating the namespace
    
    Since the implementation can define different namespace where SYCL is
    defined (sycl, cl::sycl, trisycl), provides a macro indicating which
    one is being expected to be used.

commit 064aab84930738d09b892a3a7061354b4549fd8d
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Aug 19 16:08:39 2022 -0700

    Remove old pre-C++23 mdspan indexing syntax
    
    The problem is that the mdspan CMake config assume C++23 if the
    compiler can do it and do not look at the version used by the
    end-user.
    So, switch to C++23 to simplify the configuration.

commit acd24b6767b6d12e7771a544fc95d2a885d2e8e3
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Aug 17 13:59:29 2022 -0700

    Remove warning about unused variables with NDEBUG and assert()

commit 219a563050d2cd6998aa50bd65321d423378b3fe
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Aug 17 13:30:30 2022 -0700

    Move to C++23

commit 68ecac5eac9bdb4dc415c63721d669799e8bdedc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Aug 18 19:04:03 2022 -0700

    Update accessor mixin and façade to C++23 mdspan[i1, i2,...] syntax
    
    Fall back on previous mdspan(i1, i2,...) syntax with pre- C++23
    compilers.

commit 072d85f09ba831d6e84b2800568a3a2e675cfc0c
Merge: 95d74eec 7169cfd5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 26 16:44:53 2022 -0700

    Merge pull request #319 from keryell/clang-14_gcc-12
    
    Update CI Clang and G++ to the latest versions on Ubuntu 22.04

commit 7169cfd5f94bc435dd4085b0c901d3fc685264f8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 26 13:53:14 2022 -0700

    Try again OpenMP+PoCL with Clang-14

commit b6504f408cfad9783d19218685445099252fef09
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 26 12:11:13 2022 -0700

    Update CI Clang and G++ to the latest versions on Ubuntu 22.04

commit 95d74eecf91f217e88412766960d514640e348b7
Merge: eceb0876 150b4d26
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 26 12:08:31 2022 -0700

    Merge pull request #318 from keryell/fix_genericity_opencl
    
    Avoid derailing the sycl::kernel into the generic parallel_for

commit 150b4d265edbfe60cd6ca1b8d6dbb70c1c481e4d
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 25 17:52:26 2022 -0700

    Conceptualize handler::parallel_for with sycl::kernel for simplicity

commit 4358c08e72750ff95b485938f9a48ab1e873c025
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 25 17:10:56 2022 -0700

    Remove spurious \

commit 7910831a174c9bc8ac6f49e35c532847dacb202e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 25 17:08:10 2022 -0700

    Do not use a macro for handler::parallel_for with sycl::kernel

commit c3b0acaee57feedab14faa80425c1d201f3079e8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 25 16:44:11 2022 -0700

    Avoid derailing the sycl::kernel into the generic parallel_for
    
    After generalizing the code for any dimension, some default paths were
    wrongly used when using sycl::kernel instead of kernel callable.

commit eceb08760280ada8a9fa78bba0d109fb077437c5
Merge: d147e860 9887d620
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 26 11:42:54 2022 -0700

    Merge pull request #316 from keryell/ci-ubuntu-22.04
    
    Update GitHub action CI to latest Ubuntu 22.04

commit d147e860eec3c1b7d9bdfa51608137173d4f7183
Merge: c2ba7adb e6519794
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 25 14:26:32 2022 -0700

    Merge pull request #317 from keryell/mdspan-P0009R17
    
    Update to mdspan P0009r17 proposing now dextents

commit e651979407d20b0edd8f0cde40aa9009fa6dfcc6
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 18 09:00:02 2022 -0700

    mdspan implementation has renamed pointer and data()
    
    Use data_handle_type and data_handle() instead.

commit fa1aaf4640672fbada84e294f963ab70f062e79f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jul 18 08:52:41 2022 -0700

    Update new mdspan API style proposing now dextents
    
    Follow latest mdspan implementing
    https://isocpp.org/files/papers/P2299R3.html

commit 9887d6208a7f9fcfa19423f4ba6ea6e90339d450
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 15 11:59:02 2022 -0700

    Update GitHub action CI to latest Ubuntu 22.04

commit c2ba7adb4a3be4983a389ced490ad023c6e3543c
Merge: 4f30cc05 ac246746
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 15 11:53:00 2022 -0700

    Merge pull request #315 from keryell/include-triSYCL-only
    
    Add an include directory with only triSYCL in it to avoid conflicts

commit ac2467463001a49fbfbfae5fb9409ea9fdb93293
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 8 19:01:05 2022 -0700

    Add an include directory with only triSYCL in it to avoid conflicts
    
    When combining some triSYCL extensions on top of other
    implementations, we do not want that, according to how the include
    directories are ordered, some triSYCL sycl/sycl.hpp or CL/sycl.hpp
    are picked instead of the one from the other implementations.

commit 4f30cc0586d820784d06dbdb1a79c61899f911b9
Merge: 2fdc75a3 c24ffe1f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 3 20:53:15 2022 -0700

    Merge pull request #314 from keryell/buffer-accessor-2020
    
    Add new buffer accessor features for SYCL 2020 & Next

commit c24ffe1f231bff05f9b7eeeefff816140a6f99d0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 3 20:28:38 2022 -0700

    Conversion operator to scalar BasicType when only 1 dimension

commit a1356705bd48daac408c5567fb6cb437e2182bd8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Apr 15 18:02:23 2022 -0700

    Fix buffer Range constructor to avoid hijacking the sycl::range
    
    In SYCL, a sycl::range is also a C++ range, which is somehow confusing
    when generalizing the API.

commit f63e3b3a1f71fa121821b3db43b8d986a00c5fe6
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Apr 15 15:23:47 2022 -0700

    Remove useless variable

commit 593b17872e662a6486144af9a91bcc0deacce3ef
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Apr 15 15:23:08 2022 -0700

    Refine the concept to select buffer constructor from a range

commit 1670b256b4bca9d26dd3096ed8a0bca94f327ab5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Apr 9 09:16:02 2022 -0700

    Deduction guide to infer the buffer type from the read-write range

commit c6ab4ea172d4fd5b4054b00fb97628189ed53611
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Apr 9 08:54:48 2022 -0700

    Add buffer constructor from a range with copy-back on destruction

commit 4f0807c04783ccd0dd11a8731db450a15c94baa4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Apr 9 08:54:17 2022 -0700

    Remove spurious copy-paste

commit 642057a9551cf0ab02cf83395a9030696ed014d3
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Apr 7 17:59:34 2022 -0700

    Add 1-D buffer deduction guide for a forward iterator pair

commit 06a9cf39403c66c65a4ddea4423e44085735d6c8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Apr 7 17:59:02 2022 -0700

    Add accessor introspection on access mode and target

commit 6783fcc28a14d8dbf992bfec55bb5240c213bb11
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Apr 7 17:57:56 2022 -0700

    Add new SYCL 2020 accessor constructor inferring read/write mode

commit 2fdc75a363d02b1c78b6c1184c620d707c466719
Merge: c7221247 5590487f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Apr 8 03:04:34 2022 +0200

    Merge pull request #313 from keryell/allow-any-dimension
    
    Allow any dimension on SYCL objects.
    This experiments about some ideas for SYCL  Next.

commit 5590487fc3b3a4b1fbb6a4c0f1d62515108c14c0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Feb 28 16:38:18 2022 -0800

    Fix constructor ambiguity when compiling with g++-11
    
    While it was compiling clang++, it looks like it was ambiguous.
    Add some requires expressions to select the right constructors.

commit 75c764cf2f48718de835c5902fdd017496945f55
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 17:37:53 2022 -0800

    Remove explicit instantiating of parallel_for with offset
    
    Offsets are deprecated nowadays anyway, so no need to simplify their
    use.

commit 2713dd421dcbc4daf9792a856ca0493411d77a09
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 16:32:32 2022 -0800

    Factorize out range overloads for parallel_for

commit 46f769e651b08fbc1cf487ffa51d02d1ba44f143
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 16:31:07 2022 -0800

    Introduce detail::use_native_work_item constexpr variable
    
    This controls whether native work-item are used or not, emulated on
    single-task.

commit 8fdc03084fd05569e2a01236da543966823daef5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 15:06:16 2022 -0800

    Remove test of non standard feature
    
    No longer implemented with higher dimension implementation.

commit a5d737f621e340a1e595fcbe2bb6cf25963a0a42
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 15:04:59 2022 -0800

    Remove remaining make_range

commit e2ae9bac87cacbc594b156ba58a16b65cb8c3aab
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 24 15:02:20 2022 -0800

    Add explicit overload for parallel_for with a std:size_t as a range

commit a5bd16fbcca82a396b6d3a49d3646c0fd5d97cb4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 21 15:29:02 2022 -0800

    Generalize parallel_for(range, ...) to any rank

commit 8d9c1cdb2e784030dcc4661889f483cf4374fced
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 21 15:23:46 2022 -0800

    Generalize mdspan extent construction from small_vector

commit def1f8432bba8d6e65317046af5014a79014be63
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 21 15:16:53 2022 -0800

    Fix wrong concept constraint

commit 44aadbd4bb55c75bad305fe0dc34a3957ee9a9c2
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jan 20 13:07:42 2022 -0800

    Generalize sycl::range with with deduction guide
    
    make_range is no longer required.

commit 72473073d2654be3be768f681f51be02efe708a8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 16:40:55 2022 +0100

    Update detail::small_array test to latest development

commit c0746c616e6cfc854e766d73c205b9913ba94e68
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 16:30:22 2022 +0100

    Remove make_id() since id has CTAD now

commit 346a4ef1ec589c15dbf1839d542cdb9a629d468a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 15:53:07 2022 +0100

    Remove specific specializations for small_array_sycl
    
    Now the code is just generic and there is no need to care about
    special ranks of 1, 2 and 3.

commit 06d84a015a3bf1ffe1e7f23c00040bae14b3a049
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 15:42:18 2022 +0100

    Add deduction guide for sycl::id to guess the rank from arguments

commit a37a4eccb600e8e38d094eff856743899bb219a1
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 14:26:50 2022 +0100

    Update small_array_sycl to support any number of dimensions
    
    Provide test case with id, item, nd_item and range.

commit 6f6190012f2e6b1872654a64605fbe597628fcdd
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 13:58:43 2022 +0100

    Remove unused feature and template parameter

commit d90da8da52fb59d307b355ccc926fd80d956c6f0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 13:55:36 2022 +0100

    Modernize with C++17 type_trait variables

commit ec3efd1a68fe0216748d0a3d94c9c9ec6c21504b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 13:50:06 2022 +0100

    Use C++20 for cool features like concepts

commit 80f07f5430a7eae38d23c70ab3c567efd52b5788
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 13:34:08 2022 +0100

    Add new metaprogramming utilities
    
    Start with assignment from elements in a tuple.

commit 1e834731158dbf06fb973ac3804a86267ee77711
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 15:44:29 2022 +0100

    Relax the 3 dimension limit when detail::allow_any_dimension is true

commit f2ac9a117287b254bd2e8a63296ff10c94e55a81
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 14:57:54 2022 +0100

    Rename small_array_123 to prepare higher dimension extension

commit 6e7c88a2db3475f27ba23a0247cf68ac25f5e497
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 14:25:14 2022 +0100

    If TRISYCL_ALLOW_ANY_DIMENSION is defined, allow SYCL dimensions > 3
    
    This is a SYCL extension allowing higher ranks.
    Internally this defines constexpr bool allow_any_dimension
    accordingly.

commit c72212475103c3c90e75bf0f65b7afa40272f521
Merge: 553130b4 091c95ce
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 12 13:37:12 2022 +0100

    Merge pull request #312 from keryell/boost-test-to-catch2
    
    Update remaining tests using Boost.Tests to Catch2

commit 091c95ce58d4992456f97ef745e5210e86071cd4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 18:38:02 2022 +0100

    Do not run obsolete test

commit 1449da1a515cddcd585fc796a0ec7a471c02808f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 12:38:07 2022 +0100

    Add lacking test and fix Xilinx extension namespace

commit 15792607ec4c6a34f0e99127aa825c3ebd9f90fc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 7 12:19:16 2022 +0100

    Update remaining tests using Boost.Tests to Catch2

commit 553130b4dda387b98432647c37161044d2a8c460
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Dec 13 18:34:56 2021 -0800

    Clean up useless spaces in .clang-format
    
    I need a clang-format to clean the .clang-format itself.
    Kind of paradoxical.

commit d861630949936742c906af7fb7c1213a67d8d323
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Dec 6 11:51:11 2021 -0800

    Add missing top-level .clang-format
    
    It was forgotten in my directory since 2021/04/047. :-(

commit 5213c25692cef851cfee1c5a709840bbd35e6fff
Merge: 32f22fc4 9f0297b6
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 17:17:37 2021 -0800

    Merge pull request #311 from keryell/ci-ubuntu-21.10
    
    Update GitHub Action CI to use latest Ubuntu 21.10 and documentation.
    Modernize and fix a few details to have the CI working again.

commit 9f0297b6bf2fef20f098f362b7794a0a45d78724
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 16:07:48 2021 -0800

    Modernize documentation to fit Ubuntu 21.10 and C++20

commit 6a1077ebe82f3acd8423b00a2b8be41681788df0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 16:05:17 2021 -0800

    Remove default GitHub Action build
    
    It is too slow and got killed before finishing.
    Just keep the 2 core Docker configuration which is fast enough.

commit 948a9cacb6584e8e854cf7ccebf6d41d5b5c8fa4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 13:09:43 2021 -0800

    Install also the OpenMP library associated to Clang++

commit eff74d6392b1588572d631b21ac0cd853c572d13
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 12:14:48 2021 -0800

    Use the latest version of Catch2 to compile with Ubuntu 21.10
    
    There was an issue with the libc used in Ubuntu 21.10:
    src/catch2/internal/catch_fatal_condition_handler.cpp:94:58: error: call to non-'constexpr' function 'long int sysconf(int)'
       94 |     static constexpr std::size_t sigStackSize = 32768 >= MINSIGSTKSZ ? 32768 : MINSIGSTKSZ;
          |                                                          ^~~~~~~~~~~
    src/catch2/internal/catch_fatal_condition_handler.cpp:150:45: error: size of array 'altStackMem' is not an integral constant-expression
      150 |     char FatalConditionHandler::altStackMem[sigStackSize] = {};
          |                                             ^~~~~~~~~~~~

commit 05cadc540d2428dad3cfefc43c66121fdfcc8944
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 11:17:39 2021 -0800

    Run GitHub Action CI also on PR and branch & tag push

commit 3b34e65bdb4decd924550ec453c4708cf38be323
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 10:54:53 2021 -0800

    Update GitHub Action CI to use latest Ubuntu 21.10 Docker image
    
    Update Clang//LLVM to version 13.
    Remove tests with old G++ 7.

commit 32f22fc4daef320aa2a04dc2a087bf88dc969292
Merge: dd8977af 8e612c82
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 10:46:24 2021 -0800

    Merge pull request #310 from keryell/boost-fiber-mutable-lambda
    
    Allow mutable lambdas in the Boost.Fiber-based executor

commit 8e612c823a859d3d35b78f1f43723f72c194238f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Nov 23 10:13:21 2021 -0800

    Allow mutable lambdas in the Boost.Fiber-based executor

commit dd8977af58bfd975c06f3c67de4cc9ffc7571681
Merge: cab4ed5c 94eadd7c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Oct 14 13:34:02 2021 -0700

    Merge pull request #309 from keryell/remove-some-warnings
    
    - Remove some OpenMP vectorizer warning messages
    
      Remove the warning messages from the (OpenMP) vectorizer in
      include/triSYCL/parallelism/detail/parallelism.hpp
    
    - Remove some wrong use of std::initializer_list
    
      std::initializer_list were used in a pre-CTAD world as a container, which is wrong since std::initializer_list are not owning.
      They were not really need anyway, so remove this wrong use.
    
    - Also fix 2 forgotten Boost.Test to Catch2 conversions

commit 94eadd7c836c016bb33a47229acd9f47a76bdd55
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Oct 8 16:21:38 2021 -0700

    Remove some wrong use of std::initializer_list
    
    std::initializer_list were used in a pre-CTAD world as a container,
    which is wrong since std::initializer_list are not owning.
    They were not really need anyway, so remove this wrong use.

commit 079b697b6a238d9656d43f8f8e7af0517967cf31
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Oct 8 16:19:53 2021 -0700

    Remove some OpenMP vectorizer warning messages
    
    Remove the warning messages from the (OpenMP) vectorizer in
    include/triSYCL/parallelism/detail/parallelism.hpp

commit 5fca4033b334e5047d6096f0cc7594b5c9dbd41e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Oct 8 16:03:53 2021 -0700

    Fix 2 forgotten Boost.Test to Catch2 conversions

commit cab4ed5ce2ff499d5a25a4f4ec75aaa7011b013a
Merge: 6b9cb2c4 ecb7d4f2
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Oct 4 18:35:34 2021 -0700

    Merge pull request #308 from keryell/hidden_friends
    
    Use hidden friend comparison operators instead of member functions

commit ecb7d4f2a50eea9ae3770a7b3d6d39000b016a6a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 28 16:13:59 2021 -0700

    Remove useless capture of this

commit 83d49a90b63819af654ed04eb7638a548effb0db
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 28 15:55:45 2021 -0700

    Use hidden friend comparison operators instead of member functions
    
    Follow WG21 P1601R0 "Recommendations for Specifying “Hidden Friends”"
    from Walter E. Brown & Daniel Sunderland.
    
    This removes compilation warnings like:
    .../triSYCL/include/triSYCL/device_selector/detail/device_selector_tail.hpp:98:18: warning:
          ISO C++20 considers use of overloaded operator '==' (with operand types 'const trisycl::device' and
          'const trisycl::device') to be ambiguous despite there being a unique best viable function
          [-Wambiguous-reversed-operator]
          return dev == default_device ? 1 : -1;

commit 6b9cb2c4e9de3f96e47bb8cb18202d1577f1d7b5
Merge: 8e3df514 393ae45e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Oct 1 16:23:41 2021 -0700

    Merge pull request #307 from keryell/catch2
    
    Change the test infrastructure to use Catch2 v3 instead of Boost.Test

commit 393ae45ed10a9c5dd71d1ff560ffaae3f589930b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 28 15:06:36 2021 -0700

    Rewrite the tests to use Catch2 instead of Boost.Test

commit 568c0fbc8af80e9fbeb67ac7c9df463d5151bea9
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Aug 31 07:06:45 2021 -0700

    Use latest version of software through FetchContent
    
    There is a bug in CMake before 3.21 not having GIT_SHALLOW working, so
    use latest commit of the branch even if it is not super stable...

commit c01c297920d673e6279b70f9276f98ebe5b63aff
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Aug 10 13:13:37 2021 -0700

    Update CMake declare_trisycl_test to use Catch2 test infrastructure
    
    Take the opportunity to modernize tests/CMakeLists.txt too.

commit 7ffd3c20aef2196f8e1bdb2055bb4f9570d45450
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Aug 10 12:23:04 2021 -0700

    Remove spurious keyword

commit 7c97ab13a6c0a849959c98e6769ff0d6d20511ae
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Aug 9 10:47:14 2021 -0700

    Change a test to use Catch2 v3 instead of Boost.Test

commit 8e3df51436fcdb3e8d2e1236cc2f06574317e5c7
Merge: 1ca8ce18 984767aa
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Aug 4 22:57:33 2021 +0200

    Merge pull request #306 from keryell/fetch_content_range_v3
    
    Fetch the content of the range-v3 library directly from the source

commit 984767aaf5b44f3f46c1315a70f8ecff2aad50ea
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Aug 3 01:46:23 2021 -0700

    Freeze the version of mdspan used
    
    Avoid some random breakage if the API changes upstream.

commit d9081dd9336ad86eaa475573d1f0074db4a2c487
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Aug 3 01:41:12 2021 -0700

    Fetch the content of the range-v3 library directly from the source
    
    This avoids some issues with old versions provided as package by some
    Linux distributions.

commit 1ca8ce188f27be5bec243d52ef45ce2f5fccfea4
Merge: f77221a3 2cbd935c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Aug 2 16:02:04 2021 +0200

    Merge pull request #304 from keryell/mdspan
    
    Moving from Boost.MultiArray to std::experimental::mdspan

commit 2cbd935c15e8c57675be5ebb154bb349e821ed0c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jul 29 13:14:07 2021 -0700

    Remove old install mdspan-related code
    
    Useless since by using FetchContent we do no longer install mdspan.

commit 004bc3cd126273dae64cb8dff428fa5d66c88be8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jul 29 13:09:12 2021 -0700

    Fix ctest call in GitHub Action Docker

commit c4550343e78397c08397159635f009cb2356921c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jul 29 12:38:07 2021 -0700

    Use FetchContent to install experimental std::mdspan
    
    Replace the previous ExternalProject which was only working by change
    in this configuration.

commit a257b17da9a762f0cf802546e72f25a5e48ca544
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 10:07:35 2021 -0700

    Fix CMake recipe in GitHub Action Docker

commit c2c9ac3b526b9a2f1c2db57d48627283badf3ec6
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 09:52:54 2021 -0700

    Clean up the GitHub Action cmake.yml

commit 6527851d9ccc3b86219c4aec331c583176cc087a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 07:08:22 2021 -0700

    Do not cancel all in-progress jobs if any matrix job fails

commit f6316ade32ae0624ca35afc09f9d1bc9c9424675
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jul 23 10:57:25 2021 -0700

    Take ownership of /usr/local for mdspan installation
    
    To have the CI working.

commit 7e109001e81d480b8342776a0d459d570db58112
Merge: 79e24676 f77221a3
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 05:57:59 2021 -0700

    Merge branch 'master' into mdspan

commit f77221a305c3219505311060f512eec3d9dfccc3
Merge: dad47d1d 5f602ee2
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 14:55:29 2021 +0200

    Merge pull request #305 from triSYCL/add-github-action-ci
    
    Add a GitHub Action CI based on CMake.
    Replace the defunct Travis CI.

commit 5f602ee206248c42cdf590a247fcdfc32457f8c9
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 05:41:07 2021 -0700

    Add a badge showing the status of the GitHub Action CI

commit b485b13623c8372ae9f0e2ec9de288353e2a1963
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 27 05:29:03 2021 -0700

    Remove defunct Travis CI configuration

commit 581ee4621c29a8f44bee2f98bafee7e42af0b785
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jul 23 10:10:49 2021 -0700

    Use GitHub Action strategy matrix
    
    This allows some code factoring along a suggestion from @AlexeySachkov
    Alexey Sachkov.

commit cd93744d1beb3acd4961f84ba8d9a38c18fe6100
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jul 23 09:17:30 2021 -0700

    Use more GitHub Action environment variables
    
    Suggestion from @AlexeySachkov Alexey Sachkov.

commit df5d6beddee7dfa97f6b3ae10b7e4ffd44bd2bfb
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jul 23 07:43:16 2021 -0700

    Do not run with Clang-12 and OpenMP with PoCL
    
    There is some library conflict.
    Remove also the installation of libomp-dev since it comes with Clang
    naturally nowadays.

commit cb4a29051ae11297d7b2d6eaea8d02a72c911494
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jul 23 07:29:09 2021 -0700

    Install the OpenMP library matching the version of Clang

commit 78f74625e64b2b9c82312626d0e0f149b95a9a84
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jul 21 09:57:39 2021 -0700

    Run various combinations of compilers and OpenCL/OpenMP

commit 9e9632ab4a4afae5ff67f58792cbf8b0e06f167b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 20 08:57:13 2021 -0700

    Use Docker to run the CI with a specific Ubuntu version
    
    Just try with g++-11 for now.

commit fc696a775b1faab9fb364ed03dac0f3c582a2492
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 20 03:20:43 2021 -0700

    Add required Ubuntu packages in GitHub Acti
    
    on#

commit 79556ddc305fc3a309588f89fe097d08ed0ea7bf
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jul 20 03:00:17 2021 -0700

    Start a GitHub action CI
    
    This is to replace the defunct Travis-CI for open-source projects.
    Use default suggested cmake.yml

commit 79e2467693779a4e98c6902b2e2faeb6d214a661
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 14 14:24:56 2021 -0700

    Update basic_mdspan to mdspan according to P2299R3 implementation
    
    basic_mdspan disappeared in https://github.com/kokkos/mdspan/pull/59

commit b87d851d4557ea6a7a11c5a427bcbc057b100113
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 7 17:11:24 2021 -0700

    Install P0009 mdspan implementation since it is used by triSYCL
    
    Use CMake ExternalProject for this.

commit 8be118819f877f7305c5058ff5aa242a232cee8a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 7 16:55:02 2021 -0700

    Update to mdspan implementation from P0009r11
    
    index_type was renamed size_type.

commit 22ec9822eeef738804b665a8b9025e9cf9f2ea6e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 4 15:46:30 2021 -0700

    Fix test to use new accessor::rank() API

commit a7d9c67bbcdcda75ca4086cbeeb6f1c2ffc9db48
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 4 15:39:07 2021 -0700

    Implement accessor iterators on top of C++20 std::reverse_iterator

commit a47a2ac02d430f3c658c726283b4b2d0f5d08f20
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 4 15:37:24 2021 -0700

    Test also the accessor reverse iterators

commit b85dbd6439a1a1b13b4f7d03a5745f14c261f456
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jun 3 18:45:55 2021 -0700

    Refactor local accessor on top of existing accessor façade and mixin
    
    Also implement a CPU local accessor as a host accessor on top of an
    internal host buffer.

commit 301b86daf73dc34fe55f052d85ec04891e3e4704
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 26 15:57:27 2021 -0700

    Add rank() to several SYCL objects and remove Boost.MultiArray

commit a5857e44c4d4c9f6c439ed613d1a31c0dae2e1e3
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 26 14:09:55 2021 -0700

    Handle buffer of const values

commit 9b1ece162659143e34c15d0b80755fac15a71726
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 26 13:51:17 2021 -0700

    Implement accessor[i1][i2][i3] syntax on top of mdspan object
    
    Use a proxy object to transform an expression like accessor[i1][i2][i3] into
    the implementation mdpsan(i1,i2,i3) one index at a time.
    It gathers intermediate [index] to finally call the mdspan indexing
    operator once they are all available.

commit b3019b00e452262e3cfffee35c451965b54a791d
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 26 11:42:20 2021 -0700

    Add 3D case and remove offset in host accessor test
    
    Offsets are deprecated in SYCL 2020 so do not waste time on this.

commit ef85808fb4cb1653a9716096fc87e91a6227efcc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue May 25 15:26:43 2021 -0700

    Fix accessor get_pointer() const-ness
    
    Fix accessor/accessor.cpp get_pointer() test.

commit cf39b409fc9bcd5471f7c8a18433ff79cc3ded08
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri May 21 15:35:59 2021 -0700

    Move user-facing buffer accessor functions into an accessor façade

commit 16911c89b121059a993965225922c2ad27267ef4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri May 21 14:04:22 2021 -0700

    Move buffer detail get_range/get_count/get_size into accessor mixin

commit 24082e3169993f3f456f06441124169bb5385415
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri May 21 13:45:54 2021 -0700

    Factorize the accessor aspects of buffer details into a mixin

commit 301c0902dd84bc355d14d768d874c80a4c9e4e84
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 20 15:54:12 2021 -0700

    Bring back the old allocation/deallocation scheme for host buffer
    
    Otherwise we cannot make the difference between memory provided by the
    user or not during buffer destruction.

commit 05fbda503903c99f67df227d22f2a0d346a8fdc0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu May 20 15:37:04 2021 -0700

    Fix include guard macro name

commit 06b36f7d38db92ff2260e8459d3f27ca8e221fb5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 19 16:36:10 2021 -0700

    Use mdspan for multidimensional accessors and arrays
    
    There are still a lot of tests failing.

commit 4ecaafcb4bc792c18d5e1ddeb7f6a50b017e4f22
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed May 19 15:49:35 2021 -0700

    Pass SYCL index objects by const ref to accessors
    
    Otherwise it will become too costly with high ranks in the future.

commit f31d53d2b2f42dd6df3b2e0acbceae31f732d628
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon May 17 10:40:52 2021 -0700

    Start moving from Boost.MultiArray to std::experimental::mdspan
    
    For now, just working on 1-D and for host_accessor.

commit dad47d1d5d997a20559a9b39996e54bc4719e4f1
Merge: 65f37761 7bd5a959
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue May 11 15:37:23 2021 -0700

    Merge pull request #303 from keryell/host_accessor
    
    Add minimal SYCL 2020 host_accessor

commit 7bd5a959edb7942aedf81a33357cc2a10982c14e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon May 10 17:41:10 2021 -0700

    Add rank() function à la ISO C++ P0009 mdspan
    
    Return the number of dimension of the object.

commit 47d592f3e96271b4188f7513bf53dcbdae7d2888
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon May 10 17:42:16 2021 -0700

    Add minimal SYCL 2020 host_accessor
    
    For now this is just an alias to the SYCL 1.2.1 equivalent type.

commit 65f3776146ad47d01152db01b0a6a704ce237293
Merge: fbfc9c4d 30ea4aaf
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Apr 29 17:46:13 2021 -0700

    Merge pull request #302 from krasznaa/SubProject-master-20210429
    
    CMake Sub-Project Improvements, master branch (2021.04.29.)

commit 30ea4aaf3b1f38a56e1245b27259232d4a749559
Author: Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch>
Date:   Thu Apr 29 10:55:16 2021 +0200

    Made the project configuration more friendly towards being included in another project.
    
    Allowing the CMAKE_CXX_STANDARD variable to have been pre-configured by the parent
    project, and foregoing the CPack configuration if it is not the main project
    being built.

commit fbfc9c4d66fbb342da2f0636dfe00bd204b9ff69
Merge: 035e4f9c 54bec9f4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Apr 19 14:03:17 2021 -0700

    Merge pull request #301 from keryell/facade
    
    SYCL facade to build generic conceptual SYCL devices

commit 54bec9f404f5cc8e48e59b4644c4afae183f3f6f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 7 13:54:11 2021 -0700

    Implement a device facade to build generic conceptual SYCL devices
    
    Useful to generalize SYCL devices with more or different API while
    keeping the same conceptual behavior.
    For example for devices like Xilinx AIE CGRA.

commit 035e4f9c32c4bb08aa561580b4e2075c15f8ed76
Merge: 25c020af 27e41cac
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Mar 24 21:49:03 2021 -0700

    Merge pull request #298 from lforg37/sign_function
    
    Add sign function

commit 27e41cacfb018694d975bbd4d1c4f45ff07a0c46
Author: Luc Forget <luc.forget@insa-lyon.fr>
Date:   Thu Feb 4 10:02:28 2021 +0100

    Add sign function

commit 25c020af196446de3124bfd810e8b63841267183
Merge: 3ffd9acd ffad3ac1
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Mar 18 19:11:25 2021 -0700

    Merge pull request #299 from keryell/vec-abs
    
     Generalize mathematical functions on sycl::vec

commit ffad3ac1e6ef80f208f59d4beef1a7193adba7aa
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Mar 17 21:40:21 2021 -0700

    Remove work-in-progress work on vector operations

commit 3ffd9acdbb994016ab118124489fa9b18c262804
Merge: d092e455 f2187d36
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Mar 17 17:38:38 2021 -0700

    Merge pull request #300 from keryell/ronan/fix-debug-ctor-tracer
    
    Improve debug tracing class

commit f2187d367ac64e05c25ede3e7bc55019edd4d497
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Mar 16 15:43:58 2021 -0700

    Name the type_pretty_name() function to be used by the heir class

commit b41e89a4134d3f7e971bc14ea4e62c277eeef9d8
Author: Ronan Keryell <ronan.keryell@xilinx.com>
Date:   Wed Feb 24 07:55:25 2021 -0800

    Apply suggestion from review
    
    Factorize out function to get the name of a type.
    
    Co-authored-by: Luc Forget <lforg37@users.noreply.github.com>

commit e329fe8034c7e016c6e6299b5ece33ef10ec447a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Feb 23 11:28:04 2021 -0800

    Improve debug tracing class
    
    The trisycl::detail::debug CRTP was using introspection of the native
    type to know whether the type was copy and move constructible before
    defining such a constructor to avoid preventing the generation of the
    default assignment operator.
    But actually this is an unsolvable question because of the
    self-reference essence of the CRTP.
    It was still working with G++ but no longer working starting with
    Clang++-11.
    So, instead, do not use std::enable_if or concepts but just define all
    the operators.
    A nice side effect is that now copy and move assignments can be traced
    too.

commit f97919689f7a1bbb9b5824a60badf3ed4011495b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Feb 23 09:54:13 2021 -0800

    Use references instead of pointers
    
    Shorter and cleaner.

commit 95db17345f4814f1dce29db6c0ee5259fc48159b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Feb 13 14:23:10 2021 -0800

    Generalize mathematical functions to sycl::vec
    
    Test that sycl::abs now works for sycl::vec.
    This should be tested quite more...

commit 430feda6798e287d7e5057d907feb37107bc1b87
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Feb 13 13:26:16 2021 -0800

    Sort before improving

commit 3ee217f0cdb3118ba751f1ec3bd776621e62a936
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Feb 13 12:57:36 2021 -0800

    Modernize test

commit d092e455ab06064249a9df2454b12eadaa4c4dc2
Merge: 2b6349a6 02f75fed
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Feb 1 12:15:15 2021 +0100

    Merge pull request #297 from keryell/trisycl-triSYCL
    
    Use triSYCL in file names instead of trisycl

commit 02f75fed2dbe944f0dbf31ae6be4b30a1879e856
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jan 28 21:38:45 2021 +0100

    Use triSYCL in file names instead of trisycl
    
    But keep trisycl in namespaces as the basic coding style.

commit 2b6349a6720fd396958e3c09c754f36514afd28a
Merge: 76302fb5 255d6d96
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jan 28 11:49:19 2021 +0100

    Merge pull request #296 from keryell/ronan/random-xorshift
    
    Add extension for simple xorshift pseudo random generator

commit 76302fb5708f714edb17a45abb1c987f2f63a8da
Merge: 177d6f41 2e0acac5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jan 28 11:38:08 2021 +0100

    Merge pull request #293 from keryell/ronan/include-SYCL-sycl
    
    Change #include "SYCL/sycl.hpp" to "sycl/sycl.hpp" for SYCL 2020
    
    Everything in lowercase to avoid mixed-case confusion.

commit 255d6d96c2530ab65860c9ec93f2f68567d11153
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 25 22:12:55 2021 +0100

    Add CMake configuration for tests/random/xorshift

commit 3f11975a1672483a189b9a1379c788718cc84a9b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 25 21:57:31 2021 +0100

    Connect xorshift to other <random> functions from the STL
    
    xorshift can be used to generate uniform numbers and so on.

commit 4a6523b9fd1206067fbd18f5eb9d098c235f09b0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 25 21:15:30 2021 +0100

    Add default initialization to xorshift
    
    Add also unit tests.

commit 138e141827944e831790f9146ddde2aa0ab8af2f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 25 18:44:03 2021 +0100

    Fail with an error message for unimplemented xorshift bit size

commit 36bd966a2fcd10e621e665b88a9509237cd7e998
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jan 25 18:38:07 2021 +0100

    xorshift pseudo random number generator extension

commit 177d6f4171def98efde3e3cffcc6a3cb29dab03b
Merge: a8c204b7 4dc16ac9
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jan 22 21:13:08 2021 +0100

    Merge pull request #294 from keryell/ronan/math-forward
    
    Add "const &" to math function arguments

commit 4dc16ac9ebf4675dcba225969ca413aa483474cc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jan 20 22:02:15 2021 +0100

    Add "const &" to math function arguments
    
    Avoid to copy sycl::vec arguments for example.

commit 2e0acac590c4d1d710aa44f4125026c88e7985ee
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 19 21:52:44 2021 +0100

    Change #include "SYCL/sycl.hpp" to "sycl/sycl.hpp" for SYCL 2020
    
    Everything in lowercase to avoid mixed-case confusion.

commit a8c204b7f9e11846923a3b00a5d5276ad484fb63
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 12 17:11:59 2021 +0100

    Remove parasitic namespace

commit 744113af1bdd6309222d63f35643237fc95bde91
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 12 17:11:26 2021 +0100

    Add missing weak attributes

commit 959643fc62fc873baa42dcabd0e4d4cd77b07885
Merge: 8c2b9ab1 1888d5da
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 5 18:33:51 2021 +0100

    Merge pull request #291 from keryell/unary-operators
    
    Implement unary operators for vector-like SYCL types

commit 1888d5da053c3fc7ece8b90decdf197673aace4d
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 5 15:53:54 2021 +0100

    Modernize compilers in Makefile and documentation

commit 086d30ede6b163f3408a508f4da4a034f0541de8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jan 5 15:49:32 2021 +0100

    Remove operator ambiguity between 1-element vector and basic type

commit e75c419e890e3f944a4a68fed2562e9c7d48ae14
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Dec 1 22:22:30 2020 -0800

    Implement unary operators for vector-like SYCL types
    
    -, +, -- and ++ were forgotten in the specification for range, id, vec...

commit 8c2b9ab155ceb9a08591ac2150dbcdfc2a406e8e
Author: Ronan Keryell <ronan@keryell.fr>
Date:   Sun Nov 29 15:16:11 2020 -0800

    Add trisycl::detail::overloaded to ease std::visit usage

commit 1796763457daf29bf4ffd2b9a06e863090fed11e
Merge: 0faf2904 b27e99af
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Nov 6 15:23:45 2020 -0800

    Merge pull request #290 from keryell/cout-pipe
    
    Add triSYCL pipe extension to send data to std::cout

commit b27e99af3e5231ed6da99b3133b9226d5429f5c5
Author: Ronan Keryell <ronan@keryell.fr>
Date:   Tue Oct 13 10:31:01 2020 -0700

    Add triSYCL pipe extension to send data to std::cout

commit dec0c835031714eeb89e5a1ee9cb3f5b41b4fefa
Author: Ronan Keryell <ronan@keryell.fr>
Date:   Tue Oct 13 10:04:14 2020 -0700

    Enable vendor extensions include from SYCL/ too
    
    Add a symbolic link so it works both from triSYCL/ and SYCL/.

commit 0a76cb10b61433a06eb8cc92a998b06315e96197
Author: Ronan Keryell <ronan@keryell.fr>
Date:   Tue Oct 13 10:01:53 2020 -0700

    Fix linking when using triSYCL in several translation units
    
    Use more C++17 inline.

commit 0faf2904e14e519714296262abd15f24406ed003
Merge: bd3346e4 a13e6dbc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Sep 30 16:28:30 2020 -0700

    Merge pull request #289 from keryell/cmake
    
    CMake improvement

commit a13e6dbce3157919f9e54f8f492ae5710769a754
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Sep 25 19:22:09 2020 -0700

    Add range-v3 library in the CMake public dependencies

commit eda2dba4830fb597e80e8cae04b75535daf83c16
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 22 19:27:18 2020 -0700

    Start adding range-v3 library to the documentation and CMake

commit f566813352dc713476e99f76dfe964b1b09e9dfc
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 22 19:14:38 2020 -0700

    Remove some unused variable from an internal branch

commit 84ecf06f352d4c49bba3341845e620292f3802c5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 22 18:30:02 2020 -0700

    Update Boost packages in CMake to match usage

commit 8ff65320f9d52a5373041679aa397810b29d772b
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 22 17:31:26 2020 -0700

    Rename FindTriSYCL to FindtriSYCL to match the project name

commit bd3346e483e2e547045d390c0c15244d31e56364
Merge: 84cbb4d2 d5c08576
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 22 09:14:26 2020 -0700

    Merge pull request #288 from Ralender/FixLeak
    
    Fix memory leaks caused by incorrect initialization order.
    Fix memory leak caused by circular dependency.

commit f579f4310c707e18505594f4fdecbccfb719c286
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Sep 21 21:10:10 2020 -0700

    Improve TRISYCL_INCLUDE_DIR computation for remote usage
    
    It is computed from the CMake file location instead of the project
    location, in such a way the value is correct when the file is included
    from anywhere.

commit d2887f2f692221c94c867339735b2d18f731e877
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Sep 21 21:08:02 2020 -0700

    Improve CMake documentation
    
    Modernize and generalize the build command.
    Document the package build.

commit d5c0857652379cc49983b8194a18ef8ff2f3fbc8
Author: Gauthier Harnisch <gauthier@xilinx.com>
Date:   Wed Sep 9 07:01:51 2020 -0700

    Fix memory leak caused by circular dependency

commit 7d82ccf94985cf3a8a74a83b27895cdbae97649a
Author: Gauthier Harnisch <gauthier@xilinx.com>
Date:   Wed Sep 9 05:41:22 2020 -0700

    Fix memory leaks caused by incorrect initialization order

commit 84cbb4d2b2b170a998dd03a7ae389da9d7fa6ba1
Merge: 0c69f873 86a86610
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Sep 8 22:03:49 2020 +0200

    Merge pull request #287 from j-stephan/fix_integer_conversion
    
    Fix faulty integer conversion

commit 86a86610acf778ba7cdbee6ed7f8d16c8f81e241
Author: Jan Stephan <jan.stephan.dd@gmail.com>
Date:   Fri Sep 4 16:31:39 2020 +0200

    Fix faulty integer conversion

commit 0c69f873df1a5f900fe8fe2c3fcf21e6d964b2d9
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Thu Jul 2 11:52:56 2020 -0700

    Update project status in README

commit b97c97a70a529af6587c84e23aa08a21a042b2c3
Merge: 1f410849 d22e9a44
Author: Jan Stephan <jan.stephan.dd@gmail.com>
Date:   Wed Jun 10 09:38:28 2020 +0200

    Merge pull request #281 from keryell/issue-276
    
    Add missing #include <optional>

commit d22e9a446df6e5c18c4631b3d415d03ecd67394f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Jun 9 19:57:11 2020 -0700

    Add missing #include <optional>
    
    This should fix https://github.com/triSYCL/triSYCL/issues/276 noticed
    by @Lotte1990

commit 1f410849c6e575c24c2986dc007d245f40054330
Merge: ce9b50f5 5fd811e8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 8 18:45:39 2020 -0700

    Merge pull request #263 from keryell/new_pipe
    
    New pipe extension on CPU
    This implements an extension close to the Intel proposal discussed intel/llvm#832
    Move obsolete SYCL 2.2 pipe into sycl_2_2:: namespace and tests to a specific directory.

commit 5fd811e8a9d09006bb4fca8f2584e8c0e27c4af7
Merge: ad678aad 434ccd3a
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 8 18:08:22 2020 -0700

    Merge branch 'master' into new_pipe

commit 434ccd3af1f1784224c1f99b3bff95b48cdd97a2
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 8 17:38:02 2020 -0700

    Modernize .travis.yml syntax and state we are using Linux

commit ce9b50f5cfc064668f844d500b77bd59ec015194
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 8 17:06:56 2020 -0700

    Improve Dockerfile to handle any compiler version
    
    Not only a precise hard-coded version.

commit 59a04f7d6d80b4ab5ff5502a66261145362d49da
Merge: a7da8920 b79b780f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 8 16:34:36 2020 -0700

    Merge pull request #270 from j-stephan/master
    
    Use standard C++ attribute syntax

commit b79b780fcdf25c8c09ba7619b3314a762f01e01f
Author: Jan Stephan <jan.stephan.dd@gmail.com>
Date:   Mon May 11 22:24:05 2020 +0200

    Use standard C++ attribute syntax

commit a7da8920bcf46a0fc06c062cf1b08259add472f4
Merge: 0a1b990f 77fc3f94
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Sat Jun 6 10:04:49 2020 -0700

    Merge pull request #272 from keryell/structured-binding
    
    Implement SYCL extension for sycl::vec<> with structure binding
    
    Simple extension described in https://github.com/triSYCL/triSYCL/issues/271

commit 0a1b990f9927fd89646c0d3d05d922b6c809c585
Merge: ecc413d0 3f062d81
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 5 17:54:36 2020 -0700

    Merge pull request #262 from keryell/fiber_executor
    
    Add fiber pool executor based on Boost.Fiber and std::thread

commit 77fc3f945c334ae0c25ac51b6faaab75ea2f58f9
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 5 17:28:38 2020 -0700

    Use a struct for std::tuple_size<trisycl::vec> specialization
    
    This fix this warning:
    
    /trisycl/include/triSYCL/vec.hpp:584:1: warning: 'tuple_size' defined as a class template here but previously declared as a struct template [-Wmismatched-tags]
    class tuple_size<trisycl::vec<T, Size>>
    ^
    /usr/bin/../lib/gcc/x86_64-linux-gnu/7.5.0/../../../../include/c++/7.5.0/utility:84:5: note: did you mean class here?
        struct tuple_size;
        ^

commit 3f062d816685dc538cb4d914688247e03e26054e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 5 17:20:11 2020 -0700

    Add missing Boost.Thread and update GCC & Clang to 7

commit 7c7c282426bda018532ee09ce71d1b8c84ba89dd
Merge: 21d788e7 ecc413d0
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 5 16:44:34 2020 -0700

    Merge branch 'master' into fiber_executor
    
    Resolve conflicts on:
    
      Dockerfile

commit ecc413d0b38e2fe711c3d92f8b7dcae3692a7360
Merge: c3a5e005 3763a415
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Fri Jun 5 16:35:47 2020 -0700

    Merge pull request #274 from keryell/modern-CI
    
    Modernize Travis-CI testing configuration to use latest Ubuntu 20.04

commit 3763a415e5e986b4b244abdf2ad287660af34ead
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 10:44:12 2020 -0700

    Use noninteractive frontend to avoid hanging forever during install
    
    This fix the following problem with solution from
    https://github.com/tgockel/json-voorhees/pull/161:
    
    Setting up tzdata (2020a-0ubuntu0.20.04) ...
    
    debconf: unable to initialize frontend: Dialog
    
    debconf: (TERM is not set, so the dialog frontend is not usable.)
    
    debconf: falling back to frontend: Readline
    
    Configuring tzdata
    
    ------------------
    
    Please select the geographic area in which you live. Subsequent configuration
    
    questions will narrow this down by presenting a list of cities, representing
    
    the time zones in which they are located.
    
      1. Africa      4. Australia  7. Atlantic  10. Pacific  13. Etc
    
      2. America     5. Arctic     8. Europe    11. SystemV
    
      3. Antarctica  6. Asia       9. Indian    12. US
    
    Geographic area:
    
    No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself.
    
    Check the details on how to adjust your build configuration on: https://docs.travis-ci.com/user/common-build-problems/#build-times-out-because-no-output-was-received
    
    The build has been terminated

commit b6d40bec5e3a7d65437e0d5dd50d19321f638732
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 10:14:25 2020 -0700

    Update compilers to GCC-10 & Clang/LLVM-10

commit fc0f1cf3652d17f696c66f3d9f1a8188aee3b0db
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 09:49:14 2020 -0700

    Also use Ubuntu 20.04 in Docker containers
    
    Technically speaking, Docker is no longer necessary right now because
    we use the same OS version as the underlying Travis-CI one.
    But in the future it might be probably different again, so keep this
    infrastructure alive, even if it causes quite latency for nothing
    right now.

commit b01ec2b168df5e7f55b864946932c74fda15ebf5
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 09:29:12 2020 -0700

    Use directly Ubuntu 20.04 on Travis-CI
    
    It is not officially available in the Travis-CI documentation but it
    looks like it is available! :-)

commit 38812f193ce9ef9fd80b3d1060cf025196836907
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 09:07:23 2020 -0700

    Use Ubuntu 18.04 in Travis-CI

commit 439ed50e6b7b5e76e7836a2a1f66c02a9baab054
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Jun 3 08:31:17 2020 -0700

    Remove deprecated Travis-CI option

commit f039fb9bb29963f4756d0b5df9f4036c30a4173e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 1 13:35:48 2020 -0700

    Add new vector structure binding test to the CMake infrastructure

commit a6b5cded4643cb1d10797ccb3dba38875840711c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 1 13:28:09 2020 -0700

    Implement SYCL extension for sycl::vec<> with structure binding
    
    This should close the extension request
    https://github.com/triSYCL/triSYCL/issues/271

commit 0631d4a716ca0e16e774485347a1f2509acbe57e
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Jun 1 13:24:58 2020 -0700

    Clean-up forward declarations and #include around sycl::vec<>

commit c3a5e005a704b2cbf1c548c8b03ccc15d6012d2d
Merge: 3b16711c ede9344f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 22 18:48:54 2020 -0700

    Merge pull request #266 from keryell/master
    
    Fix various warnings and clean up
    
    Actually some warning has been fixed for C++20,
    but now it can cause warning with some older compilers...

commit ede9344f62987220a1cf58a9d28770426ec55d37
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 22 14:52:36 2020 -0700

    Just use std::abs, std::min, std::max
    
    No need to reinvent them nowadays.

commit b30ea396b1e49e93e4305cacfd479c3d91c9084c
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 22 14:51:25 2020 -0700

    Fix unused variable warnings

commit c786154f587ae6bd47ba32f1c4d0d58cabb130f8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 22 14:50:12 2020 -0700

    Fix "implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20"

commit 315cf06ed46328e04c4f00e89aa516cb58f6a6db
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 22 14:46:20 2020 -0700

    Remove useless copy constructor
    
    Just trust the compiler.

commit ad678aad418c951b16801e725d0be0f78c5d6d66
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Apr 13 18:21:52 2020 -0700

    Add missing header

commit 132085527cd9ff0f1825180d82393aeb2a52d8a8
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Wed Apr 8 14:16:14 2020 -0700

    First attempt of Intel pipe extension on CPU
    
    This is based on boost::fibers::buffered_channel FIFO.

commit dd11b402a009c4219f2f1a9d8e4085e576415810
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Apr 7 15:28:47 2020 -0700

    Move tests for obsolete SYCL 2.2 pipe into specific directory

commit a6e196d40c0c6d41aabff206f7298a2fe7f63cf4
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Apr 6 16:54:54 2020 -0700

    Move old SYCL 2.2 pipe proposal into a cl::sycl::sycl_2_2 namespace
    
    This frees the cl::sycl namespace to experiment with new pipe
    extensions later.

commit 66dfa3ba254c7c59cef703701b86eb9dc26751c6
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Apr 6 15:14:17 2020 -0700

    Move obsolete SYCL 2.2 pipe related code into separate Doxygen module

commit b30d03704c91048ac36fa35e5c0f412ab4d15a4d
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Mon Apr 6 14:54:32 2020 -0700

    Move old SYCL 2.2 pipe examples into old_pipe directory
    
    This is a proposal for the now abandoned SYCL 2.2 provisional specification.
    This is still here for historical reasons.

commit 21d788e798aeaa5d6fe0aeba7693e805c3123c0f
Author: Ronan Keryell <rkeryell@xilinx.com>
Date:   Tue Mar 31 17:14:47 2020 -0700

    Change fiber executor API to return a future to some result
    
    This allows cleaner resource management.

commit 31dd7dd7b5a0c27abed448fb26adfc2d9256fbff
Author: Ronan Keryell <ronan.keryell@xilinx.com>
Date:   Thu Mar 26 12:07:20 2020 -0700

    Add missing librange-v3-dev package to TravisCI configuration

commit e65ceb7c3a6e09290125cc288398f0baef4f3cbc
Author: Ronan Keryell <ronan.keryell@xilinx.com>
Date:   Thu Mar 26 11:37:01 2020 -0700

    Add fiber pool executor based on Boost.Fiber and std::thread
    
    This comes is mainly recycling the experiment done in
    https://github.com/keryell/teaching_C-plus-plus/tree/master/Boost/Fiber
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant