Mesa (master): clover/core: Support MSVC

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Dec 2 18:52:48 UTC 2020


Module: Mesa
Branch: master
Commit: f88347cd223c34324816e917e02aeaa31c6a58b5
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f88347cd223c34324816e917e02aeaa31c6a58b5

Author: Jesse Natalie <jenatali at microsoft.com>
Date:   Wed Nov 18 18:37:03 2020 -0800

clover/core: Support MSVC

Constructing a class where the class name is wrapped in parens
doesn't work with MSVC. I see no good reason to do that so drop
the parens. Also, use a generic page size helper instead of hardcoding
something OS-specific.

Reviewed-by: Francisco Jerez <currojerez at riseup.net>
Reviewed-by: Karol Herbst <kherbst at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7680>

---

 src/gallium/frontends/clover/core/device.cpp   | 39 +++++++++++++-------------
 src/gallium/frontends/clover/core/platform.cpp |  2 +-
 2 files changed, 21 insertions(+), 20 deletions(-)

diff --git a/src/gallium/frontends/clover/core/device.cpp b/src/gallium/frontends/clover/core/device.cpp
index 76b61a1b8f5..e861bab1e14 100644
--- a/src/gallium/frontends/clover/core/device.cpp
+++ b/src/gallium/frontends/clover/core/device.cpp
@@ -21,7 +21,6 @@
 //
 
 #include <algorithm>
-#include <unistd.h>
 #include "core/device.hpp"
 #include "core/platform.hpp"
 #include "pipe/p_screen.h"
@@ -235,7 +234,9 @@ device::has_unified_memory() const {
 
 size_t
 device::mem_base_addr_align() const {
-   return std::max((size_t)sysconf(_SC_PAGESIZE), sizeof(cl_long) * 16);
+   uint64_t page_size = 0;
+   os_get_page_size(&page_size);
+   return std::max(page_size, sizeof(cl_long) * 16);
 }
 
 cl_device_svm_capabilities
@@ -345,21 +346,21 @@ std::vector<cl_name_version>
 device::supported_extensions() const {
    std::vector<cl_name_version> vec;
 
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_byte_addressable_store" } );
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_global_int32_base_atomics" } );
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_global_int32_extended_atomics" } );
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_local_int32_base_atomics" } );
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_local_int32_extended_atomics" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_byte_addressable_store" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_global_int32_base_atomics" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_global_int32_extended_atomics" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_local_int32_base_atomics" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_local_int32_extended_atomics" } );
    if (has_int64_atomics()) {
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_int64_base_atomics" } );
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_int64_extended_atomics" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_int64_base_atomics" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_int64_extended_atomics" } );
    }
    if (has_doubles())
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_fp64" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_fp64" } );
    if (has_halves())
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_fp16" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_fp16" } );
    if (svm_support())
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_arm_shared_virtual_memory" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_arm_shared_virtual_memory" } );
    return vec;
 }
 
@@ -397,15 +398,15 @@ device::device_clc_version() const {
 std::vector<cl_name_version>
 device::opencl_c_all_versions() const {
    std::vector<cl_name_version> vec;
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "OpenCL C" } );
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 1, 0), "OpenCL C" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "OpenCL C" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 1, 0), "OpenCL C" } );
 
    if (CL_VERSION_MAJOR(clc_version) == 1 &&
        CL_VERSION_MINOR(clc_version) == 2)
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 2, 0), "OpenCL C" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 2, 0), "OpenCL C" } );
    if (CL_VERSION_MAJOR(clc_version) == 3) {
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 2, 0), "OpenCL C" } );
-      vec.push_back( (cl_name_version){ CL_MAKE_VERSION(3, 0, 0), "OpenCL C" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 2, 0), "OpenCL C" } );
+      vec.push_back( cl_name_version{ CL_MAKE_VERSION(3, 0, 0), "OpenCL C" } );
    }
    return vec;
 }
@@ -414,9 +415,9 @@ std::vector<cl_name_version>
 device::opencl_c_features() const {
    std::vector<cl_name_version> vec;
 
-   vec.push_back( (cl_name_version) {CL_MAKE_VERSION(3, 0, 0), "__opencl_c_int64" });
+   vec.push_back( cl_name_version {CL_MAKE_VERSION(3, 0, 0), "__opencl_c_int64" });
    if (has_doubles())
-      vec.push_back( (cl_name_version) {CL_MAKE_VERSION(3, 0, 0), "__opencl_c_fp64" });
+      vec.push_back( cl_name_version {CL_MAKE_VERSION(3, 0, 0), "__opencl_c_fp64" });
 
    return vec;
 }
diff --git a/src/gallium/frontends/clover/core/platform.cpp b/src/gallium/frontends/clover/core/platform.cpp
index 342d098730c..c37a5341628 100644
--- a/src/gallium/frontends/clover/core/platform.cpp
+++ b/src/gallium/frontends/clover/core/platform.cpp
@@ -49,7 +49,7 @@ std::vector<cl_name_version>
 platform::supported_extensions() const {
    std::vector<cl_name_version> vec;
 
-   vec.push_back( (cl_name_version){ CL_MAKE_VERSION(1, 0, 0), "cl_khr_icd" } );
+   vec.push_back( cl_name_version{ CL_MAKE_VERSION(1, 0, 0), "cl_khr_icd" } );
    return vec;
 }
 



More information about the mesa-commit mailing list