| 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 332 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   343                                     Register scratch); |   343                                     Register scratch); | 
|   344  |   344  | 
|   345   // --------------------------------------------------------------------------- |   345   // --------------------------------------------------------------------------- | 
|   346   // JavaScript invokes |   346   // JavaScript invokes | 
|   347  |   347  | 
|   348   // Invoke the JavaScript function code by either calling or jumping. |   348   // Invoke the JavaScript function code by either calling or jumping. | 
|   349   void InvokeCode(Register code, |   349   void InvokeCode(Register code, | 
|   350                   const ParameterCount& expected, |   350                   const ParameterCount& expected, | 
|   351                   const ParameterCount& actual, |   351                   const ParameterCount& actual, | 
|   352                   InvokeFlag flag, |   352                   InvokeFlag flag, | 
|   353                   CallWrapper* call_wrapper = NULL); |   353                   const CallWrapper& call_wrapper = NullCallWrapper()); | 
|   354  |   354  | 
|   355   void InvokeCode(Handle<Code> code, |   355   void InvokeCode(Handle<Code> code, | 
|   356                   const ParameterCount& expected, |   356                   const ParameterCount& expected, | 
|   357                   const ParameterCount& actual, |   357                   const ParameterCount& actual, | 
|   358                   RelocInfo::Mode rmode, |   358                   RelocInfo::Mode rmode, | 
|   359                   InvokeFlag flag); |   359                   InvokeFlag flag); | 
|   360  |   360  | 
|   361   // Invoke the JavaScript function in the given register. Changes the |   361   // Invoke the JavaScript function in the given register. Changes the | 
|   362   // current context to the context in the function before invoking. |   362   // current context to the context in the function before invoking. | 
|   363   void InvokeFunction(Register function, |   363   void InvokeFunction(Register function, | 
|   364                       const ParameterCount& actual, |   364                       const ParameterCount& actual, | 
|   365                       InvokeFlag flag, |   365                       InvokeFlag flag, | 
|   366                       CallWrapper* call_wrapper = NULL); |   366                       const CallWrapper& call_wrapper = NullCallWrapper()); | 
|   367  |   367  | 
|   368   void InvokeFunction(JSFunction* function, |   368   void InvokeFunction(JSFunction* function, | 
|   369                       const ParameterCount& actual, |   369                       const ParameterCount& actual, | 
|   370                       InvokeFlag flag); |   370                       InvokeFlag flag); | 
|   371  |   371  | 
|   372   void IsObjectJSObjectType(Register heap_object, |   372   void IsObjectJSObjectType(Register heap_object, | 
|   373                             Register map, |   373                             Register map, | 
|   374                             Register scratch, |   374                             Register scratch, | 
|   375                             Label* fail); |   375                             Label* fail); | 
|   376  |   376  | 
| (...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   792  |   792  | 
|   793   // Jump to a runtime routine. |   793   // Jump to a runtime routine. | 
|   794   void JumpToExternalReference(const ExternalReference& builtin); |   794   void JumpToExternalReference(const ExternalReference& builtin); | 
|   795  |   795  | 
|   796   MaybeObject* TryJumpToExternalReference(const ExternalReference& ext); |   796   MaybeObject* TryJumpToExternalReference(const ExternalReference& ext); | 
|   797  |   797  | 
|   798   // Invoke specified builtin JavaScript function. Adds an entry to |   798   // Invoke specified builtin JavaScript function. Adds an entry to | 
|   799   // the unresolved list if the name does not resolve. |   799   // the unresolved list if the name does not resolve. | 
|   800   void InvokeBuiltin(Builtins::JavaScript id, |   800   void InvokeBuiltin(Builtins::JavaScript id, | 
|   801                      InvokeFlag flag, |   801                      InvokeFlag flag, | 
|   802                      CallWrapper* call_wrapper = NULL); |   802                      const CallWrapper& call_wrapper = NullCallWrapper()); | 
|   803  |   803  | 
|   804   // Store the code object for the given builtin in the target register and |   804   // Store the code object for the given builtin in the target register and | 
|   805   // setup the function in r1. |   805   // setup the function in r1. | 
|   806   void GetBuiltinEntry(Register target, Builtins::JavaScript id); |   806   void GetBuiltinEntry(Register target, Builtins::JavaScript id); | 
|   807  |   807  | 
|   808   // Store the function for the given builtin in the target register. |   808   // Store the function for the given builtin in the target register. | 
|   809   void GetBuiltinFunction(Register target, Builtins::JavaScript id); |   809   void GetBuiltinFunction(Register target, Builtins::JavaScript id); | 
|   810  |   810  | 
|   811   Handle<Object> CodeObject() { |   811   Handle<Object> CodeObject() { | 
|   812     ASSERT(!code_object_.is_null()); |   812     ASSERT(!code_object_.is_null()); | 
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   995             RelocInfo::Mode rmode, |   995             RelocInfo::Mode rmode, | 
|   996             Condition cond = al); |   996             Condition cond = al); | 
|   997  |   997  | 
|   998   // Helper functions for generating invokes. |   998   // Helper functions for generating invokes. | 
|   999   void InvokePrologue(const ParameterCount& expected, |   999   void InvokePrologue(const ParameterCount& expected, | 
|  1000                       const ParameterCount& actual, |  1000                       const ParameterCount& actual, | 
|  1001                       Handle<Code> code_constant, |  1001                       Handle<Code> code_constant, | 
|  1002                       Register code_reg, |  1002                       Register code_reg, | 
|  1003                       Label* done, |  1003                       Label* done, | 
|  1004                       InvokeFlag flag, |  1004                       InvokeFlag flag, | 
|  1005                       CallWrapper* call_wrapper = NULL); |  1005                       const CallWrapper& call_wrapper = NullCallWrapper()); | 
|  1006  |  1006  | 
|  1007   // Activation support. |  1007   // Activation support. | 
|  1008   void EnterFrame(StackFrame::Type type); |  1008   void EnterFrame(StackFrame::Type type); | 
|  1009   void LeaveFrame(StackFrame::Type type); |  1009   void LeaveFrame(StackFrame::Type type); | 
|  1010  |  1010  | 
|  1011   void InitializeNewString(Register string, |  1011   void InitializeNewString(Register string, | 
|  1012                            Register length, |  1012                            Register length, | 
|  1013                            Heap::RootListIndex map_index, |  1013                            Heap::RootListIndex map_index, | 
|  1014                            Register scratch1, |  1014                            Register scratch1, | 
|  1015                            Register scratch2); |  1015                            Register scratch2); | 
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1082 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |  1082 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 
|  1083 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |  1083 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 
|  1084 #else |  1084 #else | 
|  1085 #define ACCESS_MASM(masm) masm-> |  1085 #define ACCESS_MASM(masm) masm-> | 
|  1086 #endif |  1086 #endif | 
|  1087  |  1087  | 
|  1088  |  1088  | 
|  1089 } }  // namespace v8::internal |  1089 } }  // namespace v8::internal | 
|  1090  |  1090  | 
|  1091 #endif  // V8_ARM_MACRO_ASSEMBLER_ARM_H_ |  1091 #endif  // V8_ARM_MACRO_ASSEMBLER_ARM_H_ | 
| OLD | NEW |