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

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

Issue 2810653002: Add a host parameter to ObjectVisitor methods. (Closed)
Patch Set: rebase Created 3 years, 7 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/heap/scavenger.cc ('k') | src/mips/assembler-mips-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 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 pc_ + sizeof(int32_t)); 241 pc_ + sizeof(int32_t));
242 } else { 242 } else {
243 UNREACHABLE(); 243 UNREACHABLE();
244 } 244 }
245 } 245 }
246 246
247 template <typename ObjectVisitor> 247 template <typename ObjectVisitor>
248 void RelocInfo::Visit(Isolate* isolate, ObjectVisitor* visitor) { 248 void RelocInfo::Visit(Isolate* isolate, ObjectVisitor* visitor) {
249 RelocInfo::Mode mode = rmode(); 249 RelocInfo::Mode mode = rmode();
250 if (mode == RelocInfo::EMBEDDED_OBJECT) { 250 if (mode == RelocInfo::EMBEDDED_OBJECT) {
251 visitor->VisitEmbeddedPointer(this); 251 visitor->VisitEmbeddedPointer(host(), this);
252 Assembler::FlushICache(isolate, pc_, sizeof(Address)); 252 Assembler::FlushICache(isolate, pc_, sizeof(Address));
253 } else if (RelocInfo::IsCodeTarget(mode)) { 253 } else if (RelocInfo::IsCodeTarget(mode)) {
254 visitor->VisitCodeTarget(this); 254 visitor->VisitCodeTarget(host(), this);
255 } else if (mode == RelocInfo::CELL) { 255 } else if (mode == RelocInfo::CELL) {
256 visitor->VisitCell(this); 256 visitor->VisitCellPointer(host(), this);
257 } else if (mode == RelocInfo::EXTERNAL_REFERENCE) { 257 } else if (mode == RelocInfo::EXTERNAL_REFERENCE) {
258 visitor->VisitExternalReference(this); 258 visitor->VisitExternalReference(host(), this);
259 } else if (mode == RelocInfo::INTERNAL_REFERENCE) { 259 } else if (mode == RelocInfo::INTERNAL_REFERENCE) {
260 visitor->VisitInternalReference(this); 260 visitor->VisitInternalReference(host(), this);
261 } else if (RelocInfo::IsCodeAgeSequence(mode)) { 261 } else if (RelocInfo::IsCodeAgeSequence(mode)) {
262 visitor->VisitCodeAgeSequence(this); 262 visitor->VisitCodeAgeSequence(host(), this);
263 } else if (RelocInfo::IsDebugBreakSlot(mode) && 263 } else if (RelocInfo::IsDebugBreakSlot(mode) &&
264 IsPatchedDebugBreakSlotSequence()) { 264 IsPatchedDebugBreakSlotSequence()) {
265 visitor->VisitDebugTarget(this); 265 visitor->VisitDebugTarget(host(), this);
266 } else if (IsRuntimeEntry(mode)) { 266 } else if (IsRuntimeEntry(mode)) {
267 visitor->VisitRuntimeEntry(this); 267 visitor->VisitRuntimeEntry(host(), this);
268 } 268 }
269 } 269 }
270 270
271 271
272 template<typename StaticVisitor> 272 template<typename StaticVisitor>
273 void RelocInfo::Visit(Heap* heap) { 273 void RelocInfo::Visit(Heap* heap) {
274 RelocInfo::Mode mode = rmode(); 274 RelocInfo::Mode mode = rmode();
275 if (mode == RelocInfo::EMBEDDED_OBJECT) { 275 if (mode == RelocInfo::EMBEDDED_OBJECT) {
276 StaticVisitor::VisitEmbeddedPointer(heap, this); 276 StaticVisitor::VisitEmbeddedPointer(heap, this);
277 Assembler::FlushICache(heap->isolate(), pc_, sizeof(Address)); 277 Assembler::FlushICache(heap->isolate(), pc_, sizeof(Address));
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
544 544
545 Operand::Operand(Immediate imm) { 545 Operand::Operand(Immediate imm) {
546 // [disp/r] 546 // [disp/r]
547 set_modrm(0, ebp); 547 set_modrm(0, ebp);
548 set_dispr(imm.x_, imm.rmode_); 548 set_dispr(imm.x_, imm.rmode_);
549 } 549 }
550 } // namespace internal 550 } // namespace internal
551 } // namespace v8 551 } // namespace v8
552 552
553 #endif // V8_IA32_ASSEMBLER_IA32_INL_H_ 553 #endif // V8_IA32_ASSEMBLER_IA32_INL_H_
OLDNEW
« no previous file with comments | « src/heap/scavenger.cc ('k') | src/mips/assembler-mips-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698