P4 to Git Change 1613181 by wchau@wchau_OCL_cmake on 2018/10/01 14:34:03
SWDEV-165756 - [ROCm] Backport cmake back into perforce to resolve cmake build broken issue - porting CMAKE changes in http://git.amd.com:8080/#/c/173995/ - add new source file names in runtime/CMakeLists.txt -- required additional changes of CMAKE files from Konstantin to build the current OCL driver using CMAKE Affected files ... ... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/CMakeLists.txt#15 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#32 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#32 edit ... //depot/stg/opencl/drivers/opencl/runtime/CMakeLists.txt#11 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/CMakeLists.txt#13 edit
This commit is contained in:
@@ -460,6 +460,45 @@ const char *getDeviceName(const aclTargetInfo &target)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const TargetMapping& getTargetMapping(const aclTargetInfo &target)
|
||||||
|
{
|
||||||
|
switch (target.arch_id) {
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
case aclX64:
|
||||||
|
return X64TargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
case aclX86:
|
||||||
|
return X86TargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
case aclHSAIL:
|
||||||
|
return HSAILTargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
case aclHSAIL64:
|
||||||
|
return HSAIL64TargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
case aclAMDIL:
|
||||||
|
return AMDILTargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
case aclAMDIL64:
|
||||||
|
return AMDIL64TargetMapping[target.chip_id];
|
||||||
|
break;
|
||||||
|
};
|
||||||
|
return UnknownTarget;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool isChipSupported(const aclTargetInfo& target)
|
||||||
|
{
|
||||||
|
if (!isValidTarget(target)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
const TargetMapping& Mapping = getTargetMapping(target);
|
||||||
|
if (Mapping.family_enum == FAMILY_UNKNOWN) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return Mapping.supported;
|
||||||
|
}
|
||||||
|
|
||||||
/*! Function that returns the library type from the TargetMapping table for
|
/*! Function that returns the library type from the TargetMapping table for
|
||||||
*the specific target device id.
|
*the specific target device id.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -264,7 +264,6 @@ aclutUpdateMetadataWithHiddenKernargsNum(aclCompiler* cl, aclBinary* bin, uint32
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Returns the TargetMapping for the specific target device.
|
|
||||||
inline const TargetMapping& getTargetMapping(const aclTargetInfo &target)
|
inline const TargetMapping& getTargetMapping(const aclTargetInfo &target)
|
||||||
{
|
{
|
||||||
switch (target.arch_id) {
|
switch (target.arch_id) {
|
||||||
@@ -292,6 +291,9 @@ inline const TargetMapping& getTargetMapping(const aclTargetInfo &target)
|
|||||||
return UnknownTarget;
|
return UnknownTarget;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Returns the TargetMapping for the specific target device.
|
||||||
|
const TargetMapping& getTargetMapping(const aclTargetInfo &target);
|
||||||
|
|
||||||
inline bool is64BitTarget(const aclTargetInfo& target)
|
inline bool is64BitTarget(const aclTargetInfo& target)
|
||||||
{
|
{
|
||||||
return (target.arch_id == aclX64 ||
|
return (target.arch_id == aclX64 ||
|
||||||
@@ -327,17 +329,7 @@ inline bool isValidTarget(const aclTargetInfo& target)
|
|||||||
return (target.arch_id && target.chip_id);
|
return (target.arch_id && target.chip_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool isChipSupported(const aclTargetInfo& target)
|
bool isChipSupported(const aclTargetInfo& target);
|
||||||
{
|
|
||||||
if (!isValidTarget(target)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
const TargetMapping& Mapping = getTargetMapping(target);
|
|
||||||
if (Mapping.family_enum == FAMILY_UNKNOWN) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return Mapping.supported;
|
|
||||||
}
|
|
||||||
|
|
||||||
enum scId {
|
enum scId {
|
||||||
SC_AMDIL = 0,
|
SC_AMDIL = 0,
|
||||||
|
|||||||
@@ -39,6 +39,9 @@ add_library(oclruntime OBJECT
|
|||||||
device/hwdebug.cpp
|
device/hwdebug.cpp
|
||||||
device/blitcl.cpp
|
device/blitcl.cpp
|
||||||
device/blit.cpp
|
device/blit.cpp
|
||||||
|
device/devkernel.cpp
|
||||||
|
device/devwavelimiter.cpp
|
||||||
|
device/devprogram.cpp
|
||||||
platform/kernel.cpp
|
platform/kernel.cpp
|
||||||
platform/context.cpp
|
platform/context.cpp
|
||||||
platform/command.cpp
|
platform/command.cpp
|
||||||
|
|||||||
@@ -13,13 +13,13 @@ add_library(oclrocm OBJECT
|
|||||||
rocprogram.cpp
|
rocprogram.cpp
|
||||||
rocmemory.cpp
|
rocmemory.cpp
|
||||||
rocdevice.cpp
|
rocdevice.cpp
|
||||||
roccompiler.cpp
|
|
||||||
rocblit.cpp
|
rocblit.cpp
|
||||||
rockernel.cpp
|
rockernel.cpp
|
||||||
rocvirtual.cpp
|
rocvirtual.cpp
|
||||||
rocglinterop.cpp
|
rocglinterop.cpp
|
||||||
rocappprofile.cpp
|
rocappprofile.cpp
|
||||||
rocsettings.cpp
|
rocsettings.cpp
|
||||||
|
rocschedcl.cpp
|
||||||
)
|
)
|
||||||
set_target_properties(oclrocm PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
set_target_properties(oclrocm PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user