diff --git a/rocrtst/suites/test_common/CMakeLists.txt b/rocrtst/suites/test_common/CMakeLists.txt index 175e7529bd..e31094b404 100755 --- a/rocrtst/suites/test_common/CMakeLists.txt +++ b/rocrtst/suites/test_common/CMakeLists.txt @@ -41,7 +41,7 @@ set(PROJECT_NAME "rocrtst64") project (${PROJECT_NAME}) -set(DEFAULT_TARGETS "gfx803;gfx701;gfx801;gfx802;gfx900;gfx902;gfx906;gfx908;gfx1010;gfx1011;gfx1012;gfx1030") +set(DEFAULT_TARGETS "gfx803;gfx701;gfx801;gfx802;gfx900;gfx902;gfx906;gfx908;gfx1010;gfx1011;gfx1012;gfx1030;gfx1031") # # Currently support for Windows platform is not present diff --git a/runtime/hsa-runtime/core/runtime/hsa.cpp b/runtime/hsa-runtime/core/runtime/hsa.cpp index 0db04f4d0d..c7cccd797b 100644 --- a/runtime/hsa-runtime/core/runtime/hsa.cpp +++ b/runtime/hsa-runtime/core/runtime/hsa.cpp @@ -1890,6 +1890,8 @@ static std::string ConvertOldTargetNameToNew( NewName = "amdgcn-amd-amdhsa--gfx1012"; else if (OldName == "AMD:AMDGPU:10:3:0") NewName = "amdgcn-amd-amdhsa--gfx1030"; + else if (OldName == "AMD:AMDGPU:10:3:1") + NewName = "amdgcn-amd-amdhsa--gfx1031"; else assert(false && "Unhandled target"); diff --git a/runtime/hsa-runtime/core/runtime/isa.cpp b/runtime/hsa-runtime/core/runtime/isa.cpp index 9e661f9e78..ca23abb01b 100755 --- a/runtime/hsa-runtime/core/runtime/isa.cpp +++ b/runtime/hsa-runtime/core/runtime/isa.cpp @@ -238,7 +238,8 @@ const IsaRegistry::IsaMap IsaRegistry::GetSupportedIsas() { ISAREG_ENTRY_GEN(10, 1, 2, true, false) ISAREG_ENTRY_GEN(10, 3, 0, false, false) ISAREG_ENTRY_GEN(10, 3, 0, true, false) - + ISAREG_ENTRY_GEN(10, 3, 1, false, false) + ISAREG_ENTRY_GEN(10, 3, 1, true, false) return supported_isas; } diff --git a/runtime/hsa-runtime/image/blit_kernel.cpp b/runtime/hsa-runtime/image/blit_kernel.cpp index 475235336b..7b08a32ff5 100644 --- a/runtime/hsa-runtime/image/blit_kernel.cpp +++ b/runtime/hsa-runtime/image/blit_kernel.cpp @@ -84,6 +84,7 @@ extern uint8_t ocl_blit_object_gfx1010[]; extern uint8_t ocl_blit_object_gfx1011[]; extern uint8_t ocl_blit_object_gfx1012[]; extern uint8_t ocl_blit_object_gfx1030[]; +extern uint8_t ocl_blit_object_gfx1031[]; // Arguments inserted by OCL compiler, all zero here. struct OCLHiddenArgs { @@ -1009,6 +1010,9 @@ hsa_status_t BlitKernel::GetPatchedBlitObject(const char* agent_name, case 1030: *blit_code_object = ocl_blit_object_gfx1030; break; + case 1031: + *blit_code_object = ocl_blit_object_gfx1031; + break; default: return HSA_STATUS_ERROR_INVALID_ISA_NAME; } diff --git a/runtime/hsa-runtime/image/blit_src/CMakeLists.txt b/runtime/hsa-runtime/image/blit_src/CMakeLists.txt index f8bf0fa842..623a7f1c4c 100644 --- a/runtime/hsa-runtime/image/blit_src/CMakeLists.txt +++ b/runtime/hsa-runtime/image/blit_src/CMakeLists.txt @@ -75,7 +75,7 @@ set( XNACK_DEVS ${XNACK_DEVS} CACHE STRING "XNACK targets" FORCE ) # Determine the target devices if not specified if (NOT DEFINED TARGET_DEVICES) - set (TARGET_DEVICES "gfx700;gfx701;gfx702;gfx801;gfx802;gfx803;gfx900;gfx902;gfx904;gfx906;gfx908;gfx1010;gfx1011;gfx1012;gfx1030") + set (TARGET_DEVICES "gfx700;gfx701;gfx702;gfx801;gfx802;gfx803;gfx900;gfx902;gfx904;gfx906;gfx908;gfx1010;gfx1011;gfx1012;gfx1030;gfx1031") endif() set( TARGET_DEVICES ${TARGET_DEVICES} CACHE STRING "Build targets" FORCE ) diff --git a/runtime/hsa-runtime/inc/amd_hsa_elf.h b/runtime/hsa-runtime/inc/amd_hsa_elf.h index 168d9a7a6f..377f771e32 100644 --- a/runtime/hsa-runtime/inc/amd_hsa_elf.h +++ b/runtime/hsa-runtime/inc/amd_hsa_elf.h @@ -72,6 +72,7 @@ #define EF_AMDGPU_MACH_AMDGCN_GFX1011_LC 0x034 #define EF_AMDGPU_MACH_AMDGCN_GFX1012_LC 0x035 #define EF_AMDGPU_MACH_AMDGCN_GFX1030_LC 0x036 +#define EF_AMDGPU_MACH_AMDGCN_GFX1031_LC 0x037 #define EF_AMDGPU_XNACK_LC 0x100 #define EF_AMDGPU_SRAM_ECC_LC 0x200 diff --git a/runtime/hsa-runtime/libamdhsacode/amd_hsa_code.cpp b/runtime/hsa-runtime/libamdhsacode/amd_hsa_code.cpp index bb7a2b940c..3a911ee59a 100644 --- a/runtime/hsa-runtime/libamdhsacode/amd_hsa_code.cpp +++ b/runtime/hsa-runtime/libamdhsacode/amd_hsa_code.cpp @@ -588,6 +588,8 @@ namespace code { NewName = "amdgcn-amd-amdhsa--gfx1012"; else if (OldName == "AMD:AMDGPU:10:3:0") NewName = "amdgcn-amd-amdhsa--gfx1030"; + else if (OldName == "AMD:AMDGPU:10:3:1") + NewName = "amdgcn-amd-amdhsa--gfx1031"; else assert(false && "Unhandled target"); @@ -644,6 +646,7 @@ namespace code { case EF_AMDGPU_MACH_AMDGCN_GFX1011_LC: isaName += "gfx1011"; break; case EF_AMDGPU_MACH_AMDGCN_GFX1012_LC: isaName += "gfx1012"; break; case EF_AMDGPU_MACH_AMDGCN_GFX1030_LC: isaName += "gfx1030"; break; + case EF_AMDGPU_MACH_AMDGCN_GFX1031_LC: isaName += "gfx1031"; break; default: return false; } diff --git a/runtime/hsa-runtime/loader/loaders.cpp b/runtime/hsa-runtime/loader/loaders.cpp index cd154d32c4..4b3a884d3b 100644 --- a/runtime/hsa-runtime/loader/loaders.cpp +++ b/runtime/hsa-runtime/loader/loaders.cpp @@ -97,6 +97,7 @@ namespace loader { gfx1011.handle = 1011; gfx1012.handle = 1012; gfx1030.handle = 1030; + gfx1031.handle = 1031; } hsa_isa_t OfflineLoaderContext::IsaFromName(const char *name) @@ -136,6 +137,8 @@ namespace loader { return gfx1012; } else if (sname == "AMD:AMDGPU:10:3:0") { return gfx1030; + } else if (sname == "AMD:AMDGPU:10:3:1") { + return gfx1031; } assert(0); diff --git a/runtime/hsa-runtime/loader/loaders.hpp b/runtime/hsa-runtime/loader/loaders.hpp index 3d3ee65dc6..4f9a917d12 100644 --- a/runtime/hsa-runtime/loader/loaders.hpp +++ b/runtime/hsa-runtime/loader/loaders.hpp @@ -57,7 +57,7 @@ namespace loader { hsa_isa_t invalid; hsa_isa_t gfx700, gfx701, gfx800, gfx801, gfx802, gfx803, gfx804, gfx810; hsa_isa_t gfx900, gfx901, gfx902, gfx903, gfx908; - hsa_isa_t gfx1010, gfx1011, gfx1012, gfx1030; + hsa_isa_t gfx1010, gfx1011, gfx1012, gfx1030, gfx1031; std::ostream& out; typedef std::set PointerSet; PointerSet pointers;