| 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 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 #include "src/runtime/runtime.h" | 45 #include "src/runtime/runtime.h" |
| 46 | 46 |
| 47 namespace v8 { | 47 namespace v8 { |
| 48 | 48 |
| 49 // Forward declarations. | 49 // Forward declarations. |
| 50 class ApiFunction; | 50 class ApiFunction; |
| 51 | 51 |
| 52 namespace internal { | 52 namespace internal { |
| 53 | 53 |
| 54 // Forward declarations. | 54 // Forward declarations. |
| 55 class SourcePosition; |
| 55 class StatsCounter; | 56 class StatsCounter; |
| 56 | 57 |
| 57 // ----------------------------------------------------------------------------- | 58 // ----------------------------------------------------------------------------- |
| 58 // Platform independent assembler base class. | 59 // Platform independent assembler base class. |
| 59 | 60 |
| 60 enum class CodeObjectRequired { kNo, kYes }; | 61 enum class CodeObjectRequired { kNo, kYes }; |
| 61 | 62 |
| 62 | 63 |
| 63 class AssemblerBase: public Malloced { | 64 class AssemblerBase: public Malloced { |
| 64 public: | 65 public: |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 413 INTERNAL_REFERENCE_ENCODED, | 414 INTERNAL_REFERENCE_ENCODED, |
| 414 | 415 |
| 415 // Continuation points for a generator yield. | 416 // Continuation points for a generator yield. |
| 416 GENERATOR_CONTINUATION, | 417 GENERATOR_CONTINUATION, |
| 417 | 418 |
| 418 // Marks constant and veneer pools. Only used on ARM and ARM64. | 419 // Marks constant and veneer pools. Only used on ARM and ARM64. |
| 419 // They use a custom noncompact encoding. | 420 // They use a custom noncompact encoding. |
| 420 CONST_POOL, | 421 CONST_POOL, |
| 421 VENEER_POOL, | 422 VENEER_POOL, |
| 422 | 423 |
| 423 DEOPT_POSITION, // Deoptimization source position. | 424 DEOPT_SCRIPT_OFFSET, |
| 424 DEOPT_REASON, // Deoptimization reason index. | 425 DEOPT_INLINING_ID, // Deoptimization source position. |
| 425 DEOPT_ID, // Deoptimization inlining id. | 426 DEOPT_REASON, // Deoptimization reason index. |
| 427 DEOPT_ID, // Deoptimization inlining id. |
| 426 | 428 |
| 427 // This is not an actual reloc mode, but used to encode a long pc jump that | 429 // This is not an actual reloc mode, but used to encode a long pc jump that |
| 428 // cannot be encoded as part of another record. | 430 // cannot be encoded as part of another record. |
| 429 PC_JUMP, | 431 PC_JUMP, |
| 430 | 432 |
| 431 // Pseudo-types | 433 // Pseudo-types |
| 432 NUMBER_OF_MODES, | 434 NUMBER_OF_MODES, |
| 433 NONE32, // never recorded 32-bit value | 435 NONE32, // never recorded 32-bit value |
| 434 NONE64, // never recorded 64-bit value | 436 NONE64, // never recorded 64-bit value |
| 435 CODE_AGE_SEQUENCE, // Not stored in RelocInfo array, used explictly by | 437 CODE_AGE_SEQUENCE, // Not stored in RelocInfo array, used explictly by |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 473 static inline bool IsComment(Mode mode) { | 475 static inline bool IsComment(Mode mode) { |
| 474 return mode == COMMENT; | 476 return mode == COMMENT; |
| 475 } | 477 } |
| 476 static inline bool IsConstPool(Mode mode) { | 478 static inline bool IsConstPool(Mode mode) { |
| 477 return mode == CONST_POOL; | 479 return mode == CONST_POOL; |
| 478 } | 480 } |
| 479 static inline bool IsVeneerPool(Mode mode) { | 481 static inline bool IsVeneerPool(Mode mode) { |
| 480 return mode == VENEER_POOL; | 482 return mode == VENEER_POOL; |
| 481 } | 483 } |
| 482 static inline bool IsDeoptPosition(Mode mode) { | 484 static inline bool IsDeoptPosition(Mode mode) { |
| 483 return mode == DEOPT_POSITION; | 485 return mode == DEOPT_SCRIPT_OFFSET || mode == DEOPT_INLINING_ID; |
| 484 } | 486 } |
| 485 static inline bool IsDeoptReason(Mode mode) { | 487 static inline bool IsDeoptReason(Mode mode) { |
| 486 return mode == DEOPT_REASON; | 488 return mode == DEOPT_REASON; |
| 487 } | 489 } |
| 488 static inline bool IsDeoptId(Mode mode) { | 490 static inline bool IsDeoptId(Mode mode) { |
| 489 return mode == DEOPT_ID; | 491 return mode == DEOPT_ID; |
| 490 } | 492 } |
| 491 static inline bool IsExternalReference(Mode mode) { | 493 static inline bool IsExternalReference(Mode mode) { |
| 492 return mode == EXTERNAL_REFERENCE; | 494 return mode == EXTERNAL_REFERENCE; |
| 493 } | 495 } |
| (...skipping 786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1280 std::vector<ConstantPoolEntry> shared_entries; | 1282 std::vector<ConstantPoolEntry> shared_entries; |
| 1281 }; | 1283 }; |
| 1282 | 1284 |
| 1283 Label emitted_label_; // Records pc_offset of emitted pool | 1285 Label emitted_label_; // Records pc_offset of emitted pool |
| 1284 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES]; | 1286 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES]; |
| 1285 }; | 1287 }; |
| 1286 | 1288 |
| 1287 } // namespace internal | 1289 } // namespace internal |
| 1288 } // namespace v8 | 1290 } // namespace v8 |
| 1289 #endif // V8_ASSEMBLER_H_ | 1291 #endif // V8_ASSEMBLER_H_ |
| OLD | NEW |