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 #include <limits.h> // For LONG_MIN, LONG_MAX. | 5 #include <limits.h> // For LONG_MIN, LONG_MAX. |
6 | 6 |
7 #include "src/v8.h" | 7 #include "src/v8.h" |
8 | 8 |
9 #if V8_TARGET_ARCH_ARM | 9 #if V8_TARGET_ARCH_ARM |
10 | 10 |
(...skipping 2485 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2496 } | 2496 } |
2497 // LeaveExitFrame expects unwind space to be in a register. | 2497 // LeaveExitFrame expects unwind space to be in a register. |
2498 mov(r4, Operand(stack_space)); | 2498 mov(r4, Operand(stack_space)); |
2499 LeaveExitFrame(false, r4, !restore_context); | 2499 LeaveExitFrame(false, r4, !restore_context); |
2500 mov(pc, lr); | 2500 mov(pc, lr); |
2501 | 2501 |
2502 bind(&promote_scheduled_exception); | 2502 bind(&promote_scheduled_exception); |
2503 { | 2503 { |
2504 FrameScope frame(this, StackFrame::INTERNAL); | 2504 FrameScope frame(this, StackFrame::INTERNAL); |
2505 CallExternalReference( | 2505 CallExternalReference( |
2506 ExternalReference(Runtime::kHiddenPromoteScheduledException, isolate()), | 2506 ExternalReference(Runtime::kPromoteScheduledException, isolate()), |
2507 0); | 2507 0); |
2508 } | 2508 } |
2509 jmp(&exception_handled); | 2509 jmp(&exception_handled); |
2510 | 2510 |
2511 // HandleScope limit has changed. Delete allocated extensions. | 2511 // HandleScope limit has changed. Delete allocated extensions. |
2512 bind(&delete_allocated_handles); | 2512 bind(&delete_allocated_handles); |
2513 str(r5, MemOperand(r9, kLimitOffset)); | 2513 str(r5, MemOperand(r9, kLimitOffset)); |
2514 mov(r4, r0); | 2514 mov(r4, r0); |
2515 PrepareCallCFunction(1, r5); | 2515 PrepareCallCFunction(1, r5); |
2516 mov(r0, Operand(ExternalReference::isolate_address(isolate()))); | 2516 mov(r0, Operand(ExternalReference::isolate_address(isolate()))); |
(...skipping 1565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4082 sub(result, result, Operand(dividend)); | 4082 sub(result, result, Operand(dividend)); |
4083 } | 4083 } |
4084 if (ms.shift() > 0) mov(result, Operand(result, ASR, ms.shift())); | 4084 if (ms.shift() > 0) mov(result, Operand(result, ASR, ms.shift())); |
4085 add(result, result, Operand(dividend, LSR, 31)); | 4085 add(result, result, Operand(dividend, LSR, 31)); |
4086 } | 4086 } |
4087 | 4087 |
4088 | 4088 |
4089 } } // namespace v8::internal | 4089 } } // namespace v8::internal |
4090 | 4090 |
4091 #endif // V8_TARGET_ARCH_ARM | 4091 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |