Commit 957eb07f by Markus Tavenrath Committed by Commit Bot

Remove redundant masking of the bits in angle::BitSet when using ternary operators.

Bug: angleproject:3040 Change-Id: I59e69ddb27ec9c5723aff04858ac5c052e2775da Reviewed-on: https://chromium-review.googlesource.com/c/1392806 Commit-Queue: Markus Tavenrath <matavenrath@nvidia.com> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent cc37cbf2
...@@ -531,21 +531,27 @@ template <size_t N, typename BitsT, typename ParamT> ...@@ -531,21 +531,27 @@ template <size_t N, typename BitsT, typename ParamT>
inline angle::BitSetT<N, BitsT, ParamT> operator&(const angle::BitSetT<N, BitsT, ParamT> &lhs, inline angle::BitSetT<N, BitsT, ParamT> operator&(const angle::BitSetT<N, BitsT, ParamT> &lhs,
const angle::BitSetT<N, BitsT, ParamT> &rhs) const angle::BitSetT<N, BitsT, ParamT> &rhs)
{ {
return angle::BitSetT<N, BitsT, ParamT>(lhs.bits() & rhs.bits()); angle::BitSetT<N, BitsT, ParamT> result(lhs);
result &= rhs.bits();
return result;
} }
template <size_t N, typename BitsT, typename ParamT> template <size_t N, typename BitsT, typename ParamT>
inline angle::BitSetT<N, BitsT, ParamT> operator|(const angle::BitSetT<N, BitsT, ParamT> &lhs, inline angle::BitSetT<N, BitsT, ParamT> operator|(const angle::BitSetT<N, BitsT, ParamT> &lhs,
const angle::BitSetT<N, BitsT, ParamT> &rhs) const angle::BitSetT<N, BitsT, ParamT> &rhs)
{ {
return angle::BitSetT<N, BitsT, ParamT>(lhs.bits() | rhs.bits()); angle::BitSetT<N, BitsT, ParamT> result(lhs);
result |= rhs.bits();
return result;
} }
template <size_t N, typename BitsT, typename ParamT> template <size_t N, typename BitsT, typename ParamT>
inline angle::BitSetT<N, BitsT, ParamT> operator^(const angle::BitSetT<N, BitsT, ParamT> &lhs, inline angle::BitSetT<N, BitsT, ParamT> operator^(const angle::BitSetT<N, BitsT, ParamT> &lhs,
const angle::BitSetT<N, BitsT, ParamT> &rhs) const angle::BitSetT<N, BitsT, ParamT> &rhs)
{ {
return angle::BitSetT<N, BitsT, ParamT>(lhs.bits() ^ rhs.bits()); angle::BitSetT<N, BitsT, ParamT> result(lhs);
result ^= rhs.bits();
return result;
} }
#endif // COMMON_BITSETITERATOR_H_ #endif // COMMON_BITSETITERATOR_H_
...@@ -1605,8 +1605,7 @@ void StateManagerGL::syncState(const gl::Context *context, ...@@ -1605,8 +1605,7 @@ void StateManagerGL::syncState(const gl::Context *context,
} }
} }
const gl::State::DirtyBits &glAndLocalDirtyBits = (glDirtyBits | mLocalDirtyBits) & bitMask; const gl::State::DirtyBits glAndLocalDirtyBits = (glDirtyBits | mLocalDirtyBits) & bitMask;
if (!glAndLocalDirtyBits.any()) if (!glAndLocalDirtyBits.any())
{ {
return; return;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment