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 1219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1230 Label* fail, | 1230 Label* fail, |
1231 SmiCheckType smi_check_type); | 1231 SmiCheckType smi_check_type); |
1232 | 1232 |
1233 // Check if the map of an object is equal to a specified weak map and branch | 1233 // Check if the map of an object is equal to a specified weak map and branch |
1234 // to a specified target if equal. Skip the smi check if not required | 1234 // to a specified target if equal. Skip the smi check if not required |
1235 // (object is known to be a heap object) | 1235 // (object is known to be a heap object) |
1236 void DispatchWeakMap(Register obj, Register scratch1, Register scratch2, | 1236 void DispatchWeakMap(Register obj, Register scratch1, Register scratch2, |
1237 Handle<WeakCell> cell, Handle<Code> success, | 1237 Handle<WeakCell> cell, Handle<Code> success, |
1238 SmiCheckType smi_check_type); | 1238 SmiCheckType smi_check_type); |
1239 | 1239 |
| 1240 // If the value is a NaN, canonicalize the value else, do nothing. |
| 1241 void FPUCanonicalizeNaN(const DoubleRegister dst, const DoubleRegister src); |
| 1242 |
1240 // Get value of the weak cell. | 1243 // Get value of the weak cell. |
1241 void GetWeakValue(Register value, Handle<WeakCell> cell); | 1244 void GetWeakValue(Register value, Handle<WeakCell> cell); |
1242 | 1245 |
1243 // Load the value of the weak cell in the value register. Branch to the | 1246 // Load the value of the weak cell in the value register. Branch to the |
1244 // given miss label is the weak cell was cleared. | 1247 // given miss label is the weak cell was cleared. |
1245 void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss); | 1248 void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss); |
1246 | 1249 |
1247 // Load and check the instance type of an object for being a string. | 1250 // Load and check the instance type of an object for being a string. |
1248 // Loads the type into the second argument register. | 1251 // Loads the type into the second argument register. |
1249 // Returns a condition that will be enabled if the object was a string. | 1252 // Returns a condition that will be enabled if the object was a string. |
(...skipping 643 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1893 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1896 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1894 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1897 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1895 #else | 1898 #else |
1896 #define ACCESS_MASM(masm) masm-> | 1899 #define ACCESS_MASM(masm) masm-> |
1897 #endif | 1900 #endif |
1898 | 1901 |
1899 } // namespace internal | 1902 } // namespace internal |
1900 } // namespace v8 | 1903 } // namespace v8 |
1901 | 1904 |
1902 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1905 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |