Skip to content

Commit

Permalink
[Fixed Point Arithmetic] Fix for clang-tools-extra warning
Browse files Browse the repository at this point in the history
Fix for warnings generated on unhandled enum value `STK_FixedPoint`.

Differential Revision: https://reviews.llvm.org/D53299

llvm-svn: 344549
  • Loading branch information
PiJoules committed Oct 15, 2018
1 parent 88ccbd7 commit 0f11b73
Showing 1 changed file with 39 additions and 38 deletions.
Expand Up @@ -60,46 +60,47 @@ static StringRef getValueOfValueInit(const QualType InitType) {
case Type::STK_IntegralComplex:
return getValueOfValueInit(
InitType->getAs<ComplexType>()->getElementType());

case Type::STK_FixedPoint:
switch (InitType->getAs<BuiltinType>()->getKind()) {
case BuiltinType::ShortAccum:
case BuiltinType::SatShortAccum:
return "0.0hk";
case BuiltinType::Accum:
case BuiltinType::SatAccum:
return "0.0k";
case BuiltinType::LongAccum:
case BuiltinType::SatLongAccum:
return "0.0lk";
case BuiltinType::UShortAccum:
case BuiltinType::SatUShortAccum:
return "0.0uhk";
case BuiltinType::UAccum:
case BuiltinType::SatUAccum:
return "0.0uk";
case BuiltinType::ULongAccum:
case BuiltinType::SatULongAccum:
return "0.0ulk";
case BuiltinType::ShortFract:
case BuiltinType::SatShortFract:
return "0.0hr";
case BuiltinType::Fract:
case BuiltinType::SatFract:
return "0.0r";
case BuiltinType::LongFract:
case BuiltinType::SatLongFract:
return "0.0lr";
case BuiltinType::UShortFract:
case BuiltinType::SatUShortFract:
return "0.0uhr";
case BuiltinType::UFract:
case BuiltinType::SatUFract:
return "0.0ur";
case BuiltinType::ULongFract:
case BuiltinType::SatULongFract:
return "0.0ulr";
default:
llvm_unreachable("Unhandled fixed point BuiltinType");
case BuiltinType::ShortAccum:
case BuiltinType::SatShortAccum:
return "0.0hk";
case BuiltinType::Accum:
case BuiltinType::SatAccum:
return "0.0k";
case BuiltinType::LongAccum:
case BuiltinType::SatLongAccum:
return "0.0lk";
case BuiltinType::UShortAccum:
case BuiltinType::SatUShortAccum:
return "0.0uhk";
case BuiltinType::UAccum:
case BuiltinType::SatUAccum:
return "0.0uk";
case BuiltinType::ULongAccum:
case BuiltinType::SatULongAccum:
return "0.0ulk";
case BuiltinType::ShortFract:
case BuiltinType::SatShortFract:
return "0.0hr";
case BuiltinType::Fract:
case BuiltinType::SatFract:
return "0.0r";
case BuiltinType::LongFract:
case BuiltinType::SatLongFract:
return "0.0lr";
case BuiltinType::UShortFract:
case BuiltinType::SatUShortFract:
return "0.0uhr";
case BuiltinType::UFract:
case BuiltinType::SatUFract:
return "0.0ur";
case BuiltinType::ULongFract:
case BuiltinType::SatULongFract:
return "0.0ulr";
default:
llvm_unreachable("Unhandled fixed point BuiltinType");
}
}
llvm_unreachable("Invalid scalar type kind");
Expand Down

0 comments on commit 0f11b73

Please sign in to comment.