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

Side by Side Diff: src/arm64/codegen-arm64.cc

Issue 1474763008: Always pass an Isolate to AssemblerBase (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/arm64/code-stubs-arm64.h ('k') | src/arm64/deoptimizer-arm64.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 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/arm64/codegen-arm64.h" 5 #include "src/arm64/codegen-arm64.h"
6 6
7 #if V8_TARGET_ARCH_ARM64 7 #if V8_TARGET_ARCH_ARM64
8 8
9 #include "src/arm64/simulator-arm64.h" 9 #include "src/arm64/simulator-arm64.h"
10 #include "src/codegen.h" 10 #include "src/codegen.h"
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
366 OMIT_SMI_CHECK); 366 OMIT_SMI_CHECK);
367 } 367 }
368 368
369 369
370 CodeAgingHelper::CodeAgingHelper(Isolate* isolate) { 370 CodeAgingHelper::CodeAgingHelper(Isolate* isolate) {
371 USE(isolate); 371 USE(isolate);
372 DCHECK(young_sequence_.length() == kNoCodeAgeSequenceLength); 372 DCHECK(young_sequence_.length() == kNoCodeAgeSequenceLength);
373 // The sequence of instructions that is patched out for aging code is the 373 // The sequence of instructions that is patched out for aging code is the
374 // following boilerplate stack-building prologue that is found both in 374 // following boilerplate stack-building prologue that is found both in
375 // FUNCTION and OPTIMIZED_FUNCTION code: 375 // FUNCTION and OPTIMIZED_FUNCTION code:
376 PatchingAssembler patcher(young_sequence_.start(), 376 PatchingAssembler patcher(isolate, young_sequence_.start(),
377 young_sequence_.length() / kInstructionSize); 377 young_sequence_.length() / kInstructionSize);
378 // The young sequence is the frame setup code for FUNCTION code types. It is 378 // The young sequence is the frame setup code for FUNCTION code types. It is
379 // generated by FullCodeGenerator::Generate. 379 // generated by FullCodeGenerator::Generate.
380 MacroAssembler::EmitFrameSetupForCodeAgePatching(&patcher); 380 MacroAssembler::EmitFrameSetupForCodeAgePatching(&patcher);
381 381
382 #ifdef DEBUG 382 #ifdef DEBUG
383 const int length = kCodeAgeStubEntryOffset / kInstructionSize; 383 const int length = kCodeAgeStubEntryOffset / kInstructionSize;
384 DCHECK(old_sequence_.length() >= kCodeAgeStubEntryOffset); 384 DCHECK(old_sequence_.length() >= kCodeAgeStubEntryOffset);
385 PatchingAssembler patcher_old(old_sequence_.start(), length); 385 PatchingAssembler patcher_old(isolate, old_sequence_.start(), length);
386 MacroAssembler::EmitCodeAgeSequence(&patcher_old, NULL); 386 MacroAssembler::EmitCodeAgeSequence(&patcher_old, NULL);
387 #endif 387 #endif
388 } 388 }
389 389
390 390
391 #ifdef DEBUG 391 #ifdef DEBUG
392 bool CodeAgingHelper::IsOld(byte* candidate) const { 392 bool CodeAgingHelper::IsOld(byte* candidate) const {
393 return memcmp(candidate, old_sequence_.start(), kCodeAgeStubEntryOffset) == 0; 393 return memcmp(candidate, old_sequence_.start(), kCodeAgeStubEntryOffset) == 0;
394 } 394 }
395 #endif 395 #endif
(...skipping 14 matching lines...) Expand all
410 Code* stub = GetCodeFromTargetAddress(Memory::Address_at(target)); 410 Code* stub = GetCodeFromTargetAddress(Memory::Address_at(target));
411 GetCodeAgeAndParity(stub, age, parity); 411 GetCodeAgeAndParity(stub, age, parity);
412 } 412 }
413 } 413 }
414 414
415 415
416 void Code::PatchPlatformCodeAge(Isolate* isolate, 416 void Code::PatchPlatformCodeAge(Isolate* isolate,
417 byte* sequence, 417 byte* sequence,
418 Code::Age age, 418 Code::Age age,
419 MarkingParity parity) { 419 MarkingParity parity) {
420 PatchingAssembler patcher(sequence, 420 PatchingAssembler patcher(isolate, sequence,
421 kNoCodeAgeSequenceLength / kInstructionSize); 421 kNoCodeAgeSequenceLength / kInstructionSize);
422 if (age == kNoAgeCodeAge) { 422 if (age == kNoAgeCodeAge) {
423 MacroAssembler::EmitFrameSetupForCodeAgePatching(&patcher); 423 MacroAssembler::EmitFrameSetupForCodeAgePatching(&patcher);
424 } else { 424 } else {
425 Code * stub = GetCodeAgeStub(isolate, age, parity); 425 Code * stub = GetCodeAgeStub(isolate, age, parity);
426 MacroAssembler::EmitCodeAgeSequence(&patcher, stub); 426 MacroAssembler::EmitCodeAgeSequence(&patcher, stub);
427 } 427 }
428 } 428 }
429 429
430 430
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 631
632 __ Bind(&done); 632 __ Bind(&done);
633 } 633 }
634 634
635 #undef __ 635 #undef __
636 636
637 } // namespace internal 637 } // namespace internal
638 } // namespace v8 638 } // namespace v8
639 639
640 #endif // V8_TARGET_ARCH_ARM64 640 #endif // V8_TARGET_ARCH_ARM64
OLDNEW
« no previous file with comments | « src/arm64/code-stubs-arm64.h ('k') | src/arm64/deoptimizer-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698