Changeset 34067 in webkit for trunk/JavaScriptCore/VM/Machine.cpp
- Timestamp:
- May 23, 2008, 2:07:06 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/VM/Machine.cpp
r34065 r34067 440 440 static NEVER_INLINE JSValue* callEval(ExecState* exec, JSObject* thisObj, ScopeChainNode* scopeChain, RegisterFile* registerFile, Register* r, int argv, int argc, JSValue*& exceptionValue) 441 441 { 442 #if JAVASCRIPT_PROFILING443 442 Profiler** profiler = Profiler::enabledProfilerReference(); 444 443 JSObject* evalFunction = scopeChain->globalObject()->evalFunction(); 445 444 if (*profiler) 446 445 (*profiler)->willExecute(exec, evalFunction); 447 #endif448 446 449 447 JSValue* x = argc >= 2 ? r[argv + 1].u.jsValue : jsUndefined(); … … 469 467 } 470 468 471 #if JAVASCRIPT_PROFILING472 469 JSValue* result = machine().execute(evalNode.get(), exec, thisObj, registerFile, r - (*registerFile->basePointer()) + argv + argc, scopeChain, &exceptionValue); 473 470 … … 476 473 477 474 return result; 478 #else479 return machine().execute(evalNode.get(), exec, thisObj, registerFile, r - (*registerFile->basePointer()) + argv + argc, scopeChain, &exceptionValue);480 #endif481 475 } 482 476 … … 608 602 vPC = callFrame[ReturnVPC].u.vPC; 609 603 610 #if JAVASCRIPT_PROFILING611 604 if (Profiler* profiler = *Profiler::enabledProfilerReference()) 612 605 profiler->didExecute(exec, callFrame[Callee].u.jsObject); 613 #endif614 606 return true; 615 607 } … … 673 665 scopeChain = scopeChain->copy(); 674 666 675 #if JAVASCRIPT_PROFILING676 667 Profiler** profiler = Profiler::enabledProfilerReference(); 677 668 if (*profiler) 678 669 (*profiler)->willExecute(exec, programNode->sourceURL(), programNode->lineNo()); 679 #endif680 670 681 671 ExecState newExec(exec, this, registerFile, scopeChain, -1); … … 687 677 registerFileStack->popGlobalRegisterFile(); 688 678 689 #if JAVASCRIPT_PROFILING690 679 if (*profiler) 691 680 (*profiler)->didExecute(exec, programNode->sourceURL(), programNode->lineNo()); 692 #endif693 681 694 682 return result; … … 740 728 ExecState newExec(exec, this, registerFile, scopeChain, callFrameOffset); 741 729 742 #if JAVASCRIPT_PROFILING743 730 Profiler** profiler = Profiler::enabledProfilerReference(); 744 731 if (*profiler) 745 732 (*profiler)->willExecute(exec, function); 746 #endif747 733 748 734 m_reentryDepth++; … … 750 736 m_reentryDepth--; 751 737 752 #if JAVASCRIPT_PROFILING753 738 if (*profiler) 754 739 (*profiler)->didExecute(exec, function); 755 #endif 740 756 741 registerFile->shrink(oldSize); 757 742 return result; … … 805 790 scopeChain = scopeChain->copy(); 806 791 807 #if JAVASCRIPT_PROFILING808 792 Profiler** profiler = Profiler::enabledProfilerReference(); 809 793 if (*profiler) 810 794 (*profiler)->willExecute(exec, evalNode->sourceURL(), evalNode->lineNo()); 811 #endif812 795 813 796 ExecState newExec(exec, this, registerFile, scopeChain, -1); … … 819 802 registerFile->shrink(oldSize); 820 803 821 #if JAVASCRIPT_PROFILING822 804 if (*profiler) 823 805 (*profiler)->didExecute(exec, evalNode->sourceURL(), evalNode->lineNo()); 824 #endif825 806 826 807 return result; … … 898 879 Instruction* vPC = codeBlock->instructions.begin(); 899 880 JSValue** k = codeBlock->jsValues.data(); 900 #if JAVASCRIPT_PROFILING901 881 Profiler** enabledProfilerReference = Profiler::enabledProfilerReference(); 902 882 … … 908 888 profilerFetchHack: 909 889 #endif 910 911 #endif 912 890 913 891 registerFile->setSafeForReentry(false); 914 892 #define VM_CHECK_EXCEPTION() \ … … 1924 1902 1925 1903 if (callType == CallTypeJS) { 1926 #if JAVASCRIPT_PROFILING1927 1904 if (*enabledProfilerReference) 1928 1905 (*enabledProfilerReference)->willExecute(exec, static_cast<JSObject*>(v)); 1929 #endif1930 1906 int registerOffset = r - (*registerBase); 1931 1907 Register* callFrame = r + argv - CallFrameHeaderSize; … … 1953 1929 1954 1930 if (callType == CallTypeNative) { 1955 #if JAVASCRIPT_PROFILING1956 1931 if (*enabledProfilerReference) 1957 1932 (*enabledProfilerReference)->willExecute(exec, static_cast<JSObject*>(v)); 1958 #endif1959 1933 int registerOffset = r - (*registerBase); 1960 1934 … … 1971 1945 r[dst].u.jsValue = returnValue; 1972 1946 1973 #if JAVASCRIPT_PROFILING1974 1947 if (*enabledProfilerReference) 1975 1948 (*enabledProfilerReference)->didExecute(exec, static_cast<JSObject*>(v)); 1976 #endif1977 1949 VM_CHECK_EXCEPTION(); 1978 1950 … … 2020 1992 int r0 = callFrame[ReturnValueRegister].u.i; 2021 1993 r[r0].u.jsValue = returnValue; 2022 2023 #if JAVASCRIPT_PROFILING 1994 2024 1995 if (*enabledProfilerReference) 2025 1996 (*enabledProfilerReference)->didExecute(exec, callFrame[Callee].u.jsObject); 2026 #endif 1997 2027 1998 NEXT_OPCODE; 2028 1999 } … … 2042 2013 2043 2014 if (constructType == ConstructTypeJS) { 2044 #if JAVASCRIPT_PROFILING2045 2015 if (*enabledProfilerReference) 2046 2016 (*enabledProfilerReference)->willExecute(exec, constructor); 2047 #endif 2017 2048 2018 int registerOffset = r - (*registerBase); 2049 2019 Register* callFrame = r + argv - CallFrameHeaderSize; … … 2079 2049 2080 2050 if (constructType == ConstructTypeNative) { 2081 #if JAVASCRIPT_PROFILING2082 2051 if (*enabledProfilerReference) 2083 2052 (*enabledProfilerReference)->willExecute(exec, constructor); 2084 #endif 2053 2085 2054 int registerOffset = r - (*registerBase); 2086 2055 … … 2094 2063 r[dst].u.jsValue = returnValue; 2095 2064 2096 #if JAVASCRIPT_PROFILING2097 2065 if (*enabledProfilerReference) 2098 2066 (*enabledProfilerReference)->didExecute(exec, constructor); 2099 #endif 2067 2100 2068 ++vPC; 2101 2069 NEXT_OPCODE;
Note:
See TracChangeset
for help on using the changeset viewer.