| OLD | NEW | 
|     1 // Copyright 2012 the V8 project authors. All rights reserved. |     1 // Copyright 2012 the V8 project authors. All rights reserved. | 
|     2 // Use of this source code is governed by a BSD-style license that can be |     2 // Use of this source code is governed by a BSD-style license that can be | 
|     3 // found in the LICENSE file. |     3 // found in the LICENSE file. | 
|     4  |     4  | 
|     5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |     5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 
|     6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |     6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 
|     7  |     7  | 
|     8 #include "src/assembler.h" |     8 #include "src/assembler.h" | 
|     9 #include "src/globals.h" |     9 #include "src/globals.h" | 
|    10 #include "src/mips/assembler-mips.h" |    10 #include "src/mips/assembler-mips.h" | 
| (...skipping 1023 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1034   // Machine code version of Map::GetConstructor(). |  1034   // Machine code version of Map::GetConstructor(). | 
|  1035   // |temp| holds |result|'s map when done, and |temp2| its instance type. |  1035   // |temp| holds |result|'s map when done, and |temp2| its instance type. | 
|  1036   void GetMapConstructor(Register result, Register map, Register temp, |  1036   void GetMapConstructor(Register result, Register map, Register temp, | 
|  1037                          Register temp2); |  1037                          Register temp2); | 
|  1038  |  1038  | 
|  1039   // Try to get function prototype of a function and puts the value in |  1039   // Try to get function prototype of a function and puts the value in | 
|  1040   // the result register. Checks that the function really is a |  1040   // the result register. Checks that the function really is a | 
|  1041   // function and jumps to the miss label if the fast checks fail. The |  1041   // function and jumps to the miss label if the fast checks fail. The | 
|  1042   // function register will be untouched; the other registers may be |  1042   // function register will be untouched; the other registers may be | 
|  1043   // clobbered. |  1043   // clobbered. | 
|  1044   void TryGetFunctionPrototype(Register function, |  1044   void TryGetFunctionPrototype(Register function, Register result, | 
|  1045                                Register result, |  1045                                Register scratch, Label* miss); | 
|  1046                                Register scratch, |  | 
|  1047                                Label* miss, |  | 
|  1048                                bool miss_on_bound_function = false); |  | 
|  1049  |  1046  | 
|  1050   void GetObjectType(Register function, |  1047   void GetObjectType(Register function, | 
|  1051                      Register map, |  1048                      Register map, | 
|  1052                      Register type_reg); |  1049                      Register type_reg); | 
|  1053  |  1050  | 
|  1054   // Check if a map for a JSObject indicates that the object has fast elements. |  1051   // Check if a map for a JSObject indicates that the object has fast elements. | 
|  1055   // Jump to the specified label if it does not. |  1052   // Jump to the specified label if it does not. | 
|  1056   void CheckFastElements(Register map, |  1053   void CheckFastElements(Register map, | 
|  1057                          Register scratch, |  1054                          Register scratch, | 
|  1058                          Label* fail); |  1055                          Label* fail); | 
| (...skipping 532 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1591  |  1588  | 
|  1592   // Generates function and stub prologue code. |  1589   // Generates function and stub prologue code. | 
|  1593   void StubPrologue(); |  1590   void StubPrologue(); | 
|  1594   void Prologue(bool code_pre_aging); |  1591   void Prologue(bool code_pre_aging); | 
|  1595  |  1592  | 
|  1596   // Activation support. |  1593   // Activation support. | 
|  1597   void EnterFrame(StackFrame::Type type); |  1594   void EnterFrame(StackFrame::Type type); | 
|  1598   void EnterFrame(StackFrame::Type type, bool load_constant_pool_pointer_reg); |  1595   void EnterFrame(StackFrame::Type type, bool load_constant_pool_pointer_reg); | 
|  1599   void LeaveFrame(StackFrame::Type type); |  1596   void LeaveFrame(StackFrame::Type type); | 
|  1600  |  1597  | 
|  1601   // Patch the relocated value (lui/ori pair). |  | 
|  1602   void PatchRelocatedValue(Register li_location, |  | 
|  1603                            Register scratch, |  | 
|  1604                            Register new_value); |  | 
|  1605   // Get the relocatad value (loaded data) from the lui/ori pair. |  | 
|  1606   void GetRelocatedValue(Register li_location, |  | 
|  1607                          Register value, |  | 
|  1608                          Register scratch); |  | 
|  1609  |  | 
|  1610   // Expects object in a0 and returns map with validated enum cache |  1598   // Expects object in a0 and returns map with validated enum cache | 
|  1611   // in a0.  Assumes that any other register can be used as a scratch. |  1599   // in a0.  Assumes that any other register can be used as a scratch. | 
|  1612   void CheckEnumCache(Register null_value, Label* call_runtime); |  1600   void CheckEnumCache(Register null_value, Label* call_runtime); | 
|  1613  |  1601  | 
|  1614   // AllocationMemento support. Arrays may have an associated |  1602   // AllocationMemento support. Arrays may have an associated | 
|  1615   // AllocationMemento object that can be checked for in order to pretransition |  1603   // AllocationMemento object that can be checked for in order to pretransition | 
|  1616   // to another type. |  1604   // to another type. | 
|  1617   // On entry, receiver_reg should point to the array object. |  1605   // On entry, receiver_reg should point to the array object. | 
|  1618   // scratch_reg gets clobbered. |  1606   // scratch_reg gets clobbered. | 
|  1619   // If allocation info is present, jump to allocation_memento_present. |  1607   // If allocation info is present, jump to allocation_memento_present. | 
| (...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1756 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |  1744 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 
|  1757 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |  1745 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 
|  1758 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |  1746 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 
|  1759 #else |  1747 #else | 
|  1760 #define ACCESS_MASM(masm) masm-> |  1748 #define ACCESS_MASM(masm) masm-> | 
|  1761 #endif |  1749 #endif | 
|  1762  |  1750  | 
|  1763 } }  // namespace v8::internal |  1751 } }  // namespace v8::internal | 
|  1764  |  1752  | 
|  1765 #endif  // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |  1753 #endif  // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 
| OLD | NEW |