Remove .value_type from code object v3 metadata

This seems to not actually have any function. The OpenCL API test
passes without it, and the way it's produced is problematic.

Change-Id: I384bfa01dee7023484348b184ddd1b2d44a91f7d
This commit is contained in:
Matt Arsenault
2020-06-29 17:38:18 -04:00
szülő 3a564bc6cb
commit cfed3f310d
2 fájl változott, egészen pontosan 9 új sor hozzáadva és 80 régi sor törölve
-38
Fájl megtekintése
@@ -61,26 +61,6 @@ amd_comgr_status_t getMetaBuf(const amd_comgr_metadata_node_t meta,
return status;
}
// ================================================================================================
inline static clk_value_type_t UpdateArgType(uint sizeType, uint numElements) {
switch (numElements) {
case 1:
return ClkValueMapType[sizeType][0];
case 2:
return ClkValueMapType[sizeType][1];
case 3:
return ClkValueMapType[sizeType][2];
case 4:
return ClkValueMapType[sizeType][3];
case 8:
return ClkValueMapType[sizeType][4];
case 16:
return ClkValueMapType[sizeType][5];
default:
return T_VOID;
}
}
// ================================================================================================
static amd_comgr_status_t populateArgs(const amd_comgr_metadata_node_t key,
const amd_comgr_metadata_node_t value,
@@ -151,15 +131,6 @@ static amd_comgr_status_t populateArgs(const amd_comgr_metadata_node_t key,
}
}
break;
case ArgField::ValueType:
{
auto itValueType = ArgValueType.find(buf);
if (itValueType == ArgValueType.end()) {
return AMD_COMGR_STATUS_ERROR;
}
lcArg->type_ = UpdateArgType(itValueType->second.first, itValueType->second.second);
}
break;
case ArgField::PointeeAlign:
lcArg->info_.arrayIndex_ = atoi(buf.c_str());
break;
@@ -437,15 +408,6 @@ static amd_comgr_status_t populateArgsV3(const amd_comgr_metadata_node_t key,
}
}
break;
case ArgField::ValueType:
{
auto itValueType = ArgValueTypeV3.find(buf);
if (itValueType == ArgValueTypeV3.end()) {
return AMD_COMGR_STATUS_ERROR;
}
lcArg->type_ = UpdateArgType(itValueType->second.first, itValueType->second.second);
}
break;
case ArgField::PointeeAlign:
lcArg->info_.arrayIndex_ = atoi(buf.c_str());
break;
+9 -42
Fájl megtekintése
@@ -97,16 +97,15 @@ enum class ArgField : uint8_t {
Size = 2,
Align = 3,
ValueKind = 4,
ValueType = 5,
PointeeAlign = 6,
AddrSpaceQual = 7,
AccQual = 8,
ActualAccQual = 9,
IsConst = 10,
IsRestrict = 11,
IsVolatile = 12,
IsPipe = 13,
Offset = 14
PointeeAlign = 5,
AddrSpaceQual = 6,
AccQual = 7,
ActualAccQual = 8,
IsConst = 9,
IsRestrict = 10,
IsVolatile = 11,
IsPipe = 12,
Offset = 13
};
enum class AttrField : uint8_t {
@@ -139,7 +138,6 @@ static const std::map<std::string, ArgField> ArgFieldMap =
{"Size", ArgField::Size},
{"Align", ArgField::Align},
{"ValueKind", ArgField::ValueKind},
{"ValueType", ArgField::ValueType},
{"PointeeAlign", ArgField::PointeeAlign},
{"AddrSpaceQual", ArgField::AddrSpaceQual},
{"AccQual", ArgField::AccQual},
@@ -169,21 +167,6 @@ static const std::map<std::string, uint32_t> ArgValueKind = {
{"HiddenHostcallBuffer", amd::KernelParameterDescriptor::HiddenHostcallBuffer}
};
static const std::map<std::string, std::pair<uint32_t, uint32_t>> ArgValueType = {
{"Struct", {0, 0}},
{"I8", {0, 1}},
{"U8", {0, 1}},
{"I16", {1, 2}},
{"U16", {1, 2}},
{"F16", {4, 2}},
{"I32", {2, 4}},
{"U32", {2, 4}},
{"F32", {4, 4}},
{"I64", {3, 8}},
{"U64", {3, 8}},
{"F64", {5, 8}}
};
static const std::map<std::string, cl_kernel_arg_access_qualifier> ArgAccQual = {
{"Default", CL_KERNEL_ARG_ACCESS_NONE},
{"ReadOnly", CL_KERNEL_ARG_ACCESS_READ_ONLY},
@@ -250,7 +233,6 @@ static const std::map<std::string,ArgField> ArgFieldMapV3 =
{".size", ArgField::Size},
{".offset", ArgField::Offset},
{".value_kind", ArgField::ValueKind},
{".value_type", ArgField::ValueType},
{".pointee_align", ArgField::PointeeAlign},
{".address_space", ArgField::AddrSpaceQual},
{".access", ArgField::AccQual},
@@ -280,21 +262,6 @@ static const std::map<std::string, uint32_t> ArgValueKindV3 = {
{"hidden_hostcall_buffer", amd::KernelParameterDescriptor::HiddenHostcallBuffer}
};
static const std::map<std::string, std::pair<uint32_t, uint32_t>> ArgValueTypeV3 = {
{"struct", {0, 0}},
{"i8", {0, 1}},
{"u8", {0, 1}},
{"i16", {1, 2}},
{"u16", {1, 2}},
{"f16", {4, 2}},
{"i32", {2, 4}},
{"u32", {2, 4}},
{"f32", {4, 4}},
{"i64", {3, 8}},
{"u64", {3, 8}},
{"f64", {5, 8}}
};
static const std::map<std::string, cl_kernel_arg_access_qualifier> ArgAccQualV3 = {
{"default", CL_KERNEL_ARG_ACCESS_NONE},
{"read_only", CL_KERNEL_ARG_ACCESS_READ_ONLY},