Lines Matching defs:operand
55 SkOperand2 operand[2]; // 1=accumulator and 2=operand
64 operand[0].fArray = new SkOpArray(SkOperand2::kNoType /*fReturnType*/);
67 index = operand[1].fS32;
68 if (index >= operand[0].fArray->count()) {
72 operand[0] = operand[0].fArray->begin()[index];
75 *operand[0].fArray->append() = operand[1];
86 if (callBackFunction->invoke(ref, operand[0].fArray, /* params */
87 &operand[0] /* result */) == false) {
96 if (callBackMember->invoke(ref, operand[0].fObject, &operand[0]) == false) {
105 if (callBackProperty->getResult(ref, &operand[0])== false) {
111 fRunStack.pop(&operand[0]);
114 *fRunStack.push() = operand[0];
119 memcpy(&operand[registerLoad].fS32, opCode, sizeof(int32_t));
125 memcpy(&operand[registerLoad].fScalar, opCode, sizeof(SkScalar));
137 operand[registerLoad].fString = strPtr;
140 track(operand[0].fString);
147 if (callBackBox->convert(type, &operand[0]) == false)
153 if (callBackUnbox->convert(SkOperand2::kObject, &operand[0]) == false)
160 if (operand[0].fS32 == 0)
171 if (operand[0].fS32 != 0)
176 SkTSwap(operand[0], operand[1]);
185 strPtr->appendS32(operand[op - SkScriptEngine2::kIntToString].fS32);
187 strPtr->appendScalar(operand[op - SkScriptEngine2::kScalarToString].fScalar);
188 operand[0].fString = strPtr;
192 operand[0].fScalar = SkScriptEngine2::IntToScalar(operand[op - SkScriptEngine2::kIntToScalar].fS32);
195 if (SkParse::FindS32(operand[0].fString->c_str(), &operand[0].fS32) == false)
200 if (SkParse::FindScalar(operand[0].fString->c_str(),
201 &operand[op - SkScriptEngine2::kStringToScalar].fScalar) == false)
205 operand[0].fS32 = SkScalarFloor(operand[0].fScalar);
209 operand[0].fS32 += operand[1].fS32;
212 operand[0].fScalar += operand[1].fScalar;
215 // if (fTrackString.find(operand[1].fString) < 0) {
216 // operand[1].fString = SkNEW_ARGS(SkString, (*operand[1].fString));
217 // track(operand[1].fString);
219 operand[0].fString->append(*operand[1].fString);
222 operand[0].fS32 &= operand[1].fS32;
225 operand[0].fS32 = ~operand[0].fS32;
228 operand[0].fS32 |= operand[1].fS32;
231 SkASSERT(operand[1].fS32 != 0);
232 if (operand[1].fS32 == 0)
233 operand[0].fS32 = operand[0].fS32 == 0 ? SK_NaN32 :
234 operand[0].fS32 > 0 ? SK_MaxS32 : -SK_MaxS32;
236 if (operand[1].fS32 != 0) // throw error on divide by zero?
237 operand[0].fS32 /= operand[1].fS32;
240 if (operand[1].fScalar == 0)
241 operand[0].fScalar = operand[0].fScalar == 0 ? SK_ScalarNaN :
242 operand[0].fScalar > 0 ? SK_ScalarMax : -SK_ScalarMax;
244 operand[0].fScalar = SkScalarDiv(operand[0].fScalar, operand[1].fScalar);
247 operand[0].fS32 = operand[0].fS32 == operand[1].fS32;
250 operand[0].fS32 = operand[0].fScalar == operand[1].fScalar;
253 operand[0].fS32 = *operand[0].fString == *operand[1].fString;
256 operand[0].fS32 = operand[0].fS32 >= operand[1].fS32;
259 operand[0].fS32 = operand[0].fScalar >= operand[1].fScalar;
262 operand[0].fS32 = strcmp(operand[0].fString->c_str(), operand[1].fString->c_str()) >= 0;
265 operand[0].fS32 = !! operand[0].fS32;
268 operand[0].fS32 = ! operand[0].fS32;
271 operand[0].fS32 = -operand[0].fS32;
274 operand[0].fScalar = -operand[0].fScalar;
277 operand[0].fS32 %= operand[1].fS32;
280 operand[0].fScalar = SkScalarMod(operand[0].fScalar, operand[1].fScalar);
283 operand[0].fS32 *= operand[1].fS32;
286 operand[0].fScalar = SkScalarMul(operand[0].fScalar, operand[1].fScalar);
289 operand[0].fS32 <<= operand[1].fS32;
292 operand[0].fS32 >>= operand[1].fS32;
295 operand[0].fS32 -= operand[1].fS32;
298 operand[0].fScalar -= operand[1].fScalar;
301 operand[0].fS32 ^= operand[1].fS32;
312 fRunStack.push(operand[0]);