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_ARM_MACRO_ASSEMBLER_ARM_H_ | 5 #ifndef V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_ | 6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
7 | 7 |
8 #include "assembler.h" | 8 #include "assembler.h" |
9 #include "frames.h" | 9 #include "frames.h" |
10 #include "globals.h" | 10 #include "globals.h" |
(...skipping 613 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
624 // Must preserve the result register. | 624 // Must preserve the result register. |
625 void PopTryHandler(); | 625 void PopTryHandler(); |
626 | 626 |
627 // Passes thrown value to the handler of top of the try handler chain. | 627 // Passes thrown value to the handler of top of the try handler chain. |
628 void Throw(Register value); | 628 void Throw(Register value); |
629 | 629 |
630 // Propagates an uncatchable exception to the top of the current JS stack's | 630 // Propagates an uncatchable exception to the top of the current JS stack's |
631 // handler chain. | 631 // handler chain. |
632 void ThrowUncatchable(Register value); | 632 void ThrowUncatchable(Register value); |
633 | 633 |
634 // Throw a message string as an exception. | |
635 void Throw(BailoutReason reason); | |
636 | |
637 // Throw a message string as an exception if a condition is not true. | |
638 void ThrowIf(Condition cc, BailoutReason reason); | |
639 | |
640 // --------------------------------------------------------------------------- | 634 // --------------------------------------------------------------------------- |
641 // Inline caching support | 635 // Inline caching support |
642 | 636 |
643 // Generate code for checking access rights - used for security checks | 637 // Generate code for checking access rights - used for security checks |
644 // on access to global objects across environments. The holder register | 638 // on access to global objects across environments. The holder register |
645 // is left untouched, whereas both scratch registers are clobbered. | 639 // is left untouched, whereas both scratch registers are clobbered. |
646 void CheckAccessGlobalProxy(Register holder_reg, | 640 void CheckAccessGlobalProxy(Register holder_reg, |
647 Register scratch, | 641 Register scratch, |
648 Label* miss); | 642 Label* miss); |
649 | 643 |
(...skipping 951 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1601 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1595 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1602 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1596 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1603 #else | 1597 #else |
1604 #define ACCESS_MASM(masm) masm-> | 1598 #define ACCESS_MASM(masm) masm-> |
1605 #endif | 1599 #endif |
1606 | 1600 |
1607 | 1601 |
1608 } } // namespace v8::internal | 1602 } } // namespace v8::internal |
1609 | 1603 |
1610 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ | 1604 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ |
OLD | NEW |