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

Side by Side Diff: src/mips/assembler-mips-inl.h

Issue 11574027: Use direct jump and call instruction for X64 when the deoptimization entries are in the code range (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 7 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « src/ia32/assembler-ia32-inl.h ('k') | src/objects.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 1
2 // Copyright (c) 1994-2006 Sun Microsystems Inc. 2 // Copyright (c) 1994-2006 Sun Microsystems Inc.
3 // All Rights Reserved. 3 // All Rights Reserved.
4 // 4 //
5 // Redistribution and use in source and binary forms, with or without 5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are 6 // modification, are permitted provided that the following conditions are
7 // met: 7 // met:
8 // 8 //
9 // - Redistributions of source code must retain the above copyright notice, 9 // - Redistributions of source code must retain the above copyright notice,
10 // this list of conditions and the following disclaimer. 10 // this list of conditions and the following disclaimer.
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 } 224 }
225 225
226 226
227 Address* RelocInfo::target_reference_address() { 227 Address* RelocInfo::target_reference_address() {
228 ASSERT(rmode_ == EXTERNAL_REFERENCE); 228 ASSERT(rmode_ == EXTERNAL_REFERENCE);
229 reconstructed_adr_ptr_ = Assembler::target_address_at(pc_); 229 reconstructed_adr_ptr_ = Assembler::target_address_at(pc_);
230 return &reconstructed_adr_ptr_; 230 return &reconstructed_adr_ptr_;
231 } 231 }
232 232
233 233
234 Address RelocInfo::target_runtime_entry(Assembler* origin) {
235 ASSERT(IsRuntimeEntry(rmode_));
236 return target_address();
237 }
238
239
240 void RelocInfo::set_target_runtime_entry(Address target,
241 WriteBarrierMode mode) {
242 ASSERT(IsRuntimeEntry(rmode_));
243 if (target_address() != target) set_target_address(target, mode);
244 }
245
246
234 Handle<JSGlobalPropertyCell> RelocInfo::target_cell_handle() { 247 Handle<JSGlobalPropertyCell> RelocInfo::target_cell_handle() {
235 ASSERT(rmode_ == RelocInfo::GLOBAL_PROPERTY_CELL); 248 ASSERT(rmode_ == RelocInfo::GLOBAL_PROPERTY_CELL);
236 Address address = Memory::Address_at(pc_); 249 Address address = Memory::Address_at(pc_);
237 return Handle<JSGlobalPropertyCell>( 250 return Handle<JSGlobalPropertyCell>(
238 reinterpret_cast<JSGlobalPropertyCell**>(address)); 251 reinterpret_cast<JSGlobalPropertyCell**>(address));
239 } 252 }
240 253
241 254
242 JSGlobalPropertyCell* RelocInfo::target_cell() { 255 JSGlobalPropertyCell* RelocInfo::target_cell() {
243 ASSERT(rmode_ == RelocInfo::GLOBAL_PROPERTY_CELL); 256 ASSERT(rmode_ == RelocInfo::GLOBAL_PROPERTY_CELL);
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 } 429 }
417 *reinterpret_cast<Instr*>(pc_) = x; 430 *reinterpret_cast<Instr*>(pc_) = x;
418 pc_ += kInstrSize; 431 pc_ += kInstrSize;
419 CheckTrampolinePoolQuick(); 432 CheckTrampolinePoolQuick();
420 } 433 }
421 434
422 435
423 } } // namespace v8::internal 436 } } // namespace v8::internal
424 437
425 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_ 438 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_
OLDNEW
« no previous file with comments | « src/ia32/assembler-ia32-inl.h ('k') | src/objects.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698