| OLD | NEW | 
|---|
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. | 
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without | 
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are | 
| 4 // met: | 4 // met: | 
| 5 // | 5 // | 
| 6 //     * Redistributions of source code must retain the above copyright | 6 //     * Redistributions of source code must retain the above copyright | 
| 7 //       notice, this list of conditions and the following disclaimer. | 7 //       notice, this list of conditions and the following disclaimer. | 
| 8 //     * Redistributions in binary form must reproduce the above | 8 //     * Redistributions in binary form must reproduce the above | 
| 9 //       copyright notice, this list of conditions and the following | 9 //       copyright notice, this list of conditions and the following | 
| 10 //       disclaimer in the documentation and/or other materials provided | 10 //       disclaimer in the documentation and/or other materials provided | 
| (...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 607 | 607 | 
| 608   // Load the initial map from the global function. The registers | 608   // Load the initial map from the global function. The registers | 
| 609   // function and map can be the same, function is then overwritten. | 609   // function and map can be the same, function is then overwritten. | 
| 610   void LoadGlobalFunctionInitialMap(Register function, | 610   void LoadGlobalFunctionInitialMap(Register function, | 
| 611                                     Register map, | 611                                     Register map, | 
| 612                                     Register scratch); | 612                                     Register scratch); | 
| 613 | 613 | 
| 614   // ------------------------------------------------------------------------- | 614   // ------------------------------------------------------------------------- | 
| 615   // JavaScript invokes. | 615   // JavaScript invokes. | 
| 616 | 616 | 
|  | 617   // Setup call kind marking in t1. The method takes t1 as an | 
|  | 618   // explicit first parameter to make the code more readable at the | 
|  | 619   // call sites. | 
|  | 620   void SetCallKind(Register dst, CallKind kind); | 
|  | 621 | 
| 617   // Invoke the JavaScript function code by either calling or jumping. | 622   // Invoke the JavaScript function code by either calling or jumping. | 
| 618   void InvokeCode(Register code, | 623   void InvokeCode(Register code, | 
| 619                   const ParameterCount& expected, | 624                   const ParameterCount& expected, | 
| 620                   const ParameterCount& actual, | 625                   const ParameterCount& actual, | 
| 621                   InvokeFlag flag, | 626                   InvokeFlag flag, | 
| 622                   const CallWrapper& call_wrapper = NullCallWrapper()); | 627                   const CallWrapper& call_wrapper = NullCallWrapper(), | 
|  | 628                   CallKind call_kind = CALL_AS_METHOD); | 
| 623 | 629 | 
| 624   void InvokeCode(Handle<Code> code, | 630   void InvokeCode(Handle<Code> code, | 
| 625                   const ParameterCount& expected, | 631                   const ParameterCount& expected, | 
| 626                   const ParameterCount& actual, | 632                   const ParameterCount& actual, | 
| 627                   RelocInfo::Mode rmode, | 633                   RelocInfo::Mode rmode, | 
| 628                   InvokeFlag flag); | 634                   InvokeFlag flag, | 
|  | 635                   CallKind call_kind = CALL_AS_METHOD); | 
| 629 | 636 | 
| 630   // Invoke the JavaScript function in the given register. Changes the | 637   // Invoke the JavaScript function in the given register. Changes the | 
| 631   // current context to the context in the function before invoking. | 638   // current context to the context in the function before invoking. | 
| 632   void InvokeFunction(Register function, | 639   void InvokeFunction(Register function, | 
| 633                       const ParameterCount& actual, | 640                       const ParameterCount& actual, | 
| 634                       InvokeFlag flag, | 641                       InvokeFlag flag, | 
| 635                       const CallWrapper& call_wrapper = NullCallWrapper()); | 642                       const CallWrapper& call_wrapper = NullCallWrapper(), | 
|  | 643                       CallKind call_kind = CALL_AS_METHOD); | 
| 636 | 644 | 
| 637   void InvokeFunction(JSFunction* function, | 645   void InvokeFunction(JSFunction* function, | 
| 638                       const ParameterCount& actual, | 646                       const ParameterCount& actual, | 
| 639                       InvokeFlag flag); | 647                       InvokeFlag flag); | 
| 640 | 648 | 
| 641 | 649 | 
| 642   void IsObjectJSObjectType(Register heap_object, | 650   void IsObjectJSObjectType(Register heap_object, | 
| 643                             Register map, | 651                             Register map, | 
| 644                             Register scratch, | 652                             Register scratch, | 
| 645                             Label* fail); | 653                             Label* fail); | 
| (...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1091             Register r1 = zero_reg, const Operand& r2 = Operand(zero_reg), | 1099             Register r1 = zero_reg, const Operand& r2 = Operand(zero_reg), | 
| 1092             BranchDelaySlot bd = PROTECT); | 1100             BranchDelaySlot bd = PROTECT); | 
| 1093 | 1101 | 
| 1094   // Helper functions for generating invokes. | 1102   // Helper functions for generating invokes. | 
| 1095   void InvokePrologue(const ParameterCount& expected, | 1103   void InvokePrologue(const ParameterCount& expected, | 
| 1096                       const ParameterCount& actual, | 1104                       const ParameterCount& actual, | 
| 1097                       Handle<Code> code_constant, | 1105                       Handle<Code> code_constant, | 
| 1098                       Register code_reg, | 1106                       Register code_reg, | 
| 1099                       Label* done, | 1107                       Label* done, | 
| 1100                       InvokeFlag flag, | 1108                       InvokeFlag flag, | 
| 1101                       const CallWrapper& call_wrapper = NullCallWrapper()); | 1109                       const CallWrapper& call_wrapper = NullCallWrapper(), | 
|  | 1110                       CallKind call_kind = CALL_AS_METHOD); | 
| 1102 | 1111 | 
| 1103   // Get the code for the given builtin. Returns if able to resolve | 1112   // Get the code for the given builtin. Returns if able to resolve | 
| 1104   // the function in the 'resolved' flag. | 1113   // the function in the 'resolved' flag. | 
| 1105   Handle<Code> ResolveBuiltin(Builtins::JavaScript id, bool* resolved); | 1114   Handle<Code> ResolveBuiltin(Builtins::JavaScript id, bool* resolved); | 
| 1106 | 1115 | 
| 1107   // Activation support. | 1116   // Activation support. | 
| 1108   void EnterFrame(StackFrame::Type type); | 1117   void EnterFrame(StackFrame::Type type); | 
| 1109   void LeaveFrame(StackFrame::Type type); | 1118   void LeaveFrame(StackFrame::Type type); | 
| 1110 | 1119 | 
| 1111   void InitializeNewString(Register string, | 1120   void InitializeNewString(Register string, | 
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1196 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 1205 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 
| 1197 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1206 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 
| 1198 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1207 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 
| 1199 #else | 1208 #else | 
| 1200 #define ACCESS_MASM(masm) masm-> | 1209 #define ACCESS_MASM(masm) masm-> | 
| 1201 #endif | 1210 #endif | 
| 1202 | 1211 | 
| 1203 } }  // namespace v8::internal | 1212 } }  // namespace v8::internal | 
| 1204 | 1213 | 
| 1205 #endif  // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1214 #endif  // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 
| OLD | NEW | 
|---|