Specialize qMulOverflow<2>(n) as qAddOverflow(n, n)
Addition is always more efficient than multiplication. Task-number: QTBUG-104972 Change-Id: Ib945e7df88562a2f4aea00aa319ff837191b8df2 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 4b5b87c27b803c5bf0fed96c381c5e343b28d419) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
40e844918a
commit
9bcb73af22
@ -312,6 +312,8 @@ template <typename T, T V2> bool qMulOverflow(T v1, std::integral_constant<T, V2
|
||||
|
||||
template <auto V2, typename T> bool qMulOverflow(T v1, T *r)
|
||||
{
|
||||
if constexpr (V2 == 2)
|
||||
return qAddOverflow(v1, v1, r);
|
||||
return qMulOverflow(v1, std::integral_constant<T, V2>{}, r);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user