Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(15)

Side by Side Diff: src/assembler.h

Issue 1847373002: [debugger] fix step-next for tail calls. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fix reloc info Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/arm64/assembler-arm64.cc ('k') | src/assembler.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 380 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 // Everything after runtime_entry (inclusive) is not GC'ed. 391 // Everything after runtime_entry (inclusive) is not GC'ed.
392 RUNTIME_ENTRY, 392 RUNTIME_ENTRY,
393 COMMENT, 393 COMMENT,
394 POSITION, // See comment for kNoPosition above. 394 POSITION, // See comment for kNoPosition above.
395 STATEMENT_POSITION, // See comment for kNoPosition above. 395 STATEMENT_POSITION, // See comment for kNoPosition above.
396 396
397 // Additional code inserted for debug break slot. 397 // Additional code inserted for debug break slot.
398 DEBUG_BREAK_SLOT_AT_POSITION, 398 DEBUG_BREAK_SLOT_AT_POSITION,
399 DEBUG_BREAK_SLOT_AT_RETURN, 399 DEBUG_BREAK_SLOT_AT_RETURN,
400 DEBUG_BREAK_SLOT_AT_CALL, 400 DEBUG_BREAK_SLOT_AT_CALL,
401 DEBUG_BREAK_SLOT_AT_TAIL_CALL,
401 402
402 EXTERNAL_REFERENCE, // The address of an external C++ function. 403 EXTERNAL_REFERENCE, // The address of an external C++ function.
403 INTERNAL_REFERENCE, // An address inside the same function. 404 INTERNAL_REFERENCE, // An address inside the same function.
404 405
405 // Encoded internal reference, used only on MIPS, MIPS64 and PPC. 406 // Encoded internal reference, used only on MIPS, MIPS64 and PPC.
406 INTERNAL_REFERENCE_ENCODED, 407 INTERNAL_REFERENCE_ENCODED,
407 408
408 // Continuation points for a generator yield. 409 // Continuation points for a generator yield.
409 GENERATOR_CONTINUATION, 410 GENERATOR_CONTINUATION,
410 411
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
484 return mode == EXTERNAL_REFERENCE; 485 return mode == EXTERNAL_REFERENCE;
485 } 486 }
486 static inline bool IsInternalReference(Mode mode) { 487 static inline bool IsInternalReference(Mode mode) {
487 return mode == INTERNAL_REFERENCE; 488 return mode == INTERNAL_REFERENCE;
488 } 489 }
489 static inline bool IsInternalReferenceEncoded(Mode mode) { 490 static inline bool IsInternalReferenceEncoded(Mode mode) {
490 return mode == INTERNAL_REFERENCE_ENCODED; 491 return mode == INTERNAL_REFERENCE_ENCODED;
491 } 492 }
492 static inline bool IsDebugBreakSlot(Mode mode) { 493 static inline bool IsDebugBreakSlot(Mode mode) {
493 return IsDebugBreakSlotAtPosition(mode) || IsDebugBreakSlotAtReturn(mode) || 494 return IsDebugBreakSlotAtPosition(mode) || IsDebugBreakSlotAtReturn(mode) ||
494 IsDebugBreakSlotAtCall(mode); 495 IsDebugBreakSlotAtCall(mode) || IsDebugBreakSlotAtTailCall(mode);
495 } 496 }
496 static inline bool IsDebugBreakSlotAtPosition(Mode mode) { 497 static inline bool IsDebugBreakSlotAtPosition(Mode mode) {
497 return mode == DEBUG_BREAK_SLOT_AT_POSITION; 498 return mode == DEBUG_BREAK_SLOT_AT_POSITION;
498 } 499 }
499 static inline bool IsDebugBreakSlotAtReturn(Mode mode) { 500 static inline bool IsDebugBreakSlotAtReturn(Mode mode) {
500 return mode == DEBUG_BREAK_SLOT_AT_RETURN; 501 return mode == DEBUG_BREAK_SLOT_AT_RETURN;
501 } 502 }
502 static inline bool IsDebugBreakSlotAtCall(Mode mode) { 503 static inline bool IsDebugBreakSlotAtCall(Mode mode) {
503 return mode == DEBUG_BREAK_SLOT_AT_CALL; 504 return mode == DEBUG_BREAK_SLOT_AT_CALL;
504 } 505 }
506 static inline bool IsDebugBreakSlotAtTailCall(Mode mode) {
507 return mode == DEBUG_BREAK_SLOT_AT_TAIL_CALL;
508 }
505 static inline bool IsDebuggerStatement(Mode mode) { 509 static inline bool IsDebuggerStatement(Mode mode) {
506 return mode == DEBUGGER_STATEMENT; 510 return mode == DEBUGGER_STATEMENT;
507 } 511 }
508 static inline bool IsNone(Mode mode) { 512 static inline bool IsNone(Mode mode) {
509 return mode == NONE32 || mode == NONE64; 513 return mode == NONE32 || mode == NONE64;
510 } 514 }
511 static inline bool IsCodeAgeSequence(Mode mode) { 515 static inline bool IsCodeAgeSequence(Mode mode) {
512 return mode == CODE_AGE_SEQUENCE; 516 return mode == CODE_AGE_SEQUENCE;
513 } 517 }
514 static inline bool IsGeneratorContinuation(Mode mode) { 518 static inline bool IsGeneratorContinuation(Mode mode) {
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after
1315 std::vector<ConstantPoolEntry> shared_entries; 1319 std::vector<ConstantPoolEntry> shared_entries;
1316 }; 1320 };
1317 1321
1318 Label emitted_label_; // Records pc_offset of emitted pool 1322 Label emitted_label_; // Records pc_offset of emitted pool
1319 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES]; 1323 PerTypeEntryInfo info_[ConstantPoolEntry::NUMBER_OF_TYPES];
1320 }; 1324 };
1321 1325
1322 } // namespace internal 1326 } // namespace internal
1323 } // namespace v8 1327 } // namespace v8
1324 #endif // V8_ASSEMBLER_H_ 1328 #endif // V8_ASSEMBLER_H_
OLDNEW
« no previous file with comments | « src/arm64/assembler-arm64.cc ('k') | src/assembler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698