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

Side by Side Diff: src/assembler.h

Issue 1235603002: Debugger: make debug code on-stack replacement more robust. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: rebase Created 5 years, 5 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/full-codegen-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 368 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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_
OLDNEW
« no previous file with comments | « src/arm64/full-codegen-arm64.cc ('k') | src/assembler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698