Home | History | Annotate | Download | only in jit

Lines Matching full:jsvalue

350     __declspec(naked) EncodedJSValue ctiTrampoline(void* code, RegisterFile*, CallFrame*, JSValue* exception, Profiler**, JSGlobalData*)
646 __asm EncodedJSValue ctiTrampoline(void*, RegisterFile*, CallFrame*, JSValue*, Profiler**, JSGlobalData*)
697 __declspec(naked) EncodedJSValue ctiTrampoline(void* code, RegisterFile*, CallFrame*, JSValue* exception, Profiler**, JSGlobalData*)
783 NEVER_INLINE void JITThunks::tryCachePutByID(CallFrame* callFrame, CodeBlock* codeBlock, ReturnAddressPtr returnAddress, JSValue baseValue, const PutPropertySlot& slot, StructureStubInfo* stubInfo)
833 NEVER_INLINE void JITThunks::tryCacheGetByID(CallFrame* callFrame, CodeBlock* codeBlock, ReturnAddressPtr returnAddress, JSValue baseValue, const Identifier& propertyName, const PropertySlot& slot, StructureStubInfo* stubInfo)
1092 JSValue v1 = stackFrame.args[0].jsValue();
1097 return JSValue::encode(result);
1113 JSValue v1 = stackFrame.args[0].jsValue();
1114 JSValue v2 = stackFrame.args[1].jsValue();
1118 JSValue result = v2.isString()
1122 return JSValue::encode(result);
1127 return JSValue::encode(jsNumber(stackFrame.globalData, left + right));
1130 JSValue result = jsAddSlowCase(callFrame, v1, v2);
1132 return JSValue::encode(result);
1139 JSValue v = stackFrame.args[0].jsValue();
1142 JSValue result = jsNumber(stackFrame.globalData, v.toNumber(callFrame) + 1);
1144 return JSValue::encode(result);
1180 JSValue src1 = stackFrame.args[0].jsValue();
1181 JSValue src2 = stackFrame.args[1].jsValue();
1201 stackFrame.args[0].jsValue().put(stackFrame.callFrame, stackFrame.args[1].identifier(), stackFrame.args[2].jsValue(), slot);
1212 JSValue baseValue = stackFrame.args[0].jsValue();
1214 JSValue result = baseValue.get(callFrame, ident, slot);
1217 return JSValue::encode(result);
1229 stackFrame.args[0].jsValue().put(callFrame, ident, stackFrame.args[2].jsValue(), slot);
1236 JITThunks::tryCachePutByID(callFrame, codeBlock, STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot, stubInfo);
1249 stackFrame.args[0].jsValue().put(callFrame, ident, stackFrame.args[2].jsValue(), slot);
1258 JSValue baseValue = stackFrame.args[0].jsValue();
1276 JSValue baseValue = stackFrame.args[0].jsValue();
1278 JSValue result = baseValue.get(callFrame, ident, slot);
1286 return JSValue::encode(result);
1317 ASSERT(result == JSValue(callee));
1322 return JSValue::encode(result);
1333 return JSValue::encode(result);
1339 return JSValue::encode(result);
1348 JSValue baseValue = stackFrame.args[0].jsValue();
1350 JSValue result = baseValue.get(callFrame, ident, slot);
1360 return JSValue::encode(result);
1370 JSValue baseValue = stackFrame.args[0].jsValue();
1372 JSValue result = baseValue.get(callFrame, ident, slot);
1405 return JSValue::encode(result);
1444 JSValue baseValue = stackFrame.args[0].jsValue();
1446 JSValue result = baseValue.get(callFrame, propertyName, slot);
1452 return JSValue::encode(result);
1495 return JSValue::encode(result);
1502 JSValue baseValue = stackFrame.args[0].jsValue();
1504 JSValue result = baseValue.get(stackFrame.callFrame, stackFrame.args[1].identifier(), slot);
1507 return JSValue::encode(result);
1514 JSValue baseValue = stackFrame.args[0].jsValue();
1516 JSValue result = baseValue.get(stackFrame.callFrame, stackFrame.args[1].identifier(), slot);
1519 return JSValue::encode(result);
1526 JSValue baseValue = stackFrame.args[0].jsValue();
1528 JSValue result = baseValue.get(stackFrame.callFrame, stackFrame.args[1].identifier(), slot);
1531 return JSValue::encode(result);
1538 JSValue baseValue = stackFrame.args[0].jsValue();
1540 JSValue result = baseValue.get(stackFrame.callFrame, stackFrame.args[1].identifier(), slot);
1543 return JSValue::encode(result);
1553 JSValue value = stackFrame.args[0].jsValue();
1554 JSValue baseVal = stackFrame.args[1].jsValue();
1555 JSValue proto = stackFrame.args[2].jsValue();
1577 return JSValue::encode(jsBoolean(false));
1585 JSValue result = jsBoolean(asObject(baseVal)->hasInstance(callFrame, value, proto));
1588 return JSValue::encode(result);
1597 JSObject* baseObj = stackFrame.args[0].jsValue().toObject(callFrame);
1599 JSValue result = jsBoolean(baseObj->deleteProperty(callFrame, stackFrame.args[1].identifier()));
1601 return JSValue::encode(result);
1608 JSValue src1 = stackFrame.args[0].jsValue();
1609 JSValue src2 = stackFrame.args[1].jsValue();
1614 return JSValue::encode(jsNumber(stackFrame.globalData, left * right));
1617 JSValue result = jsNumber(stackFrame.globalData, src1.toNumber(callFrame) * src2.toNumber(callFrame));
1619 return JSValue::encode(result);
1635 ASSERT(stackFrame.args[0].jsValue().getCallData(callData) == CallTypeJS);
1638 JSFunction* function = asFunction(stackFrame.args[0].jsValue());
1652 JSFunction* callee = asFunction(stackFrame.args[0].jsValue());
1698 JSFunction* callee = asFunction(stackFrame.args[0].jsValue());
1729 JSValue funcVal = stackFrame.args[0].jsValue();
1748 JSValue returnValue;
1753 JSValue thisValue = argv[0].jsValue();
1762 return JSValue::encode(returnValue);
1780 stackFrame.callFrame[RegisterFile::ArgumentsRegister] = JSValue(arguments);
1789 stackFrame.callFrame[RegisterFile::ArgumentsRegister] = JSValue(arguments);
1797 asActivation(stackFrame.args[0].jsValue())->copyRegisters(stackFrame.callFrame->optionalCalleeArguments());
1814 (*stackFrame.enabledProfilerReference)->willExecute(stackFrame.callFrame, stackFrame.args[0].jsValue());
1822 (*stackFrame.enabledProfilerReference)->didExecute(stackFrame.callFrame, stackFrame.args[0].jsValue());
1857 JSValue result = slot.getValue(callFrame, ident);
1859 return JSValue::encode(result);
1873 JSFunction* constructor = asFunction(stackFrame.args[0].jsValue());
1888 if (stackFrame.args[3].jsValue().isObject())
1889 structure = asObject(stackFrame.args[3].jsValue())->inheritorID();
1901 JSValue constrVal = stackFrame.args[0].jsValue();
1911 JSValue returnValue;
1918 return JSValue::encode(returnValue);
1936 JSValue baseValue = stackFrame.args[0].jsValue();
1937 JSValue subscript = stackFrame.args[1].jsValue();
1939 JSValue result;
1956 return JSValue::encode(asByteArray(baseValue)->getIndex(callFrame, i));
1965 return JSValue::encode(result);
1975 JSValue baseValue = stackFrame.args[0].jsValue();
1976 JSValue subscript = stackFrame.args[1].jsValue();
1978 JSValue result;
1995 return JSValue::encode(result);
2005 JSValue baseValue = stackFrame.args[0].jsValue();
2006 JSValue subscript = stackFrame.args[1].jsValue();
2008 JSValue result;
2014 return JSValue::encode(asByteArray(baseValue)->getIndex(callFrame, i));
2026 return JSValue::encode(result);
2033 JSValue src1 = stackFrame.args[0].jsValue();
2034 JSValue src2 = stackFrame.args[1].jsValue();
2039 return JSValue::encode(jsNumber(stackFrame.globalData, left - right));
2042 JSValue result = jsNumber(stackFrame.globalData, src1.toNumber(callFrame) - src2.toNumber(callFrame));
2044 return JSValue::encode(result);
2054 JSValue baseValue = stackFrame.args[0].jsValue();
2055 JSValue subscript = stackFrame.args[1].jsValue();
2056 JSValue value = stackFrame.args[2].jsValue();
2102 JSValue baseValue = stackFrame.args[0].jsValue();
2103 JSValue subscript = stackFrame.args[1].jsValue();
2104 JSValue value = stackFrame.args[2].jsValue();
2143 JSValue result = jsBoolean(jsLessEq(callFrame, stackFrame.args[0].jsValue(), stackFrame.args[1].jsValue()));
2145 return JSValue::encode(result);
2155 JSValue arguments = callFrame->registers()[argsOffset].jsValue();
2241 JSValue src = stackFrame.args[0].jsValue();
2245 return JSValue::encode(jsNumber(stackFrame.globalData, -v));
2248 JSValue result = jsNumber(stackFrame.globalData, -src.toNumber(callFrame));
2250 return JSValue::encode(result);
2257 return JSValue::encode(JSC::resolveBase(stackFrame.callFrame, stackFrame.args[0].identifier(), stackFrame.callFrame->scopeChain()));
2281 JSValue result = slot.getValue(callFrame, ident);
2283 return JSValue::encode(result);
2305 JSValue result = slot.getValue(callFrame, ident);
2313 return JSValue::encode(result);
2317 return JSValue::encode(result);
2329 JSValue src1 = stackFrame.args[0].jsValue();
2330 JSValue src2 = stackFrame.args[1].jsValue();
2335 return JSValue::encode(jsNumber(stackFrame.globalData, left / right));
2338 JSValue result = jsNumber(stackFrame.globalData, src1.toNumber(callFrame) / src2.toNumber(callFrame));
2340 return JSValue::encode(result);
2347 JSValue v = stackFrame.args[0].jsValue();
2350 JSValue result = jsNumber(stackFrame.globalData, v.toNumber(callFrame) - 1);
2352 return JSValue::encode(result);
2359 JSValue src1 = stackFrame.args[0].jsValue();
2360 JSValue src2 = stackFrame.args[1].jsValue();
2372 JSValue src1 = stackFrame.args[0].jsValue();
2373 JSValue src2 = stackFrame.args[1].jsValue();
2385 JSValue src = stackFrame.args[0].jsValue();
2389 JSValue result = jsBoolean(!src.toBoolean(callFrame));
2391 return JSValue::encode(result);
2398 JSValue src1 = stackFrame.args[0].jsValue();
2411 JSValue v = stackFrame.args[0].jsValue();
2415 JSValue number = v.toJSNumber(callFrame);
2419 return JSValue::encode(number);
2426 JSValue src1 = stackFrame.args[0].jsValue();
2427 JSValue src2 = stackFrame.args[1].jsValue();
2514 bool result = JSValue::equalSlowCaseInline(callFrame, src1, src2);
2540 JSValue val = stackFrame.args[0].jsValue();
2541 JSValue shift = stackFrame.args[1].jsValue();
2544 JSValue result = jsNumber(stackFrame.globalData, (val.toInt32(callFrame)) << (shift.toUInt32(callFrame) & 0x1f));
2546 return JSValue::encode(result);
2553 JSValue src1 = stackFrame.args[0].jsValue();
2554 JSValue src2 = stackFrame.args[1].jsValue();
2558 JSValue result = jsNumber(stackFrame.globalData, src1.toInt32(callFrame) & src2.toInt32(callFrame));
2560 return JSValue::encode(result);
2567 JSValue val = stackFrame.args[0].jsValue();
2568 JSValue shift = stackFrame.args[1].jsValue();
2571 JSValue result = jsNumber(stackFrame.globalData, (val.toInt32(callFrame)) >> (shift.toUInt32(callFrame) & 0x1f));
2574 return JSValue::encode(result);
2581 JSValue src = stackFrame.args[0].jsValue();
2585 JSValue result = jsNumber(stackFrame.globalData, ~src.toInt32(callFrame));
2587 return JSValue::encode(result);
2610 JSValue result = slot.getValue(callFrame, ident);
2613 callFrame->registers()[stackFrame.args[1].int32()] = JSValue(base);
2614 return JSValue::encode(result);
2623 return JSValue::encode(JSValue());
2653 JSValue dividendValue = stackFrame.args[0].jsValue();
2654 JSValue divisorValue = stackFrame.args[1].jsValue();
2658 JSValue result = jsNumber(stackFrame.globalData, fmod(d, divisorValue.toNumber(callFrame)));
2660 return JSValue::encode(result);
2668 JSValue result = jsBoolean(jsLess(callFrame, stackFrame.args[0].jsValue(), stackFrame.args[1].jsValue()));
2670 return JSValue::encode(result);
2677 JSValue v = stackFrame.args[0].jsValue();
2681 JSValue number = v.toJSNumber(callFrame);
2685 return JSValue::encode(number);
2692 JSValue val = stackFrame.args[0].jsValue();
2693 JSValue shift = stackFrame.args[1].jsValue();
2696 JSValue result = jsNumber(stackFrame.globalData, (val.toUInt32(callFrame)) >> (shift.toUInt32(callFrame) & 0x1f));
2698 return JSValue::encode(result);
2705 JSValue src1 = stackFrame.args[0].jsValue();
2706 JSValue src2 = stackFrame.args[1].jsValue();
2710 JSValue result = jsNumber(stackFrame.globalData, src1.toInt32(callFrame) ^ src2.toInt32(callFrame));
2712 return JSValue::encode(result);
2726 JSValue src1 = stackFrame.args[0].jsValue();
2727 JSValue src2 = stackFrame.args[1].jsValue();
2731 JSValue result = jsNumber(stackFrame.globalData, src1.toInt32(callFrame) | src2.toInt32(callFrame));
2733 return JSValue::encode(result);
2745 JSValue funcVal = stackFrame.args[0].jsValue();
2751 JSValue thisValue = argv[0].jsValue();
2755 JSValue exceptionValue;
2756 JSValue result = interpreter->callEval(callFrame, registerFile, argv, argCount, registerOffset, exceptionValue);
2761 return JSValue::encode(result);
2764 return JSValue::encode(JSValue());
2776 JSValue exceptionValue = stackFrame.args[0].jsValue();
2784 return JSValue::encode(jsNull());
2791 return JSValue::encode(exceptionValue);
2820 JSObject* o = stackFrame.args[0].jsValue().toObject(stackFrame.callFrame);
2837 return JSValue::encode(jsTypeStringForValue(stackFrame.callFrame, stackFrame.args[0].jsValue()));
2844 JSValue v = stackFrame.args[0].jsValue();
2845 return JSValue::encode(jsBoolean(v.isCell() ? v.asCell()->structure()->typeInfo().masqueradesAsUndefined() : v.isUndefined()));
2852 return JSValue::encode(jsBoolean(stackFrame.args[0].jsValue().isBoolean()));
2859 return JSValue::encode(jsBoolean(stackFrame.args[0].jsValue().isNumber()));
2866 return JSValue::encode(jsBoolean(isJSString(stackFrame.globalData, stackFrame.args[0].jsValue())));
2873 return JSValue::encode(jsBoolean(jsIsObjectType(stackFrame.args[0].jsValue())));
2880 return JSValue::encode(jsBoolean(jsIsFunctionType(stackFrame.args[0].jsValue())));
2887 JSValue src1 = stackFrame.args[0].jsValue();
2888 JSValue src2 = stackFrame.args[1].jsValue();
2890 return JSValue::encode(jsBoolean(JSValue::strictEqual(stackFrame.callFrame, src1, src2)));
2897 return JSValue::encode(stackFrame.args[0].jsValue().toPrimitive(stackFrame.callFrame));
2904 JSValue result = jsString(stackFrame.callFrame, &stackFrame.callFrame->registers()[stackFrame.args[0].int32()], stackFrame.args[1].int32());
2906 return JSValue::encode(result);
2913 JSValue src1 = stackFrame.args[0].jsValue();
2914 JSValue src2 = stackFrame.args[1].jsValue();
2916 return JSValue::encode(jsBoolean(!JSValue::strictEqual(stackFrame.callFrame, src1, src2)));
2923 JSValue src = stackFrame.args[0].jsValue();
2926 JSValue result = src.toJSNumber(callFrame);
2928 return JSValue::encode(result);
2936 JSValue baseVal = stackFrame.args[1].jsValue();
2946 JSValue propName = stackFrame.args[0].jsValue();
2951 return JSValue::encode(jsBoolean(baseObj->hasProperty(callFrame, i)));
2955 return JSValue::encode(jsBoolean(baseObj->hasProperty(callFrame, property)));
2962 JSObject* scope = new (stackFrame.globalData) JSStaticScopeObject(stackFrame.callFrame, stackFrame.args[0].identifier(), stackFrame.args[1].jsValue(), DontDelete);
2989 stackFrame.args[0].jsValue().put(callFrame, property, stackFrame.args[2].jsValue());
2996 JSValue scrutinee = stackFrame.args[0].jsValue();
3017 JSValue scrutinee = stackFrame.args[0].jsValue();
3037 JSValue scrutinee = stackFrame.args[0].jsValue();
3058 JSValue baseValue = stackFrame.args[0].jsValue();
3061 JSValue subscript = stackFrame.args[1].jsValue();
3062 JSValue result;
3074 return JSValue::encode(result);
3083 ASSERT(stackFrame.args[0].jsValue().isObject());
3084 JSObject* baseObj = asObject(stackFrame.args[0].jsValue());
3085 ASSERT(stackFrame.args[2].jsValue().isObject());
3086 baseObj->defineGetter(callFrame, stackFrame.args[1].identifier(), asObject(stackFrame.args[2].jsValue()));
3095 ASSERT(stackFrame.args[0].jsValue().isObject());
3096 JSObject* baseObj = asObject(stackFrame.args[0].jsValue());
3097 ASSERT(stackFrame.args[2].jsValue().isObject());
3098 baseObj->defineSetter(callFrame, stackFrame.args[1].identifier(), asObject(stackFrame.args[2].jsValue()));
3108 JSValue message = stackFrame.args[1].jsValue();
3138 JSValue exceptionValue = globalData->exception;
3140 globalData->exception = JSValue();
3146 return JSValue::encode(jsNull());
3153 return JSValue::encode(exceptionValue);
3161 return JSValue::encode(stackFrame.args[0].jsValue().toObject(callFrame));