| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 1461 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1472 #endif | 1472 #endif |
| 1473 | 1473 |
| 1474 Mov(x0, Smi::FromInt(reason)); | 1474 Mov(x0, Smi::FromInt(reason)); |
| 1475 Push(x0); | 1475 Push(x0); |
| 1476 | 1476 |
| 1477 // Disable stub call restrictions to always allow calls to throw. | 1477 // Disable stub call restrictions to always allow calls to throw. |
| 1478 if (!has_frame_) { | 1478 if (!has_frame_) { |
| 1479 // We don't actually want to generate a pile of code for this, so just | 1479 // We don't actually want to generate a pile of code for this, so just |
| 1480 // claim there is a stack frame, without generating one. | 1480 // claim there is a stack frame, without generating one. |
| 1481 FrameScope scope(this, StackFrame::NONE); | 1481 FrameScope scope(this, StackFrame::NONE); |
| 1482 CallRuntime(Runtime::kThrowMessage, 1); | 1482 CallRuntime(Runtime::kHiddenThrowMessage, 1); |
| 1483 } else { | 1483 } else { |
| 1484 CallRuntime(Runtime::kThrowMessage, 1); | 1484 CallRuntime(Runtime::kHiddenThrowMessage, 1); |
| 1485 } | 1485 } |
| 1486 // ThrowMessage should not return here. | 1486 // ThrowMessage should not return here. |
| 1487 Unreachable(); | 1487 Unreachable(); |
| 1488 } | 1488 } |
| 1489 | 1489 |
| 1490 | 1490 |
| 1491 void MacroAssembler::ThrowIf(Condition cc, BailoutReason reason) { | 1491 void MacroAssembler::ThrowIf(Condition cc, BailoutReason reason) { |
| 1492 Label ok; | 1492 Label ok; |
| 1493 B(InvertCondition(cc), &ok); | 1493 B(InvertCondition(cc), &ok); |
| 1494 Throw(reason); | 1494 Throw(reason); |
| (...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1733 } | 1733 } |
| 1734 | 1734 |
| 1735 LeaveExitFrame(false, x1, !restore_context); | 1735 LeaveExitFrame(false, x1, !restore_context); |
| 1736 Drop(stack_space); | 1736 Drop(stack_space); |
| 1737 Ret(); | 1737 Ret(); |
| 1738 | 1738 |
| 1739 Bind(&promote_scheduled_exception); | 1739 Bind(&promote_scheduled_exception); |
| 1740 { | 1740 { |
| 1741 FrameScope frame(this, StackFrame::INTERNAL); | 1741 FrameScope frame(this, StackFrame::INTERNAL); |
| 1742 CallExternalReference( | 1742 CallExternalReference( |
| 1743 ExternalReference(Runtime::kPromoteScheduledException, isolate()), 0); | 1743 ExternalReference( |
| 1744 Runtime::kHiddenPromoteScheduledException, isolate()), 0); |
| 1744 } | 1745 } |
| 1745 B(&exception_handled); | 1746 B(&exception_handled); |
| 1746 | 1747 |
| 1747 // HandleScope limit has changed. Delete allocated extensions. | 1748 // HandleScope limit has changed. Delete allocated extensions. |
| 1748 Bind(&delete_allocated_handles); | 1749 Bind(&delete_allocated_handles); |
| 1749 Str(limit_reg, MemOperand(handle_scope_base, kLimitOffset)); | 1750 Str(limit_reg, MemOperand(handle_scope_base, kLimitOffset)); |
| 1750 // Save the return value in a callee-save register. | 1751 // Save the return value in a callee-save register. |
| 1751 Register saved_result = x19; | 1752 Register saved_result = x19; |
| 1752 Mov(saved_result, x0); | 1753 Mov(saved_result, x0); |
| 1753 Mov(x0, ExternalReference::isolate_address(isolate())); | 1754 Mov(x0, ExternalReference::isolate_address(isolate())); |
| (...skipping 3420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5174 } | 5175 } |
| 5175 } | 5176 } |
| 5176 | 5177 |
| 5177 | 5178 |
| 5178 #undef __ | 5179 #undef __ |
| 5179 | 5180 |
| 5180 | 5181 |
| 5181 } } // namespace v8::internal | 5182 } } // namespace v8::internal |
| 5182 | 5183 |
| 5183 #endif // V8_TARGET_ARCH_ARM64 | 5184 #endif // V8_TARGET_ARCH_ARM64 |
| OLD | NEW |