diff --git a/rocclr/compiler/lib/utils/v0_8/libUtils.cpp b/rocclr/compiler/lib/utils/v0_8/libUtils.cpp index 4b61143651..5787b47c56 100644 --- a/rocclr/compiler/lib/utils/v0_8/libUtils.cpp +++ b/rocclr/compiler/lib/utils/v0_8/libUtils.cpp @@ -568,6 +568,7 @@ int getIsaType(const aclTargetInfo *target) case VI_BAFFIN_M_A0: case VI_ELLESMERE_P_A0: case VI_LEXA_V_A0: + case VI_POLARIS22_P_A0: #if defined(BUILD_HSA_TARGET) return 803; // Special case - Boltzmann FIJI, BAFFIN, ELLESMERE, LEXA // Otherwise fall through diff --git a/rocclr/runtime/device/gpu/gpudefs.hpp b/rocclr/runtime/device/gpu/gpudefs.hpp index 6bfdc6ef0e..9bdbd0b5b7 100644 --- a/rocclr/runtime/device/gpu/gpudefs.hpp +++ b/rocclr/runtime/device/gpu/gpudefs.hpp @@ -129,6 +129,7 @@ static const AMDDeviceInfo DeviceInfo[] = { /* CAL_TARGET_STONEY */ { ED_ATI_CAL_MACHINE_STONEY_ISA, "Stoney", "stoney", 4, 16, 1, 256, 64 * Ki, 32, 800 }, /* CAL_TARGET_LEXA */ { ED_ATI_CAL_MACHINE_LEXA_ISA, "gfx804", "gfx804", 4, 16, 1, 256, 64 * Ki, 32, 800 }, /* CAL_TARGET_RAVEN */ { ED_ATI_CAL_MACHINE_RAVEN_ISA, "gfx901", "gfx901", 4, 16, 1, 256, 64 * Ki, 32, 900 }, +/* CAL_TARGET_POLARIS22 */ { ED_ATI_CAL_MACHINE_POLARIS22_ISA, "gfx804", "gfx804", 4, 16, 1, 256, 64 * Ki, 32, 800 }, }; enum gfx_handle { diff --git a/rocclr/runtime/device/gpu/gpudevice.cpp b/rocclr/runtime/device/gpu/gpudevice.cpp index e5c0b942a8..440c31db8a 100644 --- a/rocclr/runtime/device/gpu/gpudevice.cpp +++ b/rocclr/runtime/device/gpu/gpudevice.cpp @@ -156,6 +156,7 @@ NullDevice::create(CALtarget target) case CAL_TARGET_STONEY: case CAL_TARGET_LEXA: case CAL_TARGET_RAVEN: + case CAL_TARGET_POLARIS22: calAttr.doublePrecision = CAL_TRUE; calAttr.isOpenCL200Device = CAL_TRUE; break; diff --git a/rocclr/runtime/device/gpu/gpuprogram.cpp b/rocclr/runtime/device/gpu/gpuprogram.cpp index 64241ed22f..9bdaf3f262 100644 --- a/rocclr/runtime/device/gpu/gpuprogram.cpp +++ b/rocclr/runtime/device/gpu/gpuprogram.cpp @@ -2391,6 +2391,7 @@ bool ORCAHSALoaderContext::IsaSupportedByAgent(hsa_agent_t agent, hsa_isa_t isa) case ED_ATI_CAL_MACHINE_ELLESMERE_ISA: case ED_ATI_CAL_MACHINE_BAFFIN_ISA: case ED_ATI_CAL_MACHINE_LEXA_ISA: + case ED_ATI_CAL_MACHINE_POLARIS22_ISA: // gfx800 ISA has only sgrps limited and can be loaded. // gfx801 ISA has XNACK limitations and can be loaded. return isa.handle == gfx800 || isa.handle == gfx801 || isa.handle == gfx804; diff --git a/rocclr/runtime/device/gpu/gpusettings.cpp b/rocclr/runtime/device/gpu/gpusettings.cpp index c90e2f5867..b303f45092 100644 --- a/rocclr/runtime/device/gpu/gpusettings.cpp +++ b/rocclr/runtime/device/gpu/gpusettings.cpp @@ -195,6 +195,7 @@ Settings::create( case CAL_TARGET_ELLESMERE: case CAL_TARGET_BAFFIN: case CAL_TARGET_LEXA: + case CAL_TARGET_POLARIS22: // Disable tiling aperture on VI+ linearPersistentImage_ = true; // Keep this false even though we have support diff --git a/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp b/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp index 787ff98597..01db5f1729 100644 --- a/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp +++ b/rocclr/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp @@ -509,7 +509,11 @@ CALGSLDevice::SetupContext(int32 &asic_id) m_target = CAL_TARGET_RAVEN; m_elfmachine = ED_ATI_CAL_MACHINE_RAVEN_ISA; break; - default: + case GSL_ATIASIC_ID_POLARIS22: + m_target = CAL_TARGET_POLARIS22; + m_elfmachine = ED_ATI_CAL_MACHINE_POLARIS22_ISA; + break; + default: // 6XX is not supported m_adp->deleteContext(temp_cs); gsAdaptor::closeAdaptor(m_adp); diff --git a/rocclr/runtime/device/gpu/gslbe/src/rt/caltarget.h b/rocclr/runtime/device/gpu/gslbe/src/rt/caltarget.h index 0ef16010ee..ca3bb2c7cf 100644 --- a/rocclr/runtime/device/gpu/gslbe/src/rt/caltarget.h +++ b/rocclr/runtime/device/gpu/gslbe/src/rt/caltarget.h @@ -47,7 +47,8 @@ typedef enum CALtargetEnum { CAL_TARGET_STONEY, /**< STONEY GPU ISA*/ CAL_TARGET_LEXA, /**< LEXA GPU ISA*/ CAL_TARGET_RAVEN, /**< RAVEN GPU ISA*/ - CAL_TARGET_LAST = CAL_TARGET_RAVEN, /**< last */ + CAL_TARGET_POLARIS22, /**< POLARIS22 GPU ISA*/ + CAL_TARGET_LAST = CAL_TARGET_POLARIS22, /**< last */ //##END_PRIVATE## } CALtarget;