Fix atomic ssbo xor test

Allow any values in high order bits in xor tests when using uint types.

Bug: 28144118
Change-Id: I0670aa12642882a329cb923487198fdf045b912b
diff --git a/modules/gles31/functional/es31fShaderAtomicOpTests.cpp b/modules/gles31/functional/es31fShaderAtomicOpTests.cpp
index 1e37be0..01503cf 100644
--- a/modules/gles31/functional/es31fShaderAtomicOpTests.cpp
+++ b/modules/gles31/functional/es31fShaderAtomicOpTests.cpp
@@ -751,7 +751,7 @@
 		const int		numWorkGroups	= numValues/workGroupSize;
 		const int		numBits			= m_precision == PRECISION_HIGHP ? 32 :
 										  m_precision == PRECISION_MEDIUMP ? 16 : 8;
-		const deUint32	compareMask		= (m_type == TYPE_UINT || numBits == 32) ? ~0u : (1u<<numBits)-1u;
+		const deUint32	compareMask		= numBits == 32 ? ~0u : (1u<<numBits)-1u;
 
 		for (int groupNdx = 0; groupNdx < numWorkGroups; groupNdx++)
 		{
@@ -783,10 +783,10 @@
 			{
 				const deUint32 outputValue = *(const deUint32*)((const deUint8*)outputs + outputStride*(groupOffset+localNdx));
 
-				if ((outputValue&compareMask) != 0 &&
-					(outputValue&compareMask) != compareMask &&
-					(outputValue&compareMask) != (expected0&compareMask) &&
-					(outputValue&compareMask) != (expected1&compareMask))
+				if ((outputValue & compareMask) != 0 &&
+					(outputValue & compareMask) != compareMask &&
+					(outputValue & compareMask) != (expected0&compareMask) &&
+					(outputValue & compareMask) != (expected1&compareMask))
 				{
 					m_testCtx.getLog() << TestLog::Message << "ERROR: at group " << groupNdx << ", invocation " << localNdx
 														   << ": found unexpected value " << tcu::toHex(outputValue)