OLD | NEW |
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 21 matching lines...) Expand all Loading... |
32 // modified significantly by Google Inc. | 32 // modified significantly by Google Inc. |
33 // Copyright 2012 the V8 project authors. All rights reserved. | 33 // Copyright 2012 the V8 project authors. All rights reserved. |
34 | 34 |
35 #include "assembler.h" | 35 #include "assembler.h" |
36 | 36 |
37 #include <cmath> | 37 #include <cmath> |
38 #include "api.h" | 38 #include "api.h" |
39 #include "builtins.h" | 39 #include "builtins.h" |
40 #include "counters.h" | 40 #include "counters.h" |
41 #include "cpu.h" | 41 #include "cpu.h" |
| 42 #include "cpu-profiler.h" |
42 #include "debug.h" | 43 #include "debug.h" |
43 #include "deoptimizer.h" | 44 #include "deoptimizer.h" |
44 #include "execution.h" | 45 #include "execution.h" |
45 #include "ic.h" | 46 #include "ic.h" |
46 #include "isolate-inl.h" | 47 #include "isolate-inl.h" |
47 #include "jsregexp.h" | 48 #include "jsregexp.h" |
48 #include "lazy-instance.h" | 49 #include "lazy-instance.h" |
49 #include "platform.h" | 50 #include "platform.h" |
50 #include "regexp-macro-assembler.h" | 51 #include "regexp-macro-assembler.h" |
51 #include "regexp-stack.h" | 52 #include "regexp-stack.h" |
(...skipping 1269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1321 reinterpret_cast<void*>(&double_constants.the_hole_nan)); | 1322 reinterpret_cast<void*>(&double_constants.the_hole_nan)); |
1322 } | 1323 } |
1323 | 1324 |
1324 | 1325 |
1325 ExternalReference ExternalReference::address_of_uint32_bias() { | 1326 ExternalReference ExternalReference::address_of_uint32_bias() { |
1326 return ExternalReference( | 1327 return ExternalReference( |
1327 reinterpret_cast<void*>(&double_constants.uint32_bias)); | 1328 reinterpret_cast<void*>(&double_constants.uint32_bias)); |
1328 } | 1329 } |
1329 | 1330 |
1330 | 1331 |
| 1332 ExternalReference ExternalReference::is_profiling_address(Isolate* isolate) { |
| 1333 return ExternalReference(isolate->cpu_profiler()->is_profiling_address()); |
| 1334 } |
| 1335 |
| 1336 |
| 1337 ExternalReference ExternalReference::invoke_function_callback( |
| 1338 Isolate* isolate) { |
| 1339 Address thunk_address = FUNCTION_ADDR(&InvokeFunctionCallback); |
| 1340 ExternalReference::Type thunk_type = ExternalReference::PROFILING_API_CALL; |
| 1341 ApiFunction thunk_fun(thunk_address); |
| 1342 return ExternalReference(&thunk_fun, thunk_type, isolate); |
| 1343 } |
| 1344 |
| 1345 |
| 1346 ExternalReference ExternalReference::invoke_accessor_getter_callback( |
| 1347 Isolate* isolate) { |
| 1348 Address thunk_address = FUNCTION_ADDR(&InvokeAccessorGetterCallback); |
| 1349 ExternalReference::Type thunk_type = |
| 1350 ExternalReference::PROFILING_GETTER_CALL; |
| 1351 ApiFunction thunk_fun(thunk_address); |
| 1352 return ExternalReference(&thunk_fun, thunk_type, isolate); |
| 1353 } |
| 1354 |
| 1355 |
1331 #ifndef V8_INTERPRETED_REGEXP | 1356 #ifndef V8_INTERPRETED_REGEXP |
1332 | 1357 |
1333 ExternalReference ExternalReference::re_check_stack_guard_state( | 1358 ExternalReference ExternalReference::re_check_stack_guard_state( |
1334 Isolate* isolate) { | 1359 Isolate* isolate) { |
1335 Address function; | 1360 Address function; |
1336 #if V8_TARGET_ARCH_X64 | 1361 #if V8_TARGET_ARCH_X64 |
1337 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState); | 1362 function = FUNCTION_ADDR(RegExpMacroAssemblerX64::CheckStackGuardState); |
1338 #elif V8_TARGET_ARCH_IA32 | 1363 #elif V8_TARGET_ARCH_IA32 |
1339 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState); | 1364 function = FUNCTION_ADDR(RegExpMacroAssemblerIA32::CheckStackGuardState); |
1340 #elif V8_TARGET_ARCH_ARM64 | 1365 #elif V8_TARGET_ARCH_ARM64 |
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1627 r2 = r2 - ad; | 1652 r2 = r2 - ad; |
1628 } | 1653 } |
1629 delta = ad - r2; | 1654 delta = ad - r2; |
1630 } while (q1 < delta || (q1 == delta && r1 == 0)); | 1655 } while (q1 < delta || (q1 == delta && r1 == 0)); |
1631 int32_t mul = static_cast<int32_t>(q2 + 1); | 1656 int32_t mul = static_cast<int32_t>(q2 + 1); |
1632 multiplier_ = (d < 0) ? -mul : mul; | 1657 multiplier_ = (d < 0) ? -mul : mul; |
1633 shift_ = p - 32; | 1658 shift_ = p - 32; |
1634 } | 1659 } |
1635 | 1660 |
1636 } } // namespace v8::internal | 1661 } } // namespace v8::internal |
OLD | NEW |