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 368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
379 DEBUG_BREAK_SLOT_AT_POSITION, | 379 DEBUG_BREAK_SLOT_AT_POSITION, |
380 DEBUG_BREAK_SLOT_AT_CALL, | 380 DEBUG_BREAK_SLOT_AT_CALL, |
381 DEBUG_BREAK_SLOT_AT_CONSTRUCT_CALL, | 381 DEBUG_BREAK_SLOT_AT_CONSTRUCT_CALL, |
382 | 382 |
383 EXTERNAL_REFERENCE, // The address of an external C++ function. | 383 EXTERNAL_REFERENCE, // The address of an external C++ function. |
384 INTERNAL_REFERENCE, // An address inside the same function. | 384 INTERNAL_REFERENCE, // An address inside the same function. |
385 | 385 |
386 // Encoded internal reference, used only on MIPS, MIPS64 and PPC. | 386 // Encoded internal reference, used only on MIPS, MIPS64 and PPC. |
387 INTERNAL_REFERENCE_ENCODED, | 387 INTERNAL_REFERENCE_ENCODED, |
388 | 388 |
| 389 // Continuation points for a generator yield. |
| 390 GENERATOR_CONTINUATION, |
| 391 |
389 // Marks constant and veneer pools. Only used on ARM and ARM64. | 392 // Marks constant and veneer pools. Only used on ARM and ARM64. |
390 // They use a custom noncompact encoding. | 393 // They use a custom noncompact encoding. |
391 CONST_POOL, | 394 CONST_POOL, |
392 VENEER_POOL, | 395 VENEER_POOL, |
393 | 396 |
394 DEOPT_REASON, // Deoptimization reason index. | 397 DEOPT_REASON, // Deoptimization reason index. |
395 | 398 |
396 // This is not an actual reloc mode, but used to encode a long pc jump that | 399 // This is not an actual reloc mode, but used to encode a long pc jump that |
397 // cannot be encoded as part of another record. | 400 // cannot be encoded as part of another record. |
398 PC_JUMP, | 401 PC_JUMP, |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
484 } | 487 } |
485 static inline bool IsDebuggerStatement(Mode mode) { | 488 static inline bool IsDebuggerStatement(Mode mode) { |
486 return mode == DEBUGGER_STATEMENT; | 489 return mode == DEBUGGER_STATEMENT; |
487 } | 490 } |
488 static inline bool IsNone(Mode mode) { | 491 static inline bool IsNone(Mode mode) { |
489 return mode == NONE32 || mode == NONE64; | 492 return mode == NONE32 || mode == NONE64; |
490 } | 493 } |
491 static inline bool IsCodeAgeSequence(Mode mode) { | 494 static inline bool IsCodeAgeSequence(Mode mode) { |
492 return mode == CODE_AGE_SEQUENCE; | 495 return mode == CODE_AGE_SEQUENCE; |
493 } | 496 } |
| 497 static inline bool IsGeneratorContinuation(Mode mode) { |
| 498 return mode == GENERATOR_CONTINUATION; |
| 499 } |
494 static inline int ModeMask(Mode mode) { return 1 << mode; } | 500 static inline int ModeMask(Mode mode) { return 1 << mode; } |
495 | 501 |
496 // Accessors | 502 // Accessors |
497 byte* pc() const { return pc_; } | 503 byte* pc() const { return pc_; } |
498 void set_pc(byte* pc) { pc_ = pc; } | 504 void set_pc(byte* pc) { pc_ = pc; } |
499 Mode rmode() const { return rmode_; } | 505 Mode rmode() const { return rmode_; } |
500 intptr_t data() const { return data_; } | 506 intptr_t data() const { return data_; } |
501 Code* host() const { return host_; } | 507 Code* host() const { return host_; } |
502 void set_host(Code* host) { host_ = host; } | 508 void set_host(Code* host) { host_ = host; } |
503 | 509 |
(...skipping 760 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1264 }; | 1270 }; |
1265 | 1271 |
1266 Label emitted_label_; // Records pc_offset of emitted pool | 1272 Label emitted_label_; // Records pc_offset of emitted pool |
1267 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES]; | 1273 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES]; |
1268 }; | 1274 }; |
1269 | 1275 |
1270 | 1276 |
1271 } } // namespace v8::internal | 1277 } } // namespace v8::internal |
1272 | 1278 |
1273 #endif // V8_ASSEMBLER_H_ | 1279 #endif // V8_ASSEMBLER_H_ |
OLD | NEW |