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 1104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1115 intptr_t pc_delta); | 1115 intptr_t pc_delta); |
1116 | 1116 |
1117 // Writes a single byte or word of data in the code stream. Used for | 1117 // Writes a single byte or word of data in the code stream. Used for |
1118 // inline tables, e.g., jump-tables. | 1118 // inline tables, e.g., jump-tables. |
1119 void db(uint8_t data); | 1119 void db(uint8_t data); |
1120 void dd(uint32_t data); | 1120 void dd(uint32_t data); |
1121 void dq(uint64_t data); | 1121 void dq(uint64_t data); |
1122 void dp(uintptr_t data) { dq(data); } | 1122 void dp(uintptr_t data) { dq(data); } |
1123 void dd(Label* label); | 1123 void dd(Label* label); |
1124 | 1124 |
1125 AssemblerPositionsRecorder* positions_recorder() { | |
1126 return &positions_recorder_; | |
1127 } | |
1128 | |
1129 // Postpone the generation of the trampoline pool for the specified number of | 1125 // Postpone the generation of the trampoline pool for the specified number of |
1130 // instructions. | 1126 // instructions. |
1131 void BlockTrampolinePoolFor(int instructions); | 1127 void BlockTrampolinePoolFor(int instructions); |
1132 | 1128 |
1133 // Check if there is less than kGap bytes available in the buffer. | 1129 // Check if there is less than kGap bytes available in the buffer. |
1134 // If this is the case, we need to grow the buffer before emitting | 1130 // If this is the case, we need to grow the buffer before emitting |
1135 // an instruction or relocation information. | 1131 // an instruction or relocation information. |
1136 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } | 1132 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } |
1137 | 1133 |
1138 // Get the number of bytes available in the buffer. | 1134 // Get the number of bytes available in the buffer. |
(...skipping 366 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1505 void ClearCompactBranchState() { prev_instr_compact_branch_ = false; } | 1501 void ClearCompactBranchState() { prev_instr_compact_branch_ = false; } |
1506 bool prev_instr_compact_branch_ = false; | 1502 bool prev_instr_compact_branch_ = false; |
1507 | 1503 |
1508 Trampoline trampoline_; | 1504 Trampoline trampoline_; |
1509 bool internal_trampoline_exception_; | 1505 bool internal_trampoline_exception_; |
1510 | 1506 |
1511 friend class RegExpMacroAssemblerMIPS; | 1507 friend class RegExpMacroAssemblerMIPS; |
1512 friend class RelocInfo; | 1508 friend class RelocInfo; |
1513 friend class CodePatcher; | 1509 friend class CodePatcher; |
1514 friend class BlockTrampolinePoolScope; | 1510 friend class BlockTrampolinePoolScope; |
1515 | |
1516 AssemblerPositionsRecorder positions_recorder_; | |
1517 friend class AssemblerPositionsRecorder; | |
1518 friend class EnsureSpace; | 1511 friend class EnsureSpace; |
1519 }; | 1512 }; |
1520 | 1513 |
1521 | 1514 |
1522 class EnsureSpace BASE_EMBEDDED { | 1515 class EnsureSpace BASE_EMBEDDED { |
1523 public: | 1516 public: |
1524 explicit EnsureSpace(Assembler* assembler) { | 1517 explicit EnsureSpace(Assembler* assembler) { |
1525 assembler->CheckBuffer(); | 1518 assembler->CheckBuffer(); |
1526 } | 1519 } |
1527 }; | 1520 }; |
1528 | 1521 |
1529 } // namespace internal | 1522 } // namespace internal |
1530 } // namespace v8 | 1523 } // namespace v8 |
1531 | 1524 |
1532 #endif // V8_ARM_ASSEMBLER_MIPS_H_ | 1525 #endif // V8_ARM_ASSEMBLER_MIPS_H_ |
OLD | NEW |