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) {
|
||||
switch (type) {
|
||||
case ObjectType::CPU_MEMORY:
|
||||
return absl::get_if<CpuMemory>(&obj);
|
||||
return absl::holds_alternative<CpuMemory>(obj);
|
||||
case ObjectType::OPENGL_SSBO:
|
||||
return absl::get_if<OpenGlBuffer>(&obj);
|
||||
return absl::holds_alternative<OpenGlBuffer>(obj);
|
||||
case ObjectType::OPENGL_TEXTURE:
|
||||
return absl::get_if<OpenGlTexture>(&obj);
|
||||
return absl::holds_alternative<OpenGlTexture>(obj);
|
||||
case ObjectType::OPENCL_BUFFER:
|
||||
return absl::get_if<OpenClBuffer>(&obj);
|
||||
return absl::holds_alternative<OpenClBuffer>(obj);
|
||||
case ObjectType::OPENCL_TEXTURE:
|
||||
return absl::get_if<OpenClTexture>(&obj);
|
||||
return absl::holds_alternative<OpenClTexture>(obj);
|
||||
case ObjectType::VULKAN_BUFFER:
|
||||
return absl::get_if<VulkanBuffer>(&obj);
|
||||
return absl::holds_alternative<VulkanBuffer>(obj);
|
||||
case ObjectType::VULKAN_TEXTURE:
|
||||
return absl::get_if<VulkanTexture>(&obj);
|
||||
return absl::holds_alternative<VulkanTexture>(obj);
|
||||
case ObjectType::UNKNOWN:
|
||||
return false;
|
||||
}
|
||||
|
@ -273,7 +273,7 @@ GlClBufferCopier::GlClBufferCopier(const TensorObjectDef& input_def,
|
||||
|
||||
absl::Status GlClBufferCopier::Convert(const TensorObject& input_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 cl_mem = absl::get_if<OpenClBuffer>(&output_obj);
|
||||
RETURN_IF_ERROR(
|
||||
|
@ -48,8 +48,9 @@ class MergeConvolutionWithAdd : public SequenceTransformation {
|
||||
}
|
||||
AddAttributes add_attr =
|
||||
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param) &&
|
||||
!absl::get_if<float>(&add_attr.param)) {
|
||||
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
add_attr.param) &&
|
||||
!absl::holds_alternative<float>(add_attr.param)) {
|
||||
return {TransformStatus::DECLINED,
|
||||
"This fuse applicable only for broadcast or scalar addition."};
|
||||
}
|
||||
@ -104,8 +105,9 @@ class MergeAddWithConvolution : public SequenceTransformation {
|
||||
}
|
||||
AddAttributes add_attr =
|
||||
absl::any_cast<AddAttributes>(add_node.operation.attributes);
|
||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param) &&
|
||||
!absl::get_if<float>(&add_attr.param)) {
|
||||
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
add_attr.param) &&
|
||||
!absl::holds_alternative<float>(add_attr.param)) {
|
||||
return {TransformStatus::DECLINED,
|
||||
"This fuse applicable only for broadcast or scalar addition."};
|
||||
}
|
||||
|
@ -45,8 +45,9 @@ class MergeConvolutionWithMul : public SequenceTransformation {
|
||||
|
||||
MultiplyAttributes mul_attr =
|
||||
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&mul_attr.param) &&
|
||||
!absl::get_if<float>(&mul_attr.param)) {
|
||||
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
mul_attr.param) &&
|
||||
!absl::holds_alternative<float>(mul_attr.param)) {
|
||||
return {
|
||||
TransformStatus::DECLINED,
|
||||
"This fuse applicable only for broadcast or scalar multiplication."};
|
||||
@ -108,9 +109,9 @@ class MergeMulWithConvolution : public SequenceTransformation {
|
||||
|
||||
MultiplyAttributes mul_attr =
|
||||
absl::any_cast<MultiplyAttributes>(mul_node.operation.attributes);
|
||||
if (!absl::get_if<Tensor<Linear, DataType::FLOAT32>>(
|
||||
&mul_attr.param) &&
|
||||
!absl::get_if<float>(&mul_attr.param)) {
|
||||
if (!absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
mul_attr.param) &&
|
||||
!absl::holds_alternative<float>(mul_attr.param)) {
|
||||
return {
|
||||
TransformStatus::DECLINED,
|
||||
"This fuse applicable only for broadcast or scalar multiplication."};
|
||||
|
@ -146,10 +146,11 @@ class MergePaddingWithAddOperation : public NodeTransformation {
|
||||
|
||||
AddAttributes add_attr =
|
||||
absl::any_cast<AddAttributes>(add_node->operation.attributes);
|
||||
const auto add_broadcast =
|
||||
absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&add_attr.param);
|
||||
const float* add_scalar = absl::get_if<float>(&add_attr.param);
|
||||
if (add_broadcast || add_scalar) {
|
||||
const bool is_add_broadcast =
|
||||
absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
add_attr.param);
|
||||
const bool is_add_scalar = absl::holds_alternative<float>(add_attr.param);
|
||||
if (is_add_broadcast || is_add_scalar) {
|
||||
return {TransformStatus::SKIPPED,
|
||||
"Cannot remove padding when this broadcast/scalar ADD"};
|
||||
}
|
||||
|
@ -77,9 +77,9 @@ std::unique_ptr<SequenceTransformation> NewRemoveSingleInputAdd() {
|
||||
}
|
||||
auto& attr =
|
||||
absl::any_cast<const AddAttributes&>(node->operation.attributes);
|
||||
return absl::get_if<Tensor<Linear, DataType::FLOAT32>>(&attr.param) ==
|
||||
nullptr &&
|
||||
absl::get_if<float>(&attr.param) == nullptr;
|
||||
return !absl::holds_alternative<Tensor<Linear, DataType::FLOAT32>>(
|
||||
attr.param) &&
|
||||
!absl::holds_alternative<float>(attr.param);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -70,7 +70,7 @@ struct Object {
|
||||
|
||||
// @return true if object is a reference.
|
||||
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) {
|
||||
|
@ -483,7 +483,7 @@ absl::Status ApplyTexturesAssignment(
|
||||
Object* object = global_ref_to_object_ptr[global_ref];
|
||||
if (usage_rec_id == kNotAssigned || object == nullptr ||
|
||||
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
|
||||
// number of dimensions.
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user