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 1188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1199 | 1199 |
1200 void EndBlockGrowBuffer() { | 1200 void EndBlockGrowBuffer() { |
1201 DCHECK(block_buffer_growth_); | 1201 DCHECK(block_buffer_growth_); |
1202 block_buffer_growth_ = false; | 1202 block_buffer_growth_ = false; |
1203 } | 1203 } |
1204 | 1204 |
1205 bool is_buffer_growth_blocked() const { | 1205 bool is_buffer_growth_blocked() const { |
1206 return block_buffer_growth_; | 1206 return block_buffer_growth_; |
1207 } | 1207 } |
1208 | 1208 |
| 1209 void EmitForbiddenSlotInstruction() { |
| 1210 if (IsPrevInstrCompactBranch()) { |
| 1211 nop(); |
| 1212 } |
| 1213 } |
| 1214 |
1209 inline void CheckTrampolinePoolQuick(int extra_instructions = 0); | 1215 inline void CheckTrampolinePoolQuick(int extra_instructions = 0); |
1210 | 1216 |
1211 private: | 1217 private: |
1212 inline static void set_target_internal_reference_encoded_at(Address pc, | 1218 inline static void set_target_internal_reference_encoded_at(Address pc, |
1213 Address target); | 1219 Address target); |
1214 | 1220 |
1215 // Buffer size and constant pool distance are checked together at regular | 1221 // Buffer size and constant pool distance are checked together at regular |
1216 // intervals of kBufferCheckInterval emitted bytes. | 1222 // intervals of kBufferCheckInterval emitted bytes. |
1217 static const int kBufferCheckInterval = 1*KB/2; | 1223 static const int kBufferCheckInterval = 1*KB/2; |
1218 | 1224 |
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1432 public: | 1438 public: |
1433 explicit EnsureSpace(Assembler* assembler) { | 1439 explicit EnsureSpace(Assembler* assembler) { |
1434 assembler->CheckBuffer(); | 1440 assembler->CheckBuffer(); |
1435 } | 1441 } |
1436 }; | 1442 }; |
1437 | 1443 |
1438 } // namespace internal | 1444 } // namespace internal |
1439 } // namespace v8 | 1445 } // namespace v8 |
1440 | 1446 |
1441 #endif // V8_ARM_ASSEMBLER_MIPS_H_ | 1447 #endif // V8_ARM_ASSEMBLER_MIPS_H_ |
OLD | NEW |