Home | History | Annotate | Download | only in functional

Lines Matching refs:m_spec

117 	const TestSpec		m_spec;
122 deUint32 getInitialValue (void) const { return m_spec.callCount * m_spec.threadCount + 1; }
140 if (m_spec.operations & OPERATION_INC)
143 if (m_spec.operations & OPERATION_DEC)
146 if (m_spec.operations == OPERATION_GET)
148 else if (m_spec.operations & OPERATION_GET)
156 , m_spec (spec)
536 if ((m_spec.operations & OPERATION_INC) != 0 && (m_spec.operations & OPERATION_DEC) == 0)
537 expectedValue = initialValue + (m_spec.useBranches ? m_spec.threadCount*m_spec.callCount - m_spec.threadCount*m_spec.callCount/2 : m_spec.threadCount*m_spec.callCount);
539 if ((m_spec.operations & OPERATION_INC) == 0 && (m_spec.operations & OPERATION_DEC) != 0)
540 expectedValue = initialValue - (m_spec.useBranches ? m_spec.threadCount*m_spec.callCount - m_spec.threadCount*m_spec.callCount/2 : m_spec.threadCount*m_spec.callCount);
542 if ((m_spec.operations & OPERATION_INC) != 0 && (m_spec.operations & OPERATION_DEC) != 0)
543 expectedValue = initialValue + (m_spec.useBranches ? m_spec.threadCount*m_spec.callCount - m_spec.threadCount*m_spec.callCount/2 : 0) - (m_spec.useBranches ? m_spec.threadCount*m_spec.callCount/2 : 0);
545 if ((m_spec.operations & OPERATION_INC) == 0 && (m_spec.operations & OPERATION_DEC) == 0)
559 const int bufferValueCount = m_spec.callCount * m_spec.threadCount * m_spec.atomicCounterCount;
573 if (m_spec.operations == OPERATION_GET)
575 else if (m_spec.operations == OPERATION_INC)
577 else if (m_spec.operations == OPERATION_DEC)
579 else if (m_spec.operations == (OPERATION_GET|OPERATION_INC))
585 else if (m_spec.operations == (OPERATION_GET|OPERATION_DEC))
591 else if (m_spec.operations == (OPERATION_GET|OPERATION_DEC|OPERATION_INC))
598 m_spec.operations == (OPERATION_DEC|OPERATION_INC))
606 for (int threadNdx = 0; threadNdx < m_spec.threadCount; threadNdx++)
608 for (int callNdx = 0; callNdx < m_spec.callCount; callNdx++)
610 for (int counterNdx = 0; counterNdx < m_spec.atomicCounterCount; counterNdx++)
612 const int id = ((threadNdx * m_spec.callCount) + callNdx) * m_spec.atomicCounterCount + counterNdx;
810 for (int counterNdx = 0; counterNdx < m_spec.atomicCounterCount; counterNdx++)
818 getCountersValues(counterIncrements, increments, counterNdx, m_spec.atomicCounterCount);
819 getCountersValues(counterDecrements, decrements, counterNdx, m_spec.atomicCounterCount);
820 getCountersValues(counterPreGets, preGets, counterNdx, m_spec.atomicCounterCount);
821 getCountersValues(counterPostGets, postGets, counterNdx, m_spec.atomicCounterCount);
822 getCountersValues(counterGets, gets, counterNdx, m_spec.atomicCounterCount);
824 if (m_spec.operations == OPERATION_GET)
831 if ((!m_spec.useBranches || gets[valueNdx] != (deUint32)-1) && gets[valueNdx] != getInitialValue())
845 else if ((m_spec.operations & (OPERATION_INC|OPERATION_DEC)) == (OPERATION_INC|OPERATION_DEC))
848 if (!checkPath(counterIncrements, counterDecrements, getInitialValue(), m_spec))
856 else if ((m_spec.operations & OPERATION_INC) != 0)
870 if (isOk && ((m_spec.operations & OPERATION_GET) != 0))
883 else if ((m_spec.operations & OPERATION_DEC) != 0)
897 if (isOk && ((m_spec.operations & OPERATION_GET) != 0))
921 const glu::ShaderProgram program (m_context.getRenderContext(), glu::ProgramSources() << glu::ShaderSource(glu::SHADERTYPE_COMPUTE, generateShaderSource(m_spec)));
923 const deInt32 counterBufferSize = m_spec.atomicCounterCount * 4;
924 const deInt32 ssoSize = m_spec.atomicCounterCount * m_spec.callCount * m_spec.threadCount * 4 * getOperationCount();
928 if (m_spec.offsetType == OFFSETTYPE_INVALID || m_spec.offsetType == OFFSETTYPE_INVALID_DEFAULT || m_spec.bindingType == BINDINGTYPE_INVALID || m_spec.bindingType == BINDINGTYPE_INVALID_DEFAULT || m_spec.offsetType == OFFSETTYPE_INVALID_OVERLAPPING)
960 vector<deUint32> data(m_spec.atomicCounterCount, getInitialValue());
975 gl.dispatchCompute(m_spec.threadCount, 1, 1);
982 vector<deUint32> counters(m_spec.atomicCounterCount, 0);