From 42cf9abb5eb0ddb1f9bb616e695d6640564a8f84 Mon Sep 17 00:00:00 2001
From: foreman
Date: Wed, 18 Oct 2017 13:13:31 -0400
Subject: [PATCH] P4 to Git Change 1472044 by lmoriche@lmoriche_opencl_dev2 on
2017/10/18 12:47:26
SWDEV-126884 - OCL 2.1 Platform APIs
- Report the OpenCL 2.1 platform on staging
Affected files ...
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/amdocl.map.in#20 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/build/Makefile.api#163 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/headers/build/Makefile.headers#6 edit
... //depot/stg/opencl/drivers/opencl/make/amdgcn.git/irif/build/Makefile.irif#8 edit
... //depot/stg/opencl/drivers/opencl/make/amdgcn.git/ockl/build/Makefile.ockl#9 edit
... //depot/stg/opencl/drivers/opencl/make/amdgcn.git/oclc/build/Makefile.oclc#11 edit
... //depot/stg/opencl/drivers/opencl/make/amdgcn.git/ocml/build/Makefile.ocml#9 edit
... //depot/stg/opencl/drivers/opencl/make/amdgcn.git/opencl/build/Makefile.opencl#13 edit
... //depot/stg/opencl/drivers/opencl/opencldefs#217 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudefs.hpp#149 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpusettings.cpp#357 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/paldefs.hpp#24 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palsettings.cpp#35 edit
---
rocclr/runtime/device/gpu/gpudefs.hpp | 2 +-
rocclr/runtime/device/gpu/gpusettings.cpp | 3 +++
rocclr/runtime/device/pal/paldefs.hpp | 2 +-
rocclr/runtime/device/pal/palsettings.cpp | 3 +++
4 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/rocclr/runtime/device/gpu/gpudefs.hpp b/rocclr/runtime/device/gpu/gpudefs.hpp
index 3393f16bcf..83dff3629a 100644
--- a/rocclr/runtime/device/gpu/gpudefs.hpp
+++ b/rocclr/runtime/device/gpu/gpudefs.hpp
@@ -204,7 +204,7 @@ static const char* Gfx1000 = "AMD:AMDGPU:10:0:0";
static const char* Gfx1001 = "AMD:AMDGPU:10:0:1";
// Supported OpenCL versions
-enum OclVersion { OpenCL10, OpenCL11, OpenCL12, OpenCL20 };
+enum OclVersion { OpenCL10, OpenCL11, OpenCL12, OpenCL20, OpenCL21 };
struct CalFormat {
gslChannelOrder channelOrder_; //!< Texel/pixel GSL channel order
diff --git a/rocclr/runtime/device/gpu/gpusettings.cpp b/rocclr/runtime/device/gpu/gpusettings.cpp
index 2887ddb002..aaa86662e0 100644
--- a/rocclr/runtime/device/gpu/gpusettings.cpp
+++ b/rocclr/runtime/device/gpu/gpusettings.cpp
@@ -265,6 +265,9 @@ bool Settings::create(const CALdeviceattribs& calAttr, bool reportAsOCL12Device,
libSelector_ = amd::GPU_Library_SI;
}
+ // Cap at OpenCL20 for now
+ if (oclVersion_ > OpenCL20) oclVersion_ = OpenCL20;
+
// This needs to be cleaned once 64bit addressing is stable
if (oclVersion_ < OpenCL20) {
use64BitPtr_ = flagIsDefault(GPU_FORCE_64BIT_PTR)
diff --git a/rocclr/runtime/device/pal/paldefs.hpp b/rocclr/runtime/device/pal/paldefs.hpp
index 4edcb9c2e9..c3b5467d62 100644
--- a/rocclr/runtime/device/pal/paldefs.hpp
+++ b/rocclr/runtime/device/pal/paldefs.hpp
@@ -202,7 +202,7 @@ static const char* Gfx1000 = "AMD:AMDGPU:10:0:0";
static const char* Gfx1001 = "AMD:AMDGPU:10:0:1";
// Supported OpenCL versions
-enum OclVersion { OpenCL10, OpenCL11, OpenCL12, OpenCL20 };
+enum OclVersion { OpenCL10, OpenCL11, OpenCL12, OpenCL20, OpenCL21 };
struct MemoryFormat {
cl_image_format clFormat_; //!< CL image format
diff --git a/rocclr/runtime/device/pal/palsettings.cpp b/rocclr/runtime/device/pal/palsettings.cpp
index bfbf019c16..c340a3d4a7 100644
--- a/rocclr/runtime/device/pal/palsettings.cpp
+++ b/rocclr/runtime/device/pal/palsettings.cpp
@@ -248,6 +248,9 @@ bool Settings::create(const Pal::DeviceProperties& palProp,
}
numComputeRings_ = 8;
+ // Cap at OpenCL20 for now
+ if (oclVersion_ > OpenCL20) oclVersion_ = OpenCL20;
+
// This needs to be cleaned once 64bit addressing is stable
if (oclVersion_ < OpenCL20) {
use64BitPtr_ = flagIsDefault(GPU_FORCE_64BIT_PTR)