Changeset 43103 in webkit for trunk/JavaScriptCore
- Timestamp:
- Apr 30, 2009, 3:58:21 PM (16 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/API/APICast.h
r39769 r43103 58 58 inline JSC::JSValuePtr toJS(JSValueRef v) 59 59 { 60 return JSC::JSValuePtr::decode(reinterpret_cast<JSC:: JSValueEncodedAsPointer*>(const_cast<OpaqueJSValue*>(v)));60 return JSC::JSValuePtr::decode(reinterpret_cast<JSC::EncodedJSValuePtr>(const_cast<OpaqueJSValue*>(v))); 61 61 } 62 62 -
trunk/JavaScriptCore/ChangeLog
r43100 r43103 1 2009-04-30 Geoffrey Garen <[email protected]> 2 3 Rubber Stamped by Gavin Barraclough. 4 5 Changed JSValueEncodedAsPtr* => EncodedJSValuePtr to support a non-pointer 6 encoding for JSValuePtrs. 7 8 * API/APICast.h: 9 (toJS): 10 * bytecompiler/BytecodeGenerator.h: 11 (JSC::BytecodeGenerator::JSValueHashTraits::constructDeletedValue): 12 (JSC::BytecodeGenerator::JSValueHashTraits::isDeletedValue): 13 * interpreter/Register.h: 14 (JSC::Register::): 15 * jit/JIT.cpp: 16 (JSC::): 17 * jit/JIT.h: 18 * jit/JITCode.h: 19 (JSC::): 20 * jit/JITStubs.cpp: 21 (JSC::JITStubs::cti_op_add): 22 (JSC::JITStubs::cti_op_pre_inc): 23 (JSC::JITStubs::cti_op_get_by_id_generic): 24 (JSC::JITStubs::cti_op_get_by_id): 25 (JSC::JITStubs::cti_op_get_by_id_second): 26 (JSC::JITStubs::cti_op_get_by_id_self_fail): 27 (JSC::JITStubs::cti_op_get_by_id_proto_list): 28 (JSC::JITStubs::cti_op_get_by_id_proto_list_full): 29 (JSC::JITStubs::cti_op_get_by_id_proto_fail): 30 (JSC::JITStubs::cti_op_get_by_id_array_fail): 31 (JSC::JITStubs::cti_op_get_by_id_string_fail): 32 (JSC::JITStubs::cti_op_instanceof): 33 (JSC::JITStubs::cti_op_del_by_id): 34 (JSC::JITStubs::cti_op_mul): 35 (JSC::JITStubs::cti_op_call_NotJSFunction): 36 (JSC::JITStubs::cti_op_resolve): 37 (JSC::JITStubs::cti_op_construct_NotJSConstruct): 38 (JSC::JITStubs::cti_op_get_by_val): 39 (JSC::JITStubs::cti_op_get_by_val_string): 40 (JSC::JITStubs::cti_op_get_by_val_byte_array): 41 (JSC::JITStubs::cti_op_sub): 42 (JSC::JITStubs::cti_op_lesseq): 43 (JSC::JITStubs::cti_op_negate): 44 (JSC::JITStubs::cti_op_resolve_base): 45 (JSC::JITStubs::cti_op_resolve_skip): 46 (JSC::JITStubs::cti_op_resolve_global): 47 (JSC::JITStubs::cti_op_div): 48 (JSC::JITStubs::cti_op_pre_dec): 49 (JSC::JITStubs::cti_op_not): 50 (JSC::JITStubs::cti_op_eq): 51 (JSC::JITStubs::cti_op_lshift): 52 (JSC::JITStubs::cti_op_bitand): 53 (JSC::JITStubs::cti_op_rshift): 54 (JSC::JITStubs::cti_op_bitnot): 55 (JSC::JITStubs::cti_op_mod): 56 (JSC::JITStubs::cti_op_less): 57 (JSC::JITStubs::cti_op_neq): 58 (JSC::JITStubs::cti_op_urshift): 59 (JSC::JITStubs::cti_op_bitxor): 60 (JSC::JITStubs::cti_op_bitor): 61 (JSC::JITStubs::cti_op_call_eval): 62 (JSC::JITStubs::cti_op_throw): 63 (JSC::JITStubs::cti_op_next_pname): 64 (JSC::JITStubs::cti_op_typeof): 65 (JSC::JITStubs::cti_op_is_undefined): 66 (JSC::JITStubs::cti_op_is_boolean): 67 (JSC::JITStubs::cti_op_is_number): 68 (JSC::JITStubs::cti_op_is_string): 69 (JSC::JITStubs::cti_op_is_object): 70 (JSC::JITStubs::cti_op_is_function): 71 (JSC::JITStubs::cti_op_stricteq): 72 (JSC::JITStubs::cti_op_nstricteq): 73 (JSC::JITStubs::cti_op_to_jsnumber): 74 (JSC::JITStubs::cti_op_in): 75 (JSC::JITStubs::cti_op_del_by_val): 76 (JSC::JITStubs::cti_vm_throw): 77 * jit/JITStubs.h: 78 * runtime/JSValue.h: 79 (JSC::JSValuePtr::encode): 80 (JSC::JSValuePtr::decode): 81 1 82 2009-04-30 Gavin Barraclough <[email protected]> 2 83 -
trunk/JavaScriptCore/bytecompiler/BytecodeGenerator.h
r42574 r43103 351 351 PassRefPtr<Label> emitComplexJumpScopes(Label* target, ControlFlowContext* topScope, ControlFlowContext* bottomScope); 352 352 353 struct JSValueHashTraits : HashTraits< JSValueEncodedAsPointer*> {354 static void constructDeletedValue( JSValueEncodedAsPointer*& slot) { slot = JSValuePtr::encode(jsImpossibleValue()); }355 static bool isDeletedValue( JSValueEncodedAsPointer*value) { return value == JSValuePtr::encode(jsImpossibleValue()); }353 struct JSValueHashTraits : HashTraits<EncodedJSValuePtr> { 354 static void constructDeletedValue(EncodedJSValuePtr& slot) { slot = JSValuePtr::encode(jsImpossibleValue()); } 355 static bool isDeletedValue(EncodedJSValuePtr value) { return value == JSValuePtr::encode(jsImpossibleValue()); } 356 356 }; 357 357 358 typedef HashMap< JSValueEncodedAsPointer*, unsigned, PtrHash<JSValueEncodedAsPointer*>, JSValueHashTraits> JSValueMap;358 typedef HashMap<EncodedJSValuePtr, unsigned, PtrHash<EncodedJSValuePtr>, JSValueHashTraits> JSValueMap; 359 359 360 360 struct IdentifierMapIndexHashTraits { -
trunk/JavaScriptCore/interpreter/Register.h
r42989 r43103 90 90 intptr_t i; 91 91 void* v; 92 JSValueEncodedAsPointer*value;92 EncodedJSValuePtr value; 93 93 94 94 JSActivation* activation; -
trunk/JavaScriptCore/jit/JIT.cpp
r42337 r43103 157 157 extern "C" { 158 158 159 __declspec(naked) JSValueEncodedAsPointer*ctiTrampoline(void* code, RegisterFile*, CallFrame*, JSValuePtr* exception, Profiler**, JSGlobalData*)159 __declspec(naked) EncodedJSValuePtr ctiTrampoline(void* code, RegisterFile*, CallFrame*, JSValuePtr* exception, Profiler**, JSGlobalData*) 160 160 { 161 161 __asm { -
trunk/JavaScriptCore/jit/JIT.h
r42337 r43103 65 65 #define ARG_setCallFrame(newCallFrame) (ARGS[STUB_ARGS_callFrame] = (newCallFrame)) 66 66 67 #define ARG_src1 JSValuePtr::decode(static_cast< JSValueEncodedAsPointer*>(ARGS[1]))68 #define ARG_src2 JSValuePtr::decode(static_cast< JSValueEncodedAsPointer*>(ARGS[2]))69 #define ARG_src3 JSValuePtr::decode(static_cast< JSValueEncodedAsPointer*>(ARGS[3]))70 #define ARG_src4 JSValuePtr::decode(static_cast< JSValueEncodedAsPointer*>(ARGS[4]))71 #define ARG_src5 JSValuePtr::decode(static_cast< JSValueEncodedAsPointer*>(ARGS[5]))67 #define ARG_src1 JSValuePtr::decode(static_cast<EncodedJSValuePtr>(ARGS[1])) 68 #define ARG_src2 JSValuePtr::decode(static_cast<EncodedJSValuePtr>(ARGS[2])) 69 #define ARG_src3 JSValuePtr::decode(static_cast<EncodedJSValuePtr>(ARGS[3])) 70 #define ARG_src4 JSValuePtr::decode(static_cast<EncodedJSValuePtr>(ARGS[4])) 71 #define ARG_src5 JSValuePtr::decode(static_cast<EncodedJSValuePtr>(ARGS[5])) 72 72 #define ARG_id1 static_cast<Identifier*>(ARGS[1]) 73 73 #define ARG_id2 static_cast<Identifier*>(ARGS[2]) … … 107 107 struct StructureStubInfo; 108 108 109 typedef JSValueEncodedAsPointer* (JIT_STUB *CTIHelper_j)(STUB_ARGS);110 109 typedef JSObject* (JIT_STUB *CTIHelper_o)(STUB_ARGS); 111 110 typedef JSPropertyNameIterator* (JIT_STUB *CTIHelper_p)(STUB_ARGS); … … 530 529 Call emitNakedCall(void* function); 531 530 Call emitCTICall_internal(void*); 532 Call emitCTICall(CTIHelper_j helper) { return emitCTICall_internal(reinterpret_cast<void*>(helper)); }533 531 Call emitCTICall(CTIHelper_o helper) { return emitCTICall_internal(reinterpret_cast<void*>(helper)); } 534 532 Call emitCTICall(CTIHelper_p helper) { return emitCTICall_internal(reinterpret_cast<void*>(helper)); } -
trunk/JavaScriptCore/jit/JITCode.h
r40813 r43103 41 41 42 42 extern "C" { 43 JSValueEncodedAsPointer*ctiTrampoline(43 EncodedJSValuePtr ctiTrampoline( 44 44 #if PLATFORM(X86_64) 45 45 // FIXME: (bug #22910) this will force all arguments onto the stack (regparm(0) does not appear to have any effect). -
trunk/JavaScriptCore/jit/JITStubs.cpp
r42989 r43103 336 336 } 337 337 338 JSValueEncodedAsPointer*JITStubs::cti_op_add(STUB_ARGS)338 EncodedJSValuePtr JITStubs::cti_op_add(STUB_ARGS) 339 339 { 340 340 BEGIN_STUB_FUNCTION(); … … 381 381 } 382 382 383 JSValueEncodedAsPointer*JITStubs::cti_op_pre_inc(STUB_ARGS)383 EncodedJSValuePtr JITStubs::cti_op_pre_inc(STUB_ARGS) 384 384 { 385 385 BEGIN_STUB_FUNCTION(); … … 464 464 } 465 465 466 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_generic(STUB_ARGS)466 EncodedJSValuePtr JITStubs::cti_op_get_by_id_generic(STUB_ARGS) 467 467 { 468 468 BEGIN_STUB_FUNCTION(); … … 519 519 } 520 520 521 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id(STUB_ARGS)521 EncodedJSValuePtr JITStubs::cti_op_get_by_id(STUB_ARGS) 522 522 { 523 523 BEGIN_STUB_FUNCTION(); … … 536 536 } 537 537 538 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_second(STUB_ARGS)538 EncodedJSValuePtr JITStubs::cti_op_get_by_id_second(STUB_ARGS) 539 539 { 540 540 BEGIN_STUB_FUNCTION(); … … 553 553 } 554 554 555 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_self_fail(STUB_ARGS)555 EncodedJSValuePtr JITStubs::cti_op_get_by_id_self_fail(STUB_ARGS) 556 556 { 557 557 BEGIN_STUB_FUNCTION(); … … 628 628 } 629 629 630 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_proto_list(STUB_ARGS)630 EncodedJSValuePtr JITStubs::cti_op_get_by_id_proto_list(STUB_ARGS) 631 631 { 632 632 BEGIN_STUB_FUNCTION(); … … 680 680 } 681 681 682 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_proto_list_full(STUB_ARGS)682 EncodedJSValuePtr JITStubs::cti_op_get_by_id_proto_list_full(STUB_ARGS) 683 683 { 684 684 BEGIN_STUB_FUNCTION(); … … 692 692 } 693 693 694 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_proto_fail(STUB_ARGS)694 EncodedJSValuePtr JITStubs::cti_op_get_by_id_proto_fail(STUB_ARGS) 695 695 { 696 696 BEGIN_STUB_FUNCTION(); … … 704 704 } 705 705 706 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_array_fail(STUB_ARGS)706 EncodedJSValuePtr JITStubs::cti_op_get_by_id_array_fail(STUB_ARGS) 707 707 { 708 708 BEGIN_STUB_FUNCTION(); … … 716 716 } 717 717 718 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_id_string_fail(STUB_ARGS)718 EncodedJSValuePtr JITStubs::cti_op_get_by_id_string_fail(STUB_ARGS) 719 719 { 720 720 BEGIN_STUB_FUNCTION(); … … 730 730 #endif 731 731 732 JSValueEncodedAsPointer*JITStubs::cti_op_instanceof(STUB_ARGS)732 EncodedJSValuePtr JITStubs::cti_op_instanceof(STUB_ARGS) 733 733 { 734 734 BEGIN_STUB_FUNCTION(); … … 773 773 } 774 774 775 JSValueEncodedAsPointer*JITStubs::cti_op_del_by_id(STUB_ARGS)775 EncodedJSValuePtr JITStubs::cti_op_del_by_id(STUB_ARGS) 776 776 { 777 777 BEGIN_STUB_FUNCTION(); … … 786 786 } 787 787 788 JSValueEncodedAsPointer*JITStubs::cti_op_mul(STUB_ARGS)788 EncodedJSValuePtr JITStubs::cti_op_mul(STUB_ARGS) 789 789 { 790 790 BEGIN_STUB_FUNCTION(); … … 913 913 } 914 914 915 JSValueEncodedAsPointer*JITStubs::cti_op_call_NotJSFunction(STUB_ARGS)915 EncodedJSValuePtr JITStubs::cti_op_call_NotJSFunction(STUB_ARGS) 916 916 { 917 917 BEGIN_STUB_FUNCTION(); … … 1028 1028 } 1029 1029 1030 JSValueEncodedAsPointer*JITStubs::cti_op_resolve(STUB_ARGS)1030 EncodedJSValuePtr JITStubs::cti_op_resolve(STUB_ARGS) 1031 1031 { 1032 1032 BEGIN_STUB_FUNCTION(); … … 1073 1073 } 1074 1074 1075 JSValueEncodedAsPointer*JITStubs::cti_op_construct_NotJSConstruct(STUB_ARGS)1075 EncodedJSValuePtr JITStubs::cti_op_construct_NotJSConstruct(STUB_ARGS) 1076 1076 { 1077 1077 BEGIN_STUB_FUNCTION(); … … 1107 1107 } 1108 1108 1109 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_val(STUB_ARGS)1109 EncodedJSValuePtr JITStubs::cti_op_get_by_val(STUB_ARGS) 1110 1110 { 1111 1111 BEGIN_STUB_FUNCTION(); … … 1146 1146 } 1147 1147 1148 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_val_string(STUB_ARGS)1148 EncodedJSValuePtr JITStubs::cti_op_get_by_val_string(STUB_ARGS) 1149 1149 { 1150 1150 BEGIN_STUB_FUNCTION(); … … 1177 1177 1178 1178 1179 JSValueEncodedAsPointer*JITStubs::cti_op_get_by_val_byte_array(STUB_ARGS)1179 EncodedJSValuePtr JITStubs::cti_op_get_by_val_byte_array(STUB_ARGS) 1180 1180 { 1181 1181 BEGIN_STUB_FUNCTION(); … … 1250 1250 } 1251 1251 1252 JSValueEncodedAsPointer*JITStubs::cti_op_sub(STUB_ARGS)1252 EncodedJSValuePtr JITStubs::cti_op_sub(STUB_ARGS) 1253 1253 { 1254 1254 BEGIN_STUB_FUNCTION(); … … 1386 1386 } 1387 1387 1388 JSValueEncodedAsPointer*JITStubs::cti_op_lesseq(STUB_ARGS)1388 EncodedJSValuePtr JITStubs::cti_op_lesseq(STUB_ARGS) 1389 1389 { 1390 1390 BEGIN_STUB_FUNCTION(); … … 1469 1469 } 1470 1470 1471 JSValueEncodedAsPointer*JITStubs::cti_op_negate(STUB_ARGS)1471 EncodedJSValuePtr JITStubs::cti_op_negate(STUB_ARGS) 1472 1472 { 1473 1473 BEGIN_STUB_FUNCTION(); … … 1485 1485 } 1486 1486 1487 JSValueEncodedAsPointer*JITStubs::cti_op_resolve_base(STUB_ARGS)1487 EncodedJSValuePtr JITStubs::cti_op_resolve_base(STUB_ARGS) 1488 1488 { 1489 1489 BEGIN_STUB_FUNCTION(); … … 1492 1492 } 1493 1493 1494 JSValueEncodedAsPointer*JITStubs::cti_op_resolve_skip(STUB_ARGS)1494 EncodedJSValuePtr JITStubs::cti_op_resolve_skip(STUB_ARGS) 1495 1495 { 1496 1496 BEGIN_STUB_FUNCTION(); … … 1525 1525 } 1526 1526 1527 JSValueEncodedAsPointer*JITStubs::cti_op_resolve_global(STUB_ARGS)1527 EncodedJSValuePtr JITStubs::cti_op_resolve_global(STUB_ARGS) 1528 1528 { 1529 1529 BEGIN_STUB_FUNCTION(); … … 1557 1557 } 1558 1558 1559 JSValueEncodedAsPointer*JITStubs::cti_op_div(STUB_ARGS)1559 EncodedJSValuePtr JITStubs::cti_op_div(STUB_ARGS) 1560 1560 { 1561 1561 BEGIN_STUB_FUNCTION(); … … 1575 1575 } 1576 1576 1577 JSValueEncodedAsPointer*JITStubs::cti_op_pre_dec(STUB_ARGS)1577 EncodedJSValuePtr JITStubs::cti_op_pre_dec(STUB_ARGS) 1578 1578 { 1579 1579 BEGIN_STUB_FUNCTION(); … … 1600 1600 } 1601 1601 1602 JSValueEncodedAsPointer*JITStubs::cti_op_not(STUB_ARGS)1602 EncodedJSValuePtr JITStubs::cti_op_not(STUB_ARGS) 1603 1603 { 1604 1604 BEGIN_STUB_FUNCTION(); … … 1640 1640 } 1641 1641 1642 JSValueEncodedAsPointer*JITStubs::cti_op_eq(STUB_ARGS)1642 EncodedJSValuePtr JITStubs::cti_op_eq(STUB_ARGS) 1643 1643 { 1644 1644 BEGIN_STUB_FUNCTION(); … … 1655 1655 } 1656 1656 1657 JSValueEncodedAsPointer*JITStubs::cti_op_lshift(STUB_ARGS)1657 EncodedJSValuePtr JITStubs::cti_op_lshift(STUB_ARGS) 1658 1658 { 1659 1659 BEGIN_STUB_FUNCTION(); … … 1675 1675 } 1676 1676 1677 JSValueEncodedAsPointer*JITStubs::cti_op_bitand(STUB_ARGS)1677 EncodedJSValuePtr JITStubs::cti_op_bitand(STUB_ARGS) 1678 1678 { 1679 1679 BEGIN_STUB_FUNCTION(); … … 1693 1693 } 1694 1694 1695 JSValueEncodedAsPointer*JITStubs::cti_op_rshift(STUB_ARGS)1695 EncodedJSValuePtr JITStubs::cti_op_rshift(STUB_ARGS) 1696 1696 { 1697 1697 BEGIN_STUB_FUNCTION(); … … 1713 1713 } 1714 1714 1715 JSValueEncodedAsPointer*JITStubs::cti_op_bitnot(STUB_ARGS)1715 EncodedJSValuePtr JITStubs::cti_op_bitnot(STUB_ARGS) 1716 1716 { 1717 1717 BEGIN_STUB_FUNCTION(); … … 1770 1770 } 1771 1771 1772 JSValueEncodedAsPointer*JITStubs::cti_op_mod(STUB_ARGS)1772 EncodedJSValuePtr JITStubs::cti_op_mod(STUB_ARGS) 1773 1773 { 1774 1774 BEGIN_STUB_FUNCTION(); … … 1784 1784 } 1785 1785 1786 JSValueEncodedAsPointer*JITStubs::cti_op_less(STUB_ARGS)1786 EncodedJSValuePtr JITStubs::cti_op_less(STUB_ARGS) 1787 1787 { 1788 1788 BEGIN_STUB_FUNCTION(); … … 1794 1794 } 1795 1795 1796 JSValueEncodedAsPointer*JITStubs::cti_op_neq(STUB_ARGS)1796 EncodedJSValuePtr JITStubs::cti_op_neq(STUB_ARGS) 1797 1797 { 1798 1798 BEGIN_STUB_FUNCTION(); … … 1823 1823 } 1824 1824 1825 JSValueEncodedAsPointer*JITStubs::cti_op_urshift(STUB_ARGS)1825 EncodedJSValuePtr JITStubs::cti_op_urshift(STUB_ARGS) 1826 1826 { 1827 1827 BEGIN_STUB_FUNCTION(); … … 1841 1841 } 1842 1842 1843 JSValueEncodedAsPointer*JITStubs::cti_op_bitxor(STUB_ARGS)1843 EncodedJSValuePtr JITStubs::cti_op_bitxor(STUB_ARGS) 1844 1844 { 1845 1845 BEGIN_STUB_FUNCTION(); … … 1862 1862 } 1863 1863 1864 JSValueEncodedAsPointer*JITStubs::cti_op_bitor(STUB_ARGS)1864 EncodedJSValuePtr JITStubs::cti_op_bitor(STUB_ARGS) 1865 1865 { 1866 1866 BEGIN_STUB_FUNCTION(); … … 1876 1876 } 1877 1877 1878 JSValueEncodedAsPointer*JITStubs::cti_op_call_eval(STUB_ARGS)1878 EncodedJSValuePtr JITStubs::cti_op_call_eval(STUB_ARGS) 1879 1879 { 1880 1880 BEGIN_STUB_FUNCTION(); … … 1907 1907 } 1908 1908 1909 JSValueEncodedAsPointer*JITStubs::cti_op_throw(STUB_ARGS)1909 EncodedJSValuePtr JITStubs::cti_op_throw(STUB_ARGS) 1910 1910 { 1911 1911 BEGIN_STUB_FUNCTION(); … … 1940 1940 } 1941 1941 1942 JSValueEncodedAsPointer*JITStubs::cti_op_next_pname(STUB_ARGS)1942 EncodedJSValuePtr JITStubs::cti_op_next_pname(STUB_ARGS) 1943 1943 { 1944 1944 BEGIN_STUB_FUNCTION(); … … 1968 1968 } 1969 1969 1970 JSValueEncodedAsPointer*JITStubs::cti_op_typeof(STUB_ARGS)1970 EncodedJSValuePtr JITStubs::cti_op_typeof(STUB_ARGS) 1971 1971 { 1972 1972 BEGIN_STUB_FUNCTION(); … … 1975 1975 } 1976 1976 1977 JSValueEncodedAsPointer*JITStubs::cti_op_is_undefined(STUB_ARGS)1977 EncodedJSValuePtr JITStubs::cti_op_is_undefined(STUB_ARGS) 1978 1978 { 1979 1979 BEGIN_STUB_FUNCTION(); … … 1983 1983 } 1984 1984 1985 JSValueEncodedAsPointer*JITStubs::cti_op_is_boolean(STUB_ARGS)1985 EncodedJSValuePtr JITStubs::cti_op_is_boolean(STUB_ARGS) 1986 1986 { 1987 1987 BEGIN_STUB_FUNCTION(); … … 1990 1990 } 1991 1991 1992 JSValueEncodedAsPointer*JITStubs::cti_op_is_number(STUB_ARGS)1992 EncodedJSValuePtr JITStubs::cti_op_is_number(STUB_ARGS) 1993 1993 { 1994 1994 BEGIN_STUB_FUNCTION(); … … 1997 1997 } 1998 1998 1999 JSValueEncodedAsPointer*JITStubs::cti_op_is_string(STUB_ARGS)1999 EncodedJSValuePtr JITStubs::cti_op_is_string(STUB_ARGS) 2000 2000 { 2001 2001 BEGIN_STUB_FUNCTION(); … … 2004 2004 } 2005 2005 2006 JSValueEncodedAsPointer*JITStubs::cti_op_is_object(STUB_ARGS)2006 EncodedJSValuePtr JITStubs::cti_op_is_object(STUB_ARGS) 2007 2007 { 2008 2008 BEGIN_STUB_FUNCTION(); … … 2011 2011 } 2012 2012 2013 JSValueEncodedAsPointer*JITStubs::cti_op_is_function(STUB_ARGS)2013 EncodedJSValuePtr JITStubs::cti_op_is_function(STUB_ARGS) 2014 2014 { 2015 2015 BEGIN_STUB_FUNCTION(); … … 2018 2018 } 2019 2019 2020 JSValueEncodedAsPointer*JITStubs::cti_op_stricteq(STUB_ARGS)2020 EncodedJSValuePtr JITStubs::cti_op_stricteq(STUB_ARGS) 2021 2021 { 2022 2022 BEGIN_STUB_FUNCTION(); … … 2028 2028 } 2029 2029 2030 JSValueEncodedAsPointer*JITStubs::cti_op_nstricteq(STUB_ARGS)2030 EncodedJSValuePtr JITStubs::cti_op_nstricteq(STUB_ARGS) 2031 2031 { 2032 2032 BEGIN_STUB_FUNCTION(); … … 2038 2038 } 2039 2039 2040 JSValueEncodedAsPointer*JITStubs::cti_op_to_jsnumber(STUB_ARGS)2040 EncodedJSValuePtr JITStubs::cti_op_to_jsnumber(STUB_ARGS) 2041 2041 { 2042 2042 BEGIN_STUB_FUNCTION(); … … 2050 2050 } 2051 2051 2052 JSValueEncodedAsPointer*JITStubs::cti_op_in(STUB_ARGS)2052 EncodedJSValuePtr JITStubs::cti_op_in(STUB_ARGS) 2053 2053 { 2054 2054 BEGIN_STUB_FUNCTION(); … … 2171 2171 } 2172 2172 2173 JSValueEncodedAsPointer*JITStubs::cti_op_del_by_val(STUB_ARGS)2173 EncodedJSValuePtr JITStubs::cti_op_del_by_val(STUB_ARGS) 2174 2174 { 2175 2175 BEGIN_STUB_FUNCTION(); … … 2247 2247 } 2248 2248 2249 JSValueEncodedAsPointer*JITStubs::cti_vm_throw(STUB_ARGS)2249 EncodedJSValuePtr JITStubs::cti_vm_throw(STUB_ARGS) 2250 2250 { 2251 2251 BEGIN_STUB_FUNCTION(); -
trunk/JavaScriptCore/jit/JITStubs.h
r42976 r43103 106 106 static JSObject* JIT_STUB cti_op_push_scope(STUB_ARGS); 107 107 static JSPropertyNameIterator* JIT_STUB cti_op_get_pnames(STUB_ARGS); 108 static JSValueEncodedAsPointer*JIT_STUB cti_op_add(STUB_ARGS);109 static JSValueEncodedAsPointer*JIT_STUB cti_op_bitand(STUB_ARGS);110 static JSValueEncodedAsPointer*JIT_STUB cti_op_bitnot(STUB_ARGS);111 static JSValueEncodedAsPointer*JIT_STUB cti_op_bitor(STUB_ARGS);112 static JSValueEncodedAsPointer*JIT_STUB cti_op_bitxor(STUB_ARGS);113 static JSValueEncodedAsPointer*JIT_STUB cti_op_call_NotJSFunction(STUB_ARGS);114 static JSValueEncodedAsPointer*JIT_STUB cti_op_call_eval(STUB_ARGS);115 static JSValueEncodedAsPointer*JIT_STUB cti_op_construct_NotJSConstruct(STUB_ARGS);116 static JSValueEncodedAsPointer*JIT_STUB cti_op_del_by_id(STUB_ARGS);117 static JSValueEncodedAsPointer*JIT_STUB cti_op_del_by_val(STUB_ARGS);118 static JSValueEncodedAsPointer*JIT_STUB cti_op_div(STUB_ARGS);119 static JSValueEncodedAsPointer*JIT_STUB cti_op_eq(STUB_ARGS);120 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id(STUB_ARGS);121 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_array_fail(STUB_ARGS);122 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_generic(STUB_ARGS);123 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_proto_fail(STUB_ARGS);124 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_proto_list(STUB_ARGS);125 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_proto_list_full(STUB_ARGS);126 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_second(STUB_ARGS);127 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_self_fail(STUB_ARGS);128 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_id_string_fail(STUB_ARGS);129 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_val(STUB_ARGS);130 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_val_byte_array(STUB_ARGS);131 static JSValueEncodedAsPointer*JIT_STUB cti_op_get_by_val_string(STUB_ARGS);132 static JSValueEncodedAsPointer*JIT_STUB cti_op_in(STUB_ARGS);133 static JSValueEncodedAsPointer*JIT_STUB cti_op_instanceof(STUB_ARGS);134 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_boolean(STUB_ARGS);135 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_function(STUB_ARGS);136 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_number(STUB_ARGS);137 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_object(STUB_ARGS);138 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_string(STUB_ARGS);139 static JSValueEncodedAsPointer*JIT_STUB cti_op_is_undefined(STUB_ARGS);140 static JSValueEncodedAsPointer*JIT_STUB cti_op_less(STUB_ARGS);141 static JSValueEncodedAsPointer*JIT_STUB cti_op_lesseq(STUB_ARGS);142 static JSValueEncodedAsPointer*JIT_STUB cti_op_lshift(STUB_ARGS);143 static JSValueEncodedAsPointer*JIT_STUB cti_op_mod(STUB_ARGS);144 static JSValueEncodedAsPointer*JIT_STUB cti_op_mul(STUB_ARGS);145 static JSValueEncodedAsPointer*JIT_STUB cti_op_negate(STUB_ARGS);146 static JSValueEncodedAsPointer*JIT_STUB cti_op_neq(STUB_ARGS);147 static JSValueEncodedAsPointer*JIT_STUB cti_op_next_pname(STUB_ARGS);148 static JSValueEncodedAsPointer*JIT_STUB cti_op_not(STUB_ARGS);149 static JSValueEncodedAsPointer*JIT_STUB cti_op_nstricteq(STUB_ARGS);150 static JSValueEncodedAsPointer*JIT_STUB cti_op_pre_dec(STUB_ARGS);151 static JSValueEncodedAsPointer*JIT_STUB cti_op_pre_inc(STUB_ARGS);152 static JSValueEncodedAsPointer*JIT_STUB cti_op_resolve(STUB_ARGS);153 static JSValueEncodedAsPointer*JIT_STUB cti_op_resolve_base(STUB_ARGS);154 static JSValueEncodedAsPointer*JIT_STUB cti_op_resolve_global(STUB_ARGS);155 static JSValueEncodedAsPointer*JIT_STUB cti_op_resolve_skip(STUB_ARGS);156 static JSValueEncodedAsPointer*JIT_STUB cti_op_rshift(STUB_ARGS);157 static JSValueEncodedAsPointer*JIT_STUB cti_op_stricteq(STUB_ARGS);158 static JSValueEncodedAsPointer*JIT_STUB cti_op_sub(STUB_ARGS);159 static JSValueEncodedAsPointer*JIT_STUB cti_op_throw(STUB_ARGS);160 static JSValueEncodedAsPointer*JIT_STUB cti_op_to_jsnumber(STUB_ARGS);161 static JSValueEncodedAsPointer*JIT_STUB cti_op_typeof(STUB_ARGS);162 static JSValueEncodedAsPointer*JIT_STUB cti_op_urshift(STUB_ARGS);163 static JSValueEncodedAsPointer*JIT_STUB cti_vm_throw(STUB_ARGS);108 static EncodedJSValuePtr JIT_STUB cti_op_add(STUB_ARGS); 109 static EncodedJSValuePtr JIT_STUB cti_op_bitand(STUB_ARGS); 110 static EncodedJSValuePtr JIT_STUB cti_op_bitnot(STUB_ARGS); 111 static EncodedJSValuePtr JIT_STUB cti_op_bitor(STUB_ARGS); 112 static EncodedJSValuePtr JIT_STUB cti_op_bitxor(STUB_ARGS); 113 static EncodedJSValuePtr JIT_STUB cti_op_call_NotJSFunction(STUB_ARGS); 114 static EncodedJSValuePtr JIT_STUB cti_op_call_eval(STUB_ARGS); 115 static EncodedJSValuePtr JIT_STUB cti_op_construct_NotJSConstruct(STUB_ARGS); 116 static EncodedJSValuePtr JIT_STUB cti_op_del_by_id(STUB_ARGS); 117 static EncodedJSValuePtr JIT_STUB cti_op_del_by_val(STUB_ARGS); 118 static EncodedJSValuePtr JIT_STUB cti_op_div(STUB_ARGS); 119 static EncodedJSValuePtr JIT_STUB cti_op_eq(STUB_ARGS); 120 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id(STUB_ARGS); 121 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_array_fail(STUB_ARGS); 122 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_generic(STUB_ARGS); 123 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_proto_fail(STUB_ARGS); 124 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_proto_list(STUB_ARGS); 125 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_proto_list_full(STUB_ARGS); 126 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_second(STUB_ARGS); 127 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_self_fail(STUB_ARGS); 128 static EncodedJSValuePtr JIT_STUB cti_op_get_by_id_string_fail(STUB_ARGS); 129 static EncodedJSValuePtr JIT_STUB cti_op_get_by_val(STUB_ARGS); 130 static EncodedJSValuePtr JIT_STUB cti_op_get_by_val_byte_array(STUB_ARGS); 131 static EncodedJSValuePtr JIT_STUB cti_op_get_by_val_string(STUB_ARGS); 132 static EncodedJSValuePtr JIT_STUB cti_op_in(STUB_ARGS); 133 static EncodedJSValuePtr JIT_STUB cti_op_instanceof(STUB_ARGS); 134 static EncodedJSValuePtr JIT_STUB cti_op_is_boolean(STUB_ARGS); 135 static EncodedJSValuePtr JIT_STUB cti_op_is_function(STUB_ARGS); 136 static EncodedJSValuePtr JIT_STUB cti_op_is_number(STUB_ARGS); 137 static EncodedJSValuePtr JIT_STUB cti_op_is_object(STUB_ARGS); 138 static EncodedJSValuePtr JIT_STUB cti_op_is_string(STUB_ARGS); 139 static EncodedJSValuePtr JIT_STUB cti_op_is_undefined(STUB_ARGS); 140 static EncodedJSValuePtr JIT_STUB cti_op_less(STUB_ARGS); 141 static EncodedJSValuePtr JIT_STUB cti_op_lesseq(STUB_ARGS); 142 static EncodedJSValuePtr JIT_STUB cti_op_lshift(STUB_ARGS); 143 static EncodedJSValuePtr JIT_STUB cti_op_mod(STUB_ARGS); 144 static EncodedJSValuePtr JIT_STUB cti_op_mul(STUB_ARGS); 145 static EncodedJSValuePtr JIT_STUB cti_op_negate(STUB_ARGS); 146 static EncodedJSValuePtr JIT_STUB cti_op_neq(STUB_ARGS); 147 static EncodedJSValuePtr JIT_STUB cti_op_next_pname(STUB_ARGS); 148 static EncodedJSValuePtr JIT_STUB cti_op_not(STUB_ARGS); 149 static EncodedJSValuePtr JIT_STUB cti_op_nstricteq(STUB_ARGS); 150 static EncodedJSValuePtr JIT_STUB cti_op_pre_dec(STUB_ARGS); 151 static EncodedJSValuePtr JIT_STUB cti_op_pre_inc(STUB_ARGS); 152 static EncodedJSValuePtr JIT_STUB cti_op_resolve(STUB_ARGS); 153 static EncodedJSValuePtr JIT_STUB cti_op_resolve_base(STUB_ARGS); 154 static EncodedJSValuePtr JIT_STUB cti_op_resolve_global(STUB_ARGS); 155 static EncodedJSValuePtr JIT_STUB cti_op_resolve_skip(STUB_ARGS); 156 static EncodedJSValuePtr JIT_STUB cti_op_rshift(STUB_ARGS); 157 static EncodedJSValuePtr JIT_STUB cti_op_stricteq(STUB_ARGS); 158 static EncodedJSValuePtr JIT_STUB cti_op_sub(STUB_ARGS); 159 static EncodedJSValuePtr JIT_STUB cti_op_throw(STUB_ARGS); 160 static EncodedJSValuePtr JIT_STUB cti_op_to_jsnumber(STUB_ARGS); 161 static EncodedJSValuePtr JIT_STUB cti_op_typeof(STUB_ARGS); 162 static EncodedJSValuePtr JIT_STUB cti_op_urshift(STUB_ARGS); 163 static EncodedJSValuePtr JIT_STUB cti_vm_throw(STUB_ARGS); 164 164 static VoidPtrPair JIT_STUB cti_op_call_arityCheck(STUB_ARGS); 165 165 static VoidPtrPair JIT_STUB cti_op_post_dec(STUB_ARGS); -
trunk/JavaScriptCore/runtime/JSValue.h
r40046 r43103 34 34 class Identifier; 35 35 class JSCell; 36 class JSImmediate; 36 37 class JSObject; 37 38 class JSString; … … 45 46 enum PreferredPrimitiveType { NoPreference, PreferNumber, PreferString }; 46 47 47 class JSImmediate; 48 class JSValueEncodedAsPointer; 48 typedef void* EncodedJSValuePtr; 49 49 50 50 class JSValuePtr { … … 92 92 } 93 93 94 static JSValueEncodedAsPointer*encode(JSValuePtr value)95 { 96 return reinterpret_cast< JSValueEncodedAsPointer*>(value.m_ptr);97 } 98 99 static JSValuePtr decode( JSValueEncodedAsPointer*ptr)94 static EncodedJSValuePtr encode(JSValuePtr value) 95 { 96 return reinterpret_cast<EncodedJSValuePtr>(value.m_ptr); 97 } 98 99 static JSValuePtr decode(EncodedJSValuePtr ptr) 100 100 { 101 101 return JSValuePtr(reinterpret_cast<JSCell*>(ptr));
Note:
See TracChangeset
for help on using the changeset viewer.