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

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
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 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 } 195 }
196 196
197 197
198 Handle<Object> RelocInfo::target_object_handle(Assembler* origin) { 198 Handle<Object> RelocInfo::target_object_handle(Assembler* origin) {
199 ASSERT(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT); 199 ASSERT(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT);
200 return Handle<Object>(reinterpret_cast<Object**>( 200 return Handle<Object>(reinterpret_cast<Object**>(
201 Assembler::target_address_at(pc_))); 201 Assembler::target_address_at(pc_)));
202 } 202 }
203 203
204 204
205 bool RelocInfo::NeedsInitializeRuntimeEntry() {
206 return false;
207 }
208
209
210 Address RelocInfo::target_runtime_entry() {
211 UNREACHABLE();
212 return NULL;
213 }
214
215
205 Object** RelocInfo::target_object_address() { 216 Object** RelocInfo::target_object_address() {
206 // Provide a "natural pointer" to the embedded object, 217 // Provide a "natural pointer" to the embedded object,
207 // which can be de-referenced during heap iteration. 218 // which can be de-referenced during heap iteration.
208 ASSERT(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT); 219 ASSERT(IsCodeTarget(rmode_) || rmode_ == EMBEDDED_OBJECT);
209 reconstructed_obj_ptr_ = 220 reconstructed_obj_ptr_ =
210 reinterpret_cast<Object*>(Assembler::target_address_at(pc_)); 221 reinterpret_cast<Object*>(Assembler::target_address_at(pc_));
211 return &reconstructed_obj_ptr_; 222 return &reconstructed_obj_ptr_;
212 } 223 }
213 224
214 225
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
416 } 427 }
417 *reinterpret_cast<Instr*>(pc_) = x; 428 *reinterpret_cast<Instr*>(pc_) = x;
418 pc_ += kInstrSize; 429 pc_ += kInstrSize;
419 CheckTrampolinePoolQuick(); 430 CheckTrampolinePoolQuick();
420 } 431 }
421 432
422 433
423 } } // namespace v8::internal 434 } } // namespace v8::internal
424 435
425 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_ 436 #endif // V8_MIPS_ASSEMBLER_MIPS_INL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698