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

Side by Side Diff: src/x87/assembler-x87.h

Issue 1474323002: Delete Assembler::FlushICacheWithoutIsolate (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: updates Created 5 years 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/x64/assembler-x64-inl.h ('k') | src/x87/assembler-x87-inl.h » ('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 465 matching lines...) Expand 10 before | Expand all | Expand 10 after
476 virtual ~Assembler() { } 476 virtual ~Assembler() { }
477 477
478 // GetCode emits any pending (non-emitted) code and fills the descriptor 478 // GetCode emits any pending (non-emitted) code and fills the descriptor
479 // desc. GetCode() is idempotent; it returns the same result if no other 479 // desc. GetCode() is idempotent; it returns the same result if no other
480 // Assembler functions are invoked in between GetCode() calls. 480 // Assembler functions are invoked in between GetCode() calls.
481 void GetCode(CodeDesc* desc); 481 void GetCode(CodeDesc* desc);
482 482
483 // Read/Modify the code target in the branch/call instruction at pc. 483 // Read/Modify the code target in the branch/call instruction at pc.
484 inline static Address target_address_at(Address pc, Address constant_pool); 484 inline static Address target_address_at(Address pc, Address constant_pool);
485 inline static void set_target_address_at( 485 inline static void set_target_address_at(
486 Address pc, Address constant_pool, Address target, 486 Isolate* isolate, Address pc, Address constant_pool, Address target,
487 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED); 487 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED);
488 static inline Address target_address_at(Address pc, Code* code) { 488 static inline Address target_address_at(Address pc, Code* code) {
489 Address constant_pool = code ? code->constant_pool() : NULL; 489 Address constant_pool = code ? code->constant_pool() : NULL;
490 return target_address_at(pc, constant_pool); 490 return target_address_at(pc, constant_pool);
491 } 491 }
492 static inline void set_target_address_at(Address pc, 492 static inline void set_target_address_at(
493 Code* code, 493 Isolate* isolate, Address pc, Code* code, Address target,
494 Address target, 494 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED) {
495 ICacheFlushMode icache_flush_mode =
496 FLUSH_ICACHE_IF_NEEDED) {
497 Address constant_pool = code ? code->constant_pool() : NULL; 495 Address constant_pool = code ? code->constant_pool() : NULL;
498 set_target_address_at(pc, constant_pool, target); 496 set_target_address_at(isolate, pc, constant_pool, target);
499 } 497 }
500 498
501 // Return the code target address at a call site from the return address 499 // Return the code target address at a call site from the return address
502 // of that call in the instruction stream. 500 // of that call in the instruction stream.
503 inline static Address target_address_from_return_address(Address pc); 501 inline static Address target_address_from_return_address(Address pc);
504 502
505 // This sets the branch destination (which is in the instruction on x86). 503 // This sets the branch destination (which is in the instruction on x86).
506 // This is for calls and branches within generated code. 504 // This is for calls and branches within generated code.
507 inline static void deserialization_set_special_target_at( 505 inline static void deserialization_set_special_target_at(
508 Address instruction_payload, Code* code, Address target) { 506 Isolate* isolate, Address instruction_payload, Code* code,
509 set_target_address_at(instruction_payload, code, target); 507 Address target) {
508 set_target_address_at(isolate, instruction_payload, code, target);
510 } 509 }
511 510
512 // This sets the internal reference at the pc. 511 // This sets the internal reference at the pc.
513 inline static void deserialization_set_target_internal_reference_at( 512 inline static void deserialization_set_target_internal_reference_at(
514 Address pc, Address target, 513 Isolate* isolate, Address pc, Address target,
515 RelocInfo::Mode mode = RelocInfo::INTERNAL_REFERENCE); 514 RelocInfo::Mode mode = RelocInfo::INTERNAL_REFERENCE);
516 515
517 static const int kSpecialTargetSize = kPointerSize; 516 static const int kSpecialTargetSize = kPointerSize;
518 517
519 // Distance between the address of the code target in the call instruction 518 // Distance between the address of the code target in the call instruction
520 // and the return address 519 // and the return address
521 static const int kCallTargetAddressOffset = kPointerSize; 520 static const int kCallTargetAddressOffset = kPointerSize;
522 521
523 static const int kCallInstructionLength = 5; 522 static const int kCallInstructionLength = 5;
524 523
(...skipping 549 matching lines...) Expand 10 before | Expand all | Expand 10 after
1074 Assembler* assembler_; 1073 Assembler* assembler_;
1075 #ifdef DEBUG 1074 #ifdef DEBUG
1076 int space_before_; 1075 int space_before_;
1077 #endif 1076 #endif
1078 }; 1077 };
1079 1078
1080 } // namespace internal 1079 } // namespace internal
1081 } // namespace v8 1080 } // namespace v8
1082 1081
1083 #endif // V8_X87_ASSEMBLER_X87_H_ 1082 #endif // V8_X87_ASSEMBLER_X87_H_
OLDNEW
« no previous file with comments | « src/x64/assembler-x64-inl.h ('k') | src/x87/assembler-x87-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698