Changeset 44344 in webkit for trunk/JavaScriptCore/jit/JITStubs.cpp
- Timestamp:
- Jun 1, 2009, 10:36:18 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/jit/JITStubs.cpp
r44171 r44344 102 102 SYMBOL_STRING(ctiVMThrowTrampoline) ":" "\n" 103 103 #if USE(JIT_STUB_ARGUMENT_VA_LIST) 104 "call " SYMBOL_STRING( _ZN3JSC8JITStubs12cti_vm_throwEPvz) "\n"104 "call " SYMBOL_STRING(cti_vm_throw) "\n" 105 105 #else 106 106 #if USE(JIT_STUB_ARGUMENT_REGISTER) … … 109 109 "movl %esp, 0(%esp)" "\n" 110 110 #endif 111 "call " SYMBOL_STRING( _ZN3JSC8JITStubs12cti_vm_throwEPPv) "\n"111 "call " SYMBOL_STRING(cti_vm_throw) "\n" 112 112 #endif 113 113 "addl $0x1c, %esp" "\n" … … 164 164 #if USE(JIT_STUB_ARGUMENT_REGISTER) 165 165 "movq %rsp, %rdi" "\n" 166 "call " SYMBOL_STRING( _ZN3JSC8JITStubs12cti_vm_throwEPPv) "\n"166 "call " SYMBOL_STRING(cti_vm_throw) "\n" 167 167 #else // JIT_STUB_ARGUMENT_VA_LIST or JIT_STUB_ARGUMENT_STACK 168 168 #error "JIT_STUB_ARGUMENT configuration not supported." … … 218 218 #error "JIT_STUB_ARGUMENT configuration not supported." 219 219 #endif 220 call JSC::JITStubs::cti_vm_throw;220 call cti_vm_throw; 221 221 add esp, 0x1c; 222 222 pop ebx; … … 238 238 #endif 239 239 240 JIT Stubs::JITStubs(JSGlobalData* globalData)240 JITThunks::JITThunks(JSGlobalData* globalData) 241 241 : m_ctiArrayLengthTrampoline(0) 242 242 , m_ctiStringLengthTrampoline(0) … … 251 251 #if ENABLE(JIT_OPTIMIZE_PROPERTY_ACCESS) 252 252 253 NEVER_INLINE void JIT Stubs::tryCachePutByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValue baseValue, const PutPropertySlot& slot)253 NEVER_INLINE void JITThunks::tryCachePutByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValue baseValue, const PutPropertySlot& slot) 254 254 { 255 255 // The interpreter checks for recursion here; I do not believe this can occur in CTI. … … 295 295 } 296 296 297 NEVER_INLINE void JIT Stubs::tryCacheGetByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValue baseValue, const Identifier& propertyName, const PropertySlot& slot)297 NEVER_INLINE void JITThunks::tryCacheGetByID(CallFrame* callFrame, CodeBlock* codeBlock, void* returnAddress, JSValue baseValue, const Identifier& propertyName, const PropertySlot& slot) 298 298 { 299 299 // FIXME: Write a test that proves we need to check for recursion here just … … 469 469 } while (0) 470 470 471 472 JSObject* JITStubs::cti_op_convert_this(STUB_ARGS_DECLARATION) 471 namespace JITStubs { 472 473 #define DEFINE_STUB_FUNCTION(rtype, op) rtype cti_##op(STUB_ARGS_DECLARATION) 474 475 DEFINE_STUB_FUNCTION(JSObject*, op_convert_this) 473 476 { 474 477 STUB_INIT_STACK_FRAME(stackFrame); … … 482 485 } 483 486 484 void JITStubs::cti_op_end(STUB_ARGS_DECLARATION)487 DEFINE_STUB_FUNCTION(void, op_end) 485 488 { 486 489 STUB_INIT_STACK_FRAME(stackFrame); … … 491 494 } 492 495 493 EncodedJSValue JITStubs::cti_op_add(STUB_ARGS_DECLARATION)496 DEFINE_STUB_FUNCTION(EncodedJSValue, op_add) 494 497 { 495 498 STUB_INIT_STACK_FRAME(stackFrame); … … 536 539 } 537 540 538 EncodedJSValue JITStubs::cti_op_pre_inc(STUB_ARGS_DECLARATION)541 DEFINE_STUB_FUNCTION(EncodedJSValue, op_pre_inc) 539 542 { 540 543 STUB_INIT_STACK_FRAME(stackFrame); … … 548 551 } 549 552 550 int JITStubs::cti_timeout_check(STUB_ARGS_DECLARATION)553 DEFINE_STUB_FUNCTION(int, timeout_check) 551 554 { 552 555 STUB_INIT_STACK_FRAME(stackFrame); … … 563 566 } 564 567 565 void JITStubs::cti_register_file_check(STUB_ARGS_DECLARATION)566 { 567 STUB_INIT_STACK_FRAME(stackFrame); 568 569 if (LIKELY(stackFrame.registerFile->grow( stackFrame.callFrame + stackFrame.callFrame->codeBlock()->m_numCalleeRegisters)))568 DEFINE_STUB_FUNCTION(void, register_file_check) 569 { 570 STUB_INIT_STACK_FRAME(stackFrame); 571 572 if (LIKELY(stackFrame.registerFile->grow(&stackFrame.callFrame->registers()[stackFrame.callFrame->codeBlock()->m_numCalleeRegisters]))) 570 573 return; 571 574 … … 577 580 } 578 581 579 int JITStubs::cti_op_loop_if_less(STUB_ARGS_DECLARATION)582 DEFINE_STUB_FUNCTION(int, op_loop_if_less) 580 583 { 581 584 STUB_INIT_STACK_FRAME(stackFrame); … … 590 593 } 591 594 592 int JITStubs::cti_op_loop_if_lesseq(STUB_ARGS_DECLARATION)595 DEFINE_STUB_FUNCTION(int, op_loop_if_lesseq) 593 596 { 594 597 STUB_INIT_STACK_FRAME(stackFrame); … … 603 606 } 604 607 605 JSObject* JITStubs::cti_op_new_object(STUB_ARGS_DECLARATION)608 DEFINE_STUB_FUNCTION(JSObject*, op_new_object) 606 609 { 607 610 STUB_INIT_STACK_FRAME(stackFrame); … … 610 613 } 611 614 612 void JITStubs::cti_op_put_by_id_generic(STUB_ARGS_DECLARATION)615 DEFINE_STUB_FUNCTION(void, op_put_by_id_generic) 613 616 { 614 617 STUB_INIT_STACK_FRAME(stackFrame); … … 619 622 } 620 623 621 EncodedJSValue JITStubs::cti_op_get_by_id_generic(STUB_ARGS_DECLARATION)624 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_generic) 622 625 { 623 626 STUB_INIT_STACK_FRAME(stackFrame); … … 636 639 #if ENABLE(JIT_OPTIMIZE_PROPERTY_ACCESS) 637 640 638 void JITStubs::cti_op_put_by_id(STUB_ARGS_DECLARATION)641 DEFINE_STUB_FUNCTION(void, op_put_by_id) 639 642 { 640 643 STUB_INIT_STACK_FRAME(stackFrame); … … 651 654 } 652 655 653 void JITStubs::cti_op_put_by_id_second(STUB_ARGS_DECLARATION)656 DEFINE_STUB_FUNCTION(void, op_put_by_id_second) 654 657 { 655 658 STUB_INIT_STACK_FRAME(stackFrame); … … 657 660 PutPropertySlot slot; 658 661 stackFrame.args[0].jsValue().put(stackFrame.callFrame, stackFrame.args[1].identifier(), stackFrame.args[2].jsValue(), slot); 659 tryCachePutByID(stackFrame.callFrame, stackFrame.callFrame->codeBlock(), STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot);660 CHECK_FOR_EXCEPTION_AT_END(); 661 } 662 663 void JITStubs::cti_op_put_by_id_fail(STUB_ARGS_DECLARATION)662 JITThunks::tryCachePutByID(stackFrame.callFrame, stackFrame.callFrame->codeBlock(), STUB_RETURN_ADDRESS, stackFrame.args[0].jsValue(), slot); 663 CHECK_FOR_EXCEPTION_AT_END(); 664 } 665 666 DEFINE_STUB_FUNCTION(void, op_put_by_id_fail) 664 667 { 665 668 STUB_INIT_STACK_FRAME(stackFrame); … … 674 677 } 675 678 676 EncodedJSValue JITStubs::cti_op_get_by_id(STUB_ARGS_DECLARATION)679 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id) 677 680 { 678 681 STUB_INIT_STACK_FRAME(stackFrame); … … 691 694 } 692 695 693 EncodedJSValue JITStubs::cti_op_get_by_id_method_check(STUB_ARGS_DECLARATION)696 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_method_check) 694 697 { 695 698 STUB_INIT_STACK_FRAME(stackFrame); … … 708 711 } 709 712 710 EncodedJSValue JITStubs::cti_op_get_by_id_method_check_second(STUB_ARGS_DECLARATION)713 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_method_check_second) 711 714 { 712 715 STUB_INIT_STACK_FRAME(stackFrame); … … 773 776 } 774 777 775 EncodedJSValue JITStubs::cti_op_get_by_id_second(STUB_ARGS_DECLARATION)778 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_second) 776 779 { 777 780 STUB_INIT_STACK_FRAME(stackFrame); … … 784 787 JSValue result = baseValue.get(callFrame, ident, slot); 785 788 786 tryCacheGetByID(callFrame, callFrame->codeBlock(), STUB_RETURN_ADDRESS, baseValue, ident, slot);787 788 CHECK_FOR_EXCEPTION_AT_END(); 789 return JSValue::encode(result); 790 } 791 792 EncodedJSValue JITStubs::cti_op_get_by_id_self_fail(STUB_ARGS_DECLARATION)789 JITThunks::tryCacheGetByID(callFrame, callFrame->codeBlock(), STUB_RETURN_ADDRESS, baseValue, ident, slot); 790 791 CHECK_FOR_EXCEPTION_AT_END(); 792 return JSValue::encode(result); 793 } 794 795 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_self_fail) 793 796 { 794 797 STUB_INIT_STACK_FRAME(stackFrame); … … 865 868 } 866 869 867 EncodedJSValue JITStubs::cti_op_get_by_id_proto_list(STUB_ARGS_DECLARATION)870 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_proto_list) 868 871 { 869 872 STUB_INIT_STACK_FRAME(stackFrame); … … 917 920 } 918 921 919 EncodedJSValue JITStubs::cti_op_get_by_id_proto_list_full(STUB_ARGS_DECLARATION)922 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_proto_list_full) 920 923 { 921 924 STUB_INIT_STACK_FRAME(stackFrame); … … 929 932 } 930 933 931 EncodedJSValue JITStubs::cti_op_get_by_id_proto_fail(STUB_ARGS_DECLARATION)934 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_proto_fail) 932 935 { 933 936 STUB_INIT_STACK_FRAME(stackFrame); … … 941 944 } 942 945 943 EncodedJSValue JITStubs::cti_op_get_by_id_array_fail(STUB_ARGS_DECLARATION)946 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_array_fail) 944 947 { 945 948 STUB_INIT_STACK_FRAME(stackFrame); … … 953 956 } 954 957 955 EncodedJSValue JITStubs::cti_op_get_by_id_string_fail(STUB_ARGS_DECLARATION)958 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_id_string_fail) 956 959 { 957 960 STUB_INIT_STACK_FRAME(stackFrame); … … 967 970 #endif 968 971 969 EncodedJSValue JITStubs::cti_op_instanceof(STUB_ARGS_DECLARATION)972 DEFINE_STUB_FUNCTION(EncodedJSValue, op_instanceof) 970 973 { 971 974 STUB_INIT_STACK_FRAME(stackFrame); … … 1010 1013 } 1011 1014 1012 EncodedJSValue JITStubs::cti_op_del_by_id(STUB_ARGS_DECLARATION)1015 DEFINE_STUB_FUNCTION(EncodedJSValue, op_del_by_id) 1013 1016 { 1014 1017 STUB_INIT_STACK_FRAME(stackFrame); … … 1023 1026 } 1024 1027 1025 EncodedJSValue JITStubs::cti_op_mul(STUB_ARGS_DECLARATION)1028 DEFINE_STUB_FUNCTION(EncodedJSValue, op_mul) 1026 1029 { 1027 1030 STUB_INIT_STACK_FRAME(stackFrame); … … 1041 1044 } 1042 1045 1043 JSObject* JITStubs::cti_op_new_func(STUB_ARGS_DECLARATION)1046 DEFINE_STUB_FUNCTION(JSObject*, op_new_func) 1044 1047 { 1045 1048 STUB_INIT_STACK_FRAME(stackFrame); … … 1048 1051 } 1049 1052 1050 void* JITStubs::cti_op_call_JSFunction(STUB_ARGS_DECLARATION)1053 DEFINE_STUB_FUNCTION(void*, op_call_JSFunction) 1051 1054 { 1052 1055 STUB_INIT_STACK_FRAME(stackFrame); … … 1065 1068 } 1066 1069 1067 VoidPtrPair JITStubs::cti_op_call_arityCheck(STUB_ARGS_DECLARATION)1070 DEFINE_STUB_FUNCTION(VoidPtrPair, op_call_arityCheck) 1068 1071 { 1069 1072 STUB_INIT_STACK_FRAME(stackFrame); … … 1110 1113 } 1111 1114 1112 void* JITStubs::cti_vm_dontLazyLinkCall(STUB_ARGS_DECLARATION)1115 DEFINE_STUB_FUNCTION(void*, vm_dontLazyLinkCall) 1113 1116 { 1114 1117 STUB_INIT_STACK_FRAME(stackFrame); … … 1122 1125 } 1123 1126 1124 void* JITStubs::cti_vm_lazyLinkCall(STUB_ARGS_DECLARATION)1127 DEFINE_STUB_FUNCTION(void*, vm_lazyLinkCall) 1125 1128 { 1126 1129 STUB_INIT_STACK_FRAME(stackFrame); … … 1139 1142 } 1140 1143 1141 JSObject* JITStubs::cti_op_push_activation(STUB_ARGS_DECLARATION)1144 DEFINE_STUB_FUNCTION(JSObject*, op_push_activation) 1142 1145 { 1143 1146 STUB_INIT_STACK_FRAME(stackFrame); … … 1148 1151 } 1149 1152 1150 EncodedJSValue JITStubs::cti_op_call_NotJSFunction(STUB_ARGS_DECLARATION)1153 DEFINE_STUB_FUNCTION(EncodedJSValue, op_call_NotJSFunction) 1151 1154 { 1152 1155 STUB_INIT_STACK_FRAME(stackFrame); … … 1197 1200 } 1198 1201 1199 void JITStubs::cti_op_create_arguments(STUB_ARGS_DECLARATION)1202 DEFINE_STUB_FUNCTION(void, op_create_arguments) 1200 1203 { 1201 1204 STUB_INIT_STACK_FRAME(stackFrame); … … 1206 1209 } 1207 1210 1208 void JITStubs::cti_op_create_arguments_no_params(STUB_ARGS_DECLARATION)1211 DEFINE_STUB_FUNCTION(void, op_create_arguments_no_params) 1209 1212 { 1210 1213 STUB_INIT_STACK_FRAME(stackFrame); … … 1215 1218 } 1216 1219 1217 void JITStubs::cti_op_tear_off_activation(STUB_ARGS_DECLARATION)1220 DEFINE_STUB_FUNCTION(void, op_tear_off_activation) 1218 1221 { 1219 1222 STUB_INIT_STACK_FRAME(stackFrame); … … 1223 1226 } 1224 1227 1225 void JITStubs::cti_op_tear_off_arguments(STUB_ARGS_DECLARATION)1228 DEFINE_STUB_FUNCTION(void, op_tear_off_arguments) 1226 1229 { 1227 1230 STUB_INIT_STACK_FRAME(stackFrame); … … 1232 1235 } 1233 1236 1234 void JITStubs::cti_op_profile_will_call(STUB_ARGS_DECLARATION)1237 DEFINE_STUB_FUNCTION(void, op_profile_will_call) 1235 1238 { 1236 1239 STUB_INIT_STACK_FRAME(stackFrame); … … 1240 1243 } 1241 1244 1242 void JITStubs::cti_op_profile_did_call(STUB_ARGS_DECLARATION)1245 DEFINE_STUB_FUNCTION(void, op_profile_did_call) 1243 1246 { 1244 1247 STUB_INIT_STACK_FRAME(stackFrame); … … 1248 1251 } 1249 1252 1250 void JITStubs::cti_op_ret_scopeChain(STUB_ARGS_DECLARATION)1253 DEFINE_STUB_FUNCTION(void, op_ret_scopeChain) 1251 1254 { 1252 1255 STUB_INIT_STACK_FRAME(stackFrame); … … 1256 1259 } 1257 1260 1258 JSObject* JITStubs::cti_op_new_array(STUB_ARGS_DECLARATION)1261 DEFINE_STUB_FUNCTION(JSObject*, op_new_array) 1259 1262 { 1260 1263 STUB_INIT_STACK_FRAME(stackFrame); … … 1264 1267 } 1265 1268 1266 EncodedJSValue JITStubs::cti_op_resolve(STUB_ARGS_DECLARATION)1269 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve) 1267 1270 { 1268 1271 STUB_INIT_STACK_FRAME(stackFrame); … … 1292 1295 } 1293 1296 1294 JSObject* JITStubs::cti_op_construct_JSConstruct(STUB_ARGS_DECLARATION)1297 DEFINE_STUB_FUNCTION(JSObject*, op_construct_JSConstruct) 1295 1298 { 1296 1299 STUB_INIT_STACK_FRAME(stackFrame); … … 1318 1321 } 1319 1322 1320 EncodedJSValue JITStubs::cti_op_construct_NotJSConstruct(STUB_ARGS_DECLARATION)1323 DEFINE_STUB_FUNCTION(EncodedJSValue, op_construct_NotJSConstruct) 1321 1324 { 1322 1325 STUB_INIT_STACK_FRAME(stackFrame); … … 1352 1355 } 1353 1356 1354 EncodedJSValue JITStubs::cti_op_get_by_val(STUB_ARGS_DECLARATION)1357 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_val) 1355 1358 { 1356 1359 STUB_INIT_STACK_FRAME(stackFrame); … … 1391 1394 } 1392 1395 1393 EncodedJSValue JITStubs::cti_op_get_by_val_string(STUB_ARGS_DECLARATION)1396 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_val_string) 1394 1397 { 1395 1398 STUB_INIT_STACK_FRAME(stackFrame); … … 1422 1425 1423 1426 1424 EncodedJSValue JITStubs::cti_op_get_by_val_byte_array(STUB_ARGS_DECLARATION)1427 DEFINE_STUB_FUNCTION(EncodedJSValue, op_get_by_val_byte_array) 1425 1428 { 1426 1429 STUB_INIT_STACK_FRAME(stackFrame); … … 1453 1456 } 1454 1457 1455 EncodedJSValue JITStubs::cti_op_resolve_func(STUB_ARGS_DECLARATION)1458 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve_func) 1456 1459 { 1457 1460 STUB_INIT_STACK_FRAME(stackFrame); … … 1497 1500 } 1498 1501 1499 EncodedJSValue JITStubs::cti_op_sub(STUB_ARGS_DECLARATION)1502 DEFINE_STUB_FUNCTION(EncodedJSValue, op_sub) 1500 1503 { 1501 1504 STUB_INIT_STACK_FRAME(stackFrame); … … 1515 1518 } 1516 1519 1517 void JITStubs::cti_op_put_by_val(STUB_ARGS_DECLARATION)1520 DEFINE_STUB_FUNCTION(void, op_put_by_val) 1518 1521 { 1519 1522 STUB_INIT_STACK_FRAME(stackFrame); … … 1563 1566 } 1564 1567 1565 void JITStubs::cti_op_put_by_val_array(STUB_ARGS_DECLARATION)1568 DEFINE_STUB_FUNCTION(void, op_put_by_val_array) 1566 1569 { 1567 1570 STUB_INIT_STACK_FRAME(stackFrame); … … 1590 1593 } 1591 1594 1592 void JITStubs::cti_op_put_by_val_byte_array(STUB_ARGS_DECLARATION)1595 DEFINE_STUB_FUNCTION(void, op_put_by_val_byte_array) 1593 1596 { 1594 1597 STUB_INIT_STACK_FRAME(stackFrame); … … 1633 1636 } 1634 1637 1635 EncodedJSValue JITStubs::cti_op_lesseq(STUB_ARGS_DECLARATION)1638 DEFINE_STUB_FUNCTION(EncodedJSValue, op_lesseq) 1636 1639 { 1637 1640 STUB_INIT_STACK_FRAME(stackFrame); … … 1643 1646 } 1644 1647 1645 int JITStubs::cti_op_loop_if_true(STUB_ARGS_DECLARATION)1648 DEFINE_STUB_FUNCTION(int, op_loop_if_true) 1646 1649 { 1647 1650 STUB_INIT_STACK_FRAME(stackFrame); … … 1656 1659 } 1657 1660 1658 int JITStubs::cti_op_load_varargs(STUB_ARGS_DECLARATION)1661 DEFINE_STUB_FUNCTION(int, op_load_varargs) 1659 1662 { 1660 1663 STUB_INIT_STACK_FRAME(stackFrame); … … 1662 1665 RegisterFile* registerFile = stackFrame.registerFile; 1663 1666 int argsOffset = stackFrame.args[0].int32(); 1664 JSValue arguments = callFrame [argsOffset].jsValue();1667 JSValue arguments = callFrame->registers()[argsOffset].jsValue(); 1665 1668 uint32_t argCount = 0; 1666 1669 if (!arguments) { 1667 int providedParams = callFrame [RegisterFile::ArgumentCount].u.i- 1;1670 int providedParams = callFrame->registers()[RegisterFile::ArgumentCount].i() - 1; 1668 1671 argCount = providedParams; 1669 1672 int32_t sizeDelta = argsOffset + argCount + RegisterFile::CallFrameHeaderSize; … … 1673 1676 VM_THROW_EXCEPTION(); 1674 1677 } 1675 int32_t expectedParams = asFunction(callFrame [RegisterFile::Callee].jsValue())->body()->parameterCount();1678 int32_t expectedParams = asFunction(callFrame->registers()[RegisterFile::Callee].jsValue())->body()->parameterCount(); 1676 1679 int32_t inplaceArgs = min(providedParams, expectedParams); 1677 1680 … … 1744 1747 } 1745 1748 1746 EncodedJSValue JITStubs::cti_op_negate(STUB_ARGS_DECLARATION)1749 DEFINE_STUB_FUNCTION(EncodedJSValue, op_negate) 1747 1750 { 1748 1751 STUB_INIT_STACK_FRAME(stackFrame); … … 1760 1763 } 1761 1764 1762 EncodedJSValue JITStubs::cti_op_resolve_base(STUB_ARGS_DECLARATION)1765 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve_base) 1763 1766 { 1764 1767 STUB_INIT_STACK_FRAME(stackFrame); … … 1767 1770 } 1768 1771 1769 EncodedJSValue JITStubs::cti_op_resolve_skip(STUB_ARGS_DECLARATION)1772 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve_skip) 1770 1773 { 1771 1774 STUB_INIT_STACK_FRAME(stackFrame); … … 1800 1803 } 1801 1804 1802 EncodedJSValue JITStubs::cti_op_resolve_global(STUB_ARGS_DECLARATION)1805 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve_global) 1803 1806 { 1804 1807 STUB_INIT_STACK_FRAME(stackFrame); … … 1832 1835 } 1833 1836 1834 EncodedJSValue JITStubs::cti_op_div(STUB_ARGS_DECLARATION)1837 DEFINE_STUB_FUNCTION(EncodedJSValue, op_div) 1835 1838 { 1836 1839 STUB_INIT_STACK_FRAME(stackFrame); … … 1850 1853 } 1851 1854 1852 EncodedJSValue JITStubs::cti_op_pre_dec(STUB_ARGS_DECLARATION)1855 DEFINE_STUB_FUNCTION(EncodedJSValue, op_pre_dec) 1853 1856 { 1854 1857 STUB_INIT_STACK_FRAME(stackFrame); … … 1862 1865 } 1863 1866 1864 int JITStubs::cti_op_jless(STUB_ARGS_DECLARATION)1867 DEFINE_STUB_FUNCTION(int, op_jless) 1865 1868 { 1866 1869 STUB_INIT_STACK_FRAME(stackFrame); … … 1875 1878 } 1876 1879 1877 int JITStubs::cti_op_jlesseq(STUB_ARGS_DECLARATION)1880 DEFINE_STUB_FUNCTION(int, op_jlesseq) 1878 1881 { 1879 1882 STUB_INIT_STACK_FRAME(stackFrame); … … 1888 1891 } 1889 1892 1890 EncodedJSValue JITStubs::cti_op_not(STUB_ARGS_DECLARATION)1893 DEFINE_STUB_FUNCTION(EncodedJSValue, op_not) 1891 1894 { 1892 1895 STUB_INIT_STACK_FRAME(stackFrame); … … 1901 1904 } 1902 1905 1903 int JITStubs::cti_op_jtrue(STUB_ARGS_DECLARATION)1906 DEFINE_STUB_FUNCTION(int, op_jtrue) 1904 1907 { 1905 1908 STUB_INIT_STACK_FRAME(stackFrame); … … 1914 1917 } 1915 1918 1916 EncodedJSValue JITStubs::cti_op_post_inc(STUB_ARGS_DECLARATION)1919 DEFINE_STUB_FUNCTION(EncodedJSValue, op_post_inc) 1917 1920 { 1918 1921 STUB_INIT_STACK_FRAME(stackFrame); … … 1929 1932 } 1930 1933 1931 EncodedJSValue JITStubs::cti_op_eq(STUB_ARGS_DECLARATION)1934 DEFINE_STUB_FUNCTION(EncodedJSValue, op_eq) 1932 1935 { 1933 1936 STUB_INIT_STACK_FRAME(stackFrame); … … 1944 1947 } 1945 1948 1946 EncodedJSValue JITStubs::cti_op_lshift(STUB_ARGS_DECLARATION)1949 DEFINE_STUB_FUNCTION(EncodedJSValue, op_lshift) 1947 1950 { 1948 1951 STUB_INIT_STACK_FRAME(stackFrame); … … 1964 1967 } 1965 1968 1966 EncodedJSValue JITStubs::cti_op_bitand(STUB_ARGS_DECLARATION)1969 DEFINE_STUB_FUNCTION(EncodedJSValue, op_bitand) 1967 1970 { 1968 1971 STUB_INIT_STACK_FRAME(stackFrame); … … 1982 1985 } 1983 1986 1984 EncodedJSValue JITStubs::cti_op_rshift(STUB_ARGS_DECLARATION)1987 DEFINE_STUB_FUNCTION(EncodedJSValue, op_rshift) 1985 1988 { 1986 1989 STUB_INIT_STACK_FRAME(stackFrame); … … 2002 2005 } 2003 2006 2004 EncodedJSValue JITStubs::cti_op_bitnot(STUB_ARGS_DECLARATION)2007 DEFINE_STUB_FUNCTION(EncodedJSValue, op_bitnot) 2005 2008 { 2006 2009 STUB_INIT_STACK_FRAME(stackFrame); … … 2018 2021 } 2019 2022 2020 EncodedJSValue JITStubs::cti_op_resolve_with_base(STUB_ARGS_DECLARATION)2023 DEFINE_STUB_FUNCTION(EncodedJSValue, op_resolve_with_base) 2021 2024 { 2022 2025 STUB_INIT_STACK_FRAME(stackFrame); … … 2054 2057 } 2055 2058 2056 JSObject* JITStubs::cti_op_new_func_exp(STUB_ARGS_DECLARATION)2059 DEFINE_STUB_FUNCTION(JSObject*, op_new_func_exp) 2057 2060 { 2058 2061 STUB_INIT_STACK_FRAME(stackFrame); … … 2061 2064 } 2062 2065 2063 EncodedJSValue JITStubs::cti_op_mod(STUB_ARGS_DECLARATION)2066 DEFINE_STUB_FUNCTION(EncodedJSValue, op_mod) 2064 2067 { 2065 2068 STUB_INIT_STACK_FRAME(stackFrame); … … 2075 2078 } 2076 2079 2077 EncodedJSValue JITStubs::cti_op_less(STUB_ARGS_DECLARATION)2080 DEFINE_STUB_FUNCTION(EncodedJSValue, op_less) 2078 2081 { 2079 2082 STUB_INIT_STACK_FRAME(stackFrame); … … 2085 2088 } 2086 2089 2087 EncodedJSValue JITStubs::cti_op_neq(STUB_ARGS_DECLARATION)2090 DEFINE_STUB_FUNCTION(EncodedJSValue, op_neq) 2088 2091 { 2089 2092 STUB_INIT_STACK_FRAME(stackFrame); … … 2100 2103 } 2101 2104 2102 EncodedJSValue JITStubs::cti_op_post_dec(STUB_ARGS_DECLARATION)2105 DEFINE_STUB_FUNCTION(EncodedJSValue, op_post_dec) 2103 2106 { 2104 2107 STUB_INIT_STACK_FRAME(stackFrame); … … 2115 2118 } 2116 2119 2117 EncodedJSValue JITStubs::cti_op_urshift(STUB_ARGS_DECLARATION)2120 DEFINE_STUB_FUNCTION(EncodedJSValue, op_urshift) 2118 2121 { 2119 2122 STUB_INIT_STACK_FRAME(stackFrame); … … 2133 2136 } 2134 2137 2135 EncodedJSValue JITStubs::cti_op_bitxor(STUB_ARGS_DECLARATION)2138 DEFINE_STUB_FUNCTION(EncodedJSValue, op_bitxor) 2136 2139 { 2137 2140 STUB_INIT_STACK_FRAME(stackFrame); … … 2147 2150 } 2148 2151 2149 JSObject* JITStubs::cti_op_new_regexp(STUB_ARGS_DECLARATION)2152 DEFINE_STUB_FUNCTION(JSObject*, op_new_regexp) 2150 2153 { 2151 2154 STUB_INIT_STACK_FRAME(stackFrame); … … 2154 2157 } 2155 2158 2156 EncodedJSValue JITStubs::cti_op_bitor(STUB_ARGS_DECLARATION)2159 DEFINE_STUB_FUNCTION(EncodedJSValue, op_bitor) 2157 2160 { 2158 2161 STUB_INIT_STACK_FRAME(stackFrame); … … 2168 2171 } 2169 2172 2170 EncodedJSValue JITStubs::cti_op_call_eval(STUB_ARGS_DECLARATION)2173 DEFINE_STUB_FUNCTION(EncodedJSValue, op_call_eval) 2171 2174 { 2172 2175 STUB_INIT_STACK_FRAME(stackFrame); … … 2199 2202 } 2200 2203 2201 EncodedJSValue JITStubs::cti_op_throw(STUB_ARGS_DECLARATION)2204 DEFINE_STUB_FUNCTION(EncodedJSValue, op_throw) 2202 2205 { 2203 2206 STUB_INIT_STACK_FRAME(stackFrame); … … 2225 2228 } 2226 2229 2227 JSPropertyNameIterator* JITStubs::cti_op_get_pnames(STUB_ARGS_DECLARATION)2230 DEFINE_STUB_FUNCTION(JSPropertyNameIterator*, op_get_pnames) 2228 2231 { 2229 2232 STUB_INIT_STACK_FRAME(stackFrame); … … 2232 2235 } 2233 2236 2234 EncodedJSValue JITStubs::cti_op_next_pname(STUB_ARGS_DECLARATION)2237 DEFINE_STUB_FUNCTION(EncodedJSValue, op_next_pname) 2235 2238 { 2236 2239 STUB_INIT_STACK_FRAME(stackFrame); … … 2243 2246 } 2244 2247 2245 JSObject* JITStubs::cti_op_push_scope(STUB_ARGS_DECLARATION)2248 DEFINE_STUB_FUNCTION(JSObject*, op_push_scope) 2246 2249 { 2247 2250 STUB_INIT_STACK_FRAME(stackFrame); … … 2253 2256 } 2254 2257 2255 void JITStubs::cti_op_pop_scope(STUB_ARGS_DECLARATION)2258 DEFINE_STUB_FUNCTION(void, op_pop_scope) 2256 2259 { 2257 2260 STUB_INIT_STACK_FRAME(stackFrame); … … 2260 2263 } 2261 2264 2262 EncodedJSValue JITStubs::cti_op_typeof(STUB_ARGS_DECLARATION)2265 DEFINE_STUB_FUNCTION(EncodedJSValue, op_typeof) 2263 2266 { 2264 2267 STUB_INIT_STACK_FRAME(stackFrame); … … 2267 2270 } 2268 2271 2269 EncodedJSValue JITStubs::cti_op_is_undefined(STUB_ARGS_DECLARATION)2272 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_undefined) 2270 2273 { 2271 2274 STUB_INIT_STACK_FRAME(stackFrame); … … 2275 2278 } 2276 2279 2277 EncodedJSValue JITStubs::cti_op_is_boolean(STUB_ARGS_DECLARATION)2280 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_boolean) 2278 2281 { 2279 2282 STUB_INIT_STACK_FRAME(stackFrame); … … 2282 2285 } 2283 2286 2284 EncodedJSValue JITStubs::cti_op_is_number(STUB_ARGS_DECLARATION)2287 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_number) 2285 2288 { 2286 2289 STUB_INIT_STACK_FRAME(stackFrame); … … 2289 2292 } 2290 2293 2291 EncodedJSValue JITStubs::cti_op_is_string(STUB_ARGS_DECLARATION)2294 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_string) 2292 2295 { 2293 2296 STUB_INIT_STACK_FRAME(stackFrame); … … 2296 2299 } 2297 2300 2298 EncodedJSValue JITStubs::cti_op_is_object(STUB_ARGS_DECLARATION)2301 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_object) 2299 2302 { 2300 2303 STUB_INIT_STACK_FRAME(stackFrame); … … 2303 2306 } 2304 2307 2305 EncodedJSValue JITStubs::cti_op_is_function(STUB_ARGS_DECLARATION)2308 DEFINE_STUB_FUNCTION(EncodedJSValue, op_is_function) 2306 2309 { 2307 2310 STUB_INIT_STACK_FRAME(stackFrame); … … 2310 2313 } 2311 2314 2312 EncodedJSValue JITStubs::cti_op_stricteq(STUB_ARGS_DECLARATION)2315 DEFINE_STUB_FUNCTION(EncodedJSValue, op_stricteq) 2313 2316 { 2314 2317 STUB_INIT_STACK_FRAME(stackFrame); … … 2320 2323 } 2321 2324 2322 EncodedJSValue JITStubs::cti_op_to_primitive(STUB_ARGS_DECLARATION)2325 DEFINE_STUB_FUNCTION(EncodedJSValue, op_to_primitive) 2323 2326 { 2324 2327 STUB_INIT_STACK_FRAME(stackFrame); … … 2327 2330 } 2328 2331 2329 EncodedJSValue JITStubs::cti_op_strcat(STUB_ARGS_DECLARATION)2332 DEFINE_STUB_FUNCTION(EncodedJSValue, op_strcat) 2330 2333 { 2331 2334 STUB_INIT_STACK_FRAME(stackFrame); … … 2334 2337 } 2335 2338 2336 EncodedJSValue JITStubs::cti_op_nstricteq(STUB_ARGS_DECLARATION)2339 DEFINE_STUB_FUNCTION(EncodedJSValue, op_nstricteq) 2337 2340 { 2338 2341 STUB_INIT_STACK_FRAME(stackFrame); … … 2344 2347 } 2345 2348 2346 EncodedJSValue JITStubs::cti_op_to_jsnumber(STUB_ARGS_DECLARATION)2349 DEFINE_STUB_FUNCTION(EncodedJSValue, op_to_jsnumber) 2347 2350 { 2348 2351 STUB_INIT_STACK_FRAME(stackFrame); … … 2356 2359 } 2357 2360 2358 EncodedJSValue JITStubs::cti_op_in(STUB_ARGS_DECLARATION)2361 DEFINE_STUB_FUNCTION(EncodedJSValue, op_in) 2359 2362 { 2360 2363 STUB_INIT_STACK_FRAME(stackFrame); … … 2383 2386 } 2384 2387 2385 JSObject* JITStubs::cti_op_push_new_scope(STUB_ARGS_DECLARATION)2388 DEFINE_STUB_FUNCTION(JSObject*, op_push_new_scope) 2386 2389 { 2387 2390 STUB_INIT_STACK_FRAME(stackFrame); … … 2394 2397 } 2395 2398 2396 void JITStubs::cti_op_jmp_scopes(STUB_ARGS_DECLARATION)2399 DEFINE_STUB_FUNCTION(void, op_jmp_scopes) 2397 2400 { 2398 2401 STUB_INIT_STACK_FRAME(stackFrame); … … 2407 2410 } 2408 2411 2409 void JITStubs::cti_op_put_by_index(STUB_ARGS_DECLARATION)2412 DEFINE_STUB_FUNCTION(void, op_put_by_index) 2410 2413 { 2411 2414 STUB_INIT_STACK_FRAME(stackFrame); … … 2417 2420 } 2418 2421 2419 void* JITStubs::cti_op_switch_imm(STUB_ARGS_DECLARATION)2422 DEFINE_STUB_FUNCTION(void*, op_switch_imm) 2420 2423 { 2421 2424 STUB_INIT_STACK_FRAME(stackFrame); … … 2438 2441 } 2439 2442 2440 void* JITStubs::cti_op_switch_char(STUB_ARGS_DECLARATION)2443 DEFINE_STUB_FUNCTION(void*, op_switch_char) 2441 2444 { 2442 2445 STUB_INIT_STACK_FRAME(stackFrame); … … 2458 2461 } 2459 2462 2460 void* JITStubs::cti_op_switch_string(STUB_ARGS_DECLARATION)2463 DEFINE_STUB_FUNCTION(void*, op_switch_string) 2461 2464 { 2462 2465 STUB_INIT_STACK_FRAME(stackFrame); … … 2477 2480 } 2478 2481 2479 EncodedJSValue JITStubs::cti_op_del_by_val(STUB_ARGS_DECLARATION)2482 DEFINE_STUB_FUNCTION(EncodedJSValue, op_del_by_val) 2480 2483 { 2481 2484 STUB_INIT_STACK_FRAME(stackFrame); … … 2502 2505 } 2503 2506 2504 void JITStubs::cti_op_put_getter(STUB_ARGS_DECLARATION)2507 DEFINE_STUB_FUNCTION(void, op_put_getter) 2505 2508 { 2506 2509 STUB_INIT_STACK_FRAME(stackFrame); … … 2514 2517 } 2515 2518 2516 void JITStubs::cti_op_put_setter(STUB_ARGS_DECLARATION)2519 DEFINE_STUB_FUNCTION(void, op_put_setter) 2517 2520 { 2518 2521 STUB_INIT_STACK_FRAME(stackFrame); … … 2526 2529 } 2527 2530 2528 JSObject* JITStubs::cti_op_new_error(STUB_ARGS_DECLARATION)2531 DEFINE_STUB_FUNCTION(JSObject*, op_new_error) 2529 2532 { 2530 2533 STUB_INIT_STACK_FRAME(stackFrame); … … 2540 2543 } 2541 2544 2542 void JITStubs::cti_op_debug(STUB_ARGS_DECLARATION)2545 DEFINE_STUB_FUNCTION(void, op_debug) 2543 2546 { 2544 2547 STUB_INIT_STACK_FRAME(stackFrame); … … 2553 2556 } 2554 2557 2555 EncodedJSValue JITStubs::cti_vm_throw(STUB_ARGS_DECLARATION)2558 DEFINE_STUB_FUNCTION(EncodedJSValue, vm_throw) 2556 2559 { 2557 2560 STUB_INIT_STACK_FRAME(stackFrame); … … 2581 2584 } 2582 2585 2586 } // namespace JITStubs 2587 2583 2588 } // namespace JSC 2584 2589
Note:
See TracChangeset
for help on using the changeset viewer.