Chromium Code Reviews| 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 | 5 // modification, are permitted provided that the following conditions |
| 6 // are met: | 6 // are 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 792 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 803 | 803 |
| 804 // Distance between start of patched debug break slot and the emitted address | 804 // Distance between start of patched debug break slot and the emitted address |
| 805 // to jump to. | 805 // to jump to. |
| 806 // Patched debug break slot code is: | 806 // Patched debug break slot code is: |
| 807 // ldr ip, [pc, #0] @ emited address and start | 807 // ldr ip, [pc, #0] @ emited address and start |
| 808 // blx ip | 808 // blx ip |
| 809 static const int kPatchDebugBreakSlotAddressOffset = 0 * kInstrSize; | 809 static const int kPatchDebugBreakSlotAddressOffset = 0 * kInstrSize; |
| 810 | 810 |
| 811 static const int kPatchDebugBreakSlotReturnOffset = 2 * kInstrSize; | 811 static const int kPatchDebugBreakSlotReturnOffset = 2 * kInstrSize; |
| 812 | 812 |
| 813 // Return the code target address of the patch debug break slot | |
| 814 inline static Address break_address_from_break_address(Address pc); | |
|
rmcilroy
2014/07/30 10:05:36
Please use the INLINE() macro and move up to be be
andrew_low
2014/07/30 14:06:46
Done.
| |
| 815 | |
| 813 // Difference between address of current opcode and value read from pc | 816 // Difference between address of current opcode and value read from pc |
| 814 // register. | 817 // register. |
| 815 static const int kPcLoadDelta = 8; | 818 static const int kPcLoadDelta = 8; |
| 816 | 819 |
| 817 static const int kJSReturnSequenceInstructions = 4; | 820 static const int kJSReturnSequenceInstructions = 4; |
| 818 static const int kDebugBreakSlotInstructions = 3; | 821 static const int kDebugBreakSlotInstructions = 3; |
| 819 static const int kDebugBreakSlotLength = | 822 static const int kDebugBreakSlotLength = |
| 820 kDebugBreakSlotInstructions * kInstrSize; | 823 kDebugBreakSlotInstructions * kInstrSize; |
| 821 | 824 |
| 822 // --------------------------------------------------------------------------- | 825 // --------------------------------------------------------------------------- |
| (...skipping 801 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1624 public: | 1627 public: |
| 1625 explicit EnsureSpace(Assembler* assembler) { | 1628 explicit EnsureSpace(Assembler* assembler) { |
| 1626 assembler->CheckBuffer(); | 1629 assembler->CheckBuffer(); |
| 1627 } | 1630 } |
| 1628 }; | 1631 }; |
| 1629 | 1632 |
| 1630 | 1633 |
| 1631 } } // namespace v8::internal | 1634 } } // namespace v8::internal |
| 1632 | 1635 |
| 1633 #endif // V8_ARM_ASSEMBLER_ARM_H_ | 1636 #endif // V8_ARM_ASSEMBLER_ARM_H_ |
| OLD | NEW |