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 1030 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1041 intptr_t pc_delta); | 1041 intptr_t pc_delta); |
1042 | 1042 |
1043 // Writes a single byte or word of data in the code stream. Used for | 1043 // Writes a single byte or word of data in the code stream. Used for |
1044 // inline tables, e.g., jump-tables. | 1044 // inline tables, e.g., jump-tables. |
1045 void db(uint8_t data); | 1045 void db(uint8_t data); |
1046 void dd(uint32_t data); | 1046 void dd(uint32_t data); |
1047 void dq(uint64_t data); | 1047 void dq(uint64_t data); |
1048 void dp(uintptr_t data) { dd(data); } | 1048 void dp(uintptr_t data) { dd(data); } |
1049 void dd(Label* label); | 1049 void dd(Label* label); |
1050 | 1050 |
1051 PositionsRecorder* positions_recorder() { return &positions_recorder_; } | 1051 AssemblerPositionsRecorder* positions_recorder() { |
| 1052 return &positions_recorder_; |
| 1053 } |
1052 | 1054 |
1053 // Postpone the generation of the trampoline pool for the specified number of | 1055 // Postpone the generation of the trampoline pool for the specified number of |
1054 // instructions. | 1056 // instructions. |
1055 void BlockTrampolinePoolFor(int instructions); | 1057 void BlockTrampolinePoolFor(int instructions); |
1056 | 1058 |
1057 // Check if there is less than kGap bytes available in the buffer. | 1059 // Check if there is less than kGap bytes available in the buffer. |
1058 // If this is the case, we need to grow the buffer before emitting | 1060 // If this is the case, we need to grow the buffer before emitting |
1059 // an instruction or relocation information. | 1061 // an instruction or relocation information. |
1060 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } | 1062 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } |
1061 | 1063 |
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1434 bool prev_instr_compact_branch_ = false; | 1436 bool prev_instr_compact_branch_ = false; |
1435 | 1437 |
1436 Trampoline trampoline_; | 1438 Trampoline trampoline_; |
1437 bool internal_trampoline_exception_; | 1439 bool internal_trampoline_exception_; |
1438 | 1440 |
1439 friend class RegExpMacroAssemblerMIPS; | 1441 friend class RegExpMacroAssemblerMIPS; |
1440 friend class RelocInfo; | 1442 friend class RelocInfo; |
1441 friend class CodePatcher; | 1443 friend class CodePatcher; |
1442 friend class BlockTrampolinePoolScope; | 1444 friend class BlockTrampolinePoolScope; |
1443 | 1445 |
1444 PositionsRecorder positions_recorder_; | 1446 AssemblerPositionsRecorder positions_recorder_; |
1445 friend class PositionsRecorder; | 1447 friend class AssemblerPositionsRecorder; |
1446 friend class EnsureSpace; | 1448 friend class EnsureSpace; |
1447 }; | 1449 }; |
1448 | 1450 |
1449 | 1451 |
1450 class EnsureSpace BASE_EMBEDDED { | 1452 class EnsureSpace BASE_EMBEDDED { |
1451 public: | 1453 public: |
1452 explicit EnsureSpace(Assembler* assembler) { | 1454 explicit EnsureSpace(Assembler* assembler) { |
1453 assembler->CheckBuffer(); | 1455 assembler->CheckBuffer(); |
1454 } | 1456 } |
1455 }; | 1457 }; |
1456 | 1458 |
1457 } // namespace internal | 1459 } // namespace internal |
1458 } // namespace v8 | 1460 } // namespace v8 |
1459 | 1461 |
1460 #endif // V8_ARM_ASSEMBLER_MIPS_H_ | 1462 #endif // V8_ARM_ASSEMBLER_MIPS_H_ |
OLD | NEW |