Correct the way to get subtarget
Change-Id: I47805424c0bd69547cff0ab71c369552016052b5
[ROCm/clr commit: 9b5e1fec6c]
This commit is contained in:
@@ -178,48 +178,48 @@ static constexpr AMDDeviceInfo DeviceInfo[] = {
|
||||
// Ordering as per AsicRevision# in palDevice.h & AMDGPU Target Names
|
||||
|
||||
static constexpr AMDDeviceInfo Gfx9PlusSubDeviceInfo[] = {
|
||||
/* Vega10 */ {"gfx900", "gfx900", 16, 256, 32, 900, 900, false},
|
||||
/* Vega10 XNACK */ {"gfx901", "gfx900", 16, 256, 32, 900, 901, true},
|
||||
/* Vega12 */ {"gfx904", "gfx904", 16, 256, 32, 904, 904, false},
|
||||
/* Vega12 XNACK */ {"gfx905", "gfx904", 16, 256, 32, 904, 905, true},
|
||||
/* Vega20 */ {"gfx906", "gfx906", 16, 256, 32, 906, 906, false},
|
||||
/* Vega20 XNACK */ {"gfx907", "gfx906", 16, 256, 32, 906, 907, true},
|
||||
/* Raven */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Raven XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* Raven2 */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Raven2 XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* Renoir */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Renoir XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* Navi10_A0 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false},
|
||||
/* Navi10_A0 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true},
|
||||
/* Navi10 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false},
|
||||
/* Navi10 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true},
|
||||
/* Navi10Lite */ UnknownDevice,
|
||||
/* Navi10LiteXNACK */ UnknownDevice,
|
||||
/* Navi12 */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, false},
|
||||
/* Navi12 XNACK */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, true},
|
||||
/* Navi12Lite */ UnknownDevice,
|
||||
/* Navi12LiteXNACK */ UnknownDevice,
|
||||
/* Navi14 */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, false},
|
||||
/* Navi14 XNACK */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, true},
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x18 Vega10 */ {"gfx900", "gfx900", 16, 256, 32, 900, 900, false},
|
||||
/* Vega10 XNACK */ {"gfx901", "gfx900", 16, 256, 32, 900, 901, true},
|
||||
/* 0x19 Vega12 */ {"gfx904", "gfx904", 16, 256, 32, 904, 904, false},
|
||||
/* Vega12 XNACK */ {"gfx905", "gfx904", 16, 256, 32, 904, 905, true},
|
||||
/* 0x1a Vega20 */ {"gfx906", "gfx906", 16, 256, 32, 906, 906, false},
|
||||
/* Vega20 XNACK */ {"gfx907", "gfx906", 16, 256, 32, 906, 907, true},
|
||||
/* 0x1b Raven */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Raven XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* 0x1c Raven2 */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Raven2 XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* 0x1d Renoir */ {"gfx902", "gfx902", 16, 256, 32, 902, 902, false},
|
||||
/* Renoir XNACK */ {"gfx903", "gfx902", 16, 256, 32, 902, 903, true},
|
||||
/* 0x1e Navi10_A0 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false},
|
||||
/* Navi10_A0 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true},
|
||||
/* 0x1f Navi10 */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, false},
|
||||
/* Navi10 XNACK */ {"gfx1010", "gfx1010", 32, 256, 32, 1010, 1010, true},
|
||||
/* 0x20 Navi10Lite */ UnknownDevice,
|
||||
/* Navi10LiteXNACK */ UnknownDevice,
|
||||
/* 0x21 Navi12 */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, false},
|
||||
/* Navi12 XNACK */ {"gfx1011", "gfx1011", 32, 256, 32, 1011, 1011, true},
|
||||
/* 0x22 Navi12Lite */ UnknownDevice,
|
||||
/* Navi12LiteXNACK */ UnknownDevice,
|
||||
/* 0x23 Navi14 */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, false},
|
||||
/* Navi14 XNACK */ {"gfx1012", "gfx1012", 32, 256, 32, 1012, 1012, true},
|
||||
/* 0x24 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x25 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x26 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x27 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x28 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x29 UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x2a UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x2b UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
/* 0x2c UnknownDevice */ UnknownDevice,
|
||||
/* UnknownDevice XNACK */ UnknownDevice,
|
||||
};
|
||||
|
||||
// Supported OpenCL versions
|
||||
|
||||
@@ -908,7 +908,7 @@ bool Device::create(Pal::IDevice* device) {
|
||||
hwInfo_ = &DeviceInfo[static_cast<uint>(properties().revision)];
|
||||
} else if (ipLevel_ >= Pal::GfxIpLevel::GfxIp9) {
|
||||
// For compiler sub targets
|
||||
subtarget = (static_cast<uint>(asicRevision_) % static_cast<uint>(Pal::AsicRevision::Vega10))
|
||||
subtarget = (static_cast<uint>(asicRevision_) - static_cast<uint>(Pal::AsicRevision::Vega10))
|
||||
<< 1 |
|
||||
subtarget;
|
||||
hwInfo_ = &Gfx9PlusSubDeviceInfo[subtarget];
|
||||
|
||||
Reference in New Issue
Block a user