Nit: Use holds_alternative<T> instead of get_if<T> on variants when the result is only used as a bool.
PiperOrigin-RevId: 313301420 Change-Id: Ib1b69e94c777759f8029253f758d378987db83a0
This commit is contained in:
parent
9a2ac3f89c
commit
52155ca469
@ -80,19 +80,19 @@ bool IsValid(const TensorObjectDef& def, const TensorObject& object) {
|
|||||||
bool IsObjectPresent(ObjectType type, const TensorObject& obj) {
|
bool IsObjectPresent(ObjectType type, const TensorObject& obj) {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case ObjectType::CPU_MEMORY:
|
case ObjectType::CPU_MEMORY:
|
||||||
return absl::get_if<CpuMemory>(&obj);
|
return absl::holds_alternative<CpuMemory>(obj);
|
||||||
case ObjectType::OPENGL_SSBO:
|
case ObjectType::OPENGL_SSBO:
|
||||||
return absl::get_if<OpenGlBuffer>(&obj);
|
return absl::holds_alternative<OpenGlBuffer>(obj);
|
||||||
case ObjectType::OPENGL_TEXTURE:
|
case ObjectType::OPENGL_TEXTURE:
|
||||||
return absl::get_if<OpenGlTexture>(&obj);
|
return absl::holds_alternative<OpenGlTexture>(obj);
|
||||||
case ObjectType::OPENCL_BUFFER:
|
case ObjectType::OPENCL_BUFFER:
|
||||||
return absl::get_if<OpenClBuffer>(&obj);
|
return absl::holds_alternative<OpenClBuffer>(obj);
|
||||||
case ObjectType::OPENCL_TEXTURE:
|
case ObjectType::OPENCL_TEXTURE:
|
||||||
return absl::get_if<OpenClTexture>(&obj);
|
return absl::holds_alternative<OpenClTexture>(obj);
|
||||||
case ObjectType::VULKAN_BUFFER:
|
case ObjectType::VULKAN_BUFFER:
|
||||||
return absl::get_if<VulkanBuffer>(&obj);
|
return absl::holds_alternative<VulkanBuffer>(obj);
|
||||||
case ObjectType::VULKAN_TEXTURE:
|
case ObjectType::VULKAN_TEXTURE:
|
||||||
return absl::get_if<VulkanTexture>(&obj);
|
return absl::holds_alternative<VulkanTexture>(obj);
|
||||||
case ObjectType::UNKNOWN:
|
case ObjectType::UNKNOWN:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -273,7 +273,7 @@ GlClBufferCopier::GlClBufferCopier(const TensorObjectDef& input_def,
|
|||||||
|
|
||||||
absl::Status GlClBufferCopier::Convert(const TensorObject& input_obj,
|
absl::Status GlClBufferCopier::Convert(const TensorObject& input_obj,
|
||||||
const TensorObject& output_obj) {
|
const TensorObject& output_obj) {
|
||||||
if (absl::get_if<OpenGlBuffer>(&input_obj)) {
|
if (absl::holds_alternative<OpenGlBuffer>(input_obj)) {
|
||||||
auto ssbo = absl::get_if<OpenGlBuffer>(&input_obj);
|
auto ssbo = absl::get_if<OpenGlBuffer>(&input_obj);
|
||||||
auto cl_mem = absl::get_if<OpenClBuffer>(&output_obj);
|
auto cl_mem = absl::get_if<OpenClBuffer>(&output_obj);
|
||||||
RETURN_IF_ERROR(
|
RETURN_IF_ERROR(
|
||||||
|
@ -48,8 +48,9 @@ class MergeConvolutionWithAdd : public SequenceTransformation {
|
|||||||
}
|
}
|
||||||
AddAttributes add_attr =
|
AddAttributes add_attr =
|
||||||
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
||||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param) &&
|
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
!absl::get_if<float>(&add_attr.param)) {
|
add_attr.param) &&
|
||||||
|
!absl::holds_alternative<float>(add_attr.param)) {
|
||||||
return {TransformStatus::DECLINED,
|
return {TransformStatus::DECLINED,
|
||||||
"This fuse applicable only for broadcast or scalar addition."};
|
"This fuse applicable only for broadcast or scalar addition."};
|
||||||
}
|
}
|
||||||
@ -104,8 +105,9 @@ class MergeAddWithConvolution : public SequenceTransformation {
|
|||||||
}
|
}
|
||||||
AddAttributes add_attr =
|
AddAttributes add_attr =
|
||||||
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
||||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param) &&
|
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
!absl::get_if<float>(&add_attr.param)) {
|
add_attr.param) &&
|
||||||
|
!absl::holds_alternative<float>(add_attr.param)) {
|
||||||
return {TransformStatus::DECLINED,
|
return {TransformStatus::DECLINED,
|
||||||
"This fuse applicable only for broadcast or scalar addition."};
|
"This fuse applicable only for broadcast or scalar addition."};
|
||||||
}
|
}
|
||||||
|
@ -45,8 +45,9 @@ class MergeConvolutionWithMul : public SequenceTransformation {
|
|||||||
|
|
||||||
MultiplyAttributes mul_attr =
|
MultiplyAttributes mul_attr =
|
||||||
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
||||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&mul_attr.param) &&
|
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
!absl::get_if<float>(&mul_attr.param)) {
|
mul_attr.param) &&
|
||||||
|
!absl::holds_alternative<float>(mul_attr.param)) {
|
||||||
return {
|
return {
|
||||||
TransformStatus::DECLINED,
|
TransformStatus::DECLINED,
|
||||||
"This fuse applicable only for broadcast or scalar multiplication."};
|
"This fuse applicable only for broadcast or scalar multiplication."};
|
||||||
@ -108,9 +109,9 @@ class MergeMulWithConvolution : public SequenceTransformation {
|
|||||||
|
|
||||||
MultiplyAttributes mul_attr =
|
MultiplyAttributes mul_attr =
|
||||||
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
||||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(
|
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
&mul_attr.param) &&
|
mul_attr.param) &&
|
||||||
!absl::get_if<float>(&mul_attr.param)) {
|
!absl::holds_alternative<float>(mul_attr.param)) {
|
||||||
return {
|
return {
|
||||||
TransformStatus::DECLINED,
|
TransformStatus::DECLINED,
|
||||||
"This fuse applicable only for broadcast or scalar multiplication."};
|
"This fuse applicable only for broadcast or scalar multiplication."};
|
||||||
|
@ -146,10 +146,11 @@ class MergePaddingWithAddOperation : public NodeTransformation {
|
|||||||
|
|
||||||
AddAttributes add_attr =
|
AddAttributes add_attr =
|
||||||
absl::any_cast<AddAttributes>(add_node->operation.attributes);
|
absl::any_cast<AddAttributes>(add_node->operation.attributes);
|
||||||
const auto add_broadcast =
|
const bool is_add_broadcast =
|
||||||
absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param);
|
absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
const float* add_scalar = absl::get_if<float>(&add_attr.param);
|
add_attr.param);
|
||||||
if (add_broadcast || add_scalar) {
|
const bool is_add_scalar = absl::holds_alternative<float>(add_attr.param);
|
||||||
|
if (is_add_broadcast || is_add_scalar) {
|
||||||
return {TransformStatus::SKIPPED,
|
return {TransformStatus::SKIPPED,
|
||||||
"Cannot remove padding when this broadcast/scalar ADD"};
|
"Cannot remove padding when this broadcast/scalar ADD"};
|
||||||
}
|
}
|
||||||
|
@ -77,9 +77,9 @@ std::unique_ptr<SequenceTransformation> NewRemoveSingleInputAdd() {
|
|||||||
}
|
}
|
||||||
auto& attr =
|
auto& attr =
|
||||||
absl::any_cast<const AddAttributes&>(node->operation.attributes);
|
absl::any_cast<const AddAttributes&>(node->operation.attributes);
|
||||||
return absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&attr.param) ==
|
return !absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||||
nullptr &&
|
attr.param) &&
|
||||||
absl::get_if<float>(&attr.param) == nullptr;
|
!absl::holds_alternative<float>(attr.param);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -70,7 +70,7 @@ struct Object {
|
|||||||
|
|
||||||
// @return true if object is a reference.
|
// @return true if object is a reference.
|
||||||
inline bool IsRef(const Object& object) {
|
inline bool IsRef(const Object& object) {
|
||||||
return !absl::get_if<ObjectData>(&object.object);
|
return !absl::holds_alternative<ObjectData>(object.object);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline ObjectRef GetRef(const Object& object) {
|
inline ObjectRef GetRef(const Object& object) {
|
||||||
|
@ -483,7 +483,7 @@ absl::Status ApplyTexturesAssignment(
|
|||||||
Object* object = global_ref_to_object_ptr[global_ref];
|
Object* object = global_ref_to_object_ptr[global_ref];
|
||||||
if (usage_rec_id == kNotAssigned || object == nullptr ||
|
if (usage_rec_id == kNotAssigned || object == nullptr ||
|
||||||
object->object_type != ObjectType::TEXTURE ||
|
object->object_type != ObjectType::TEXTURE ||
|
||||||
!absl::get_if<ObjectSizeT>(&object->size)) {
|
!absl::holds_alternative<ObjectSizeT>(object->size)) {
|
||||||
// Skip objects with other data type, non-textures and textures with wrong
|
// Skip objects with other data type, non-textures and textures with wrong
|
||||||
// number of dimensions.
|
// number of dimensions.
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
Reference in New Issue
Block a user