diff options
Diffstat (limited to 'deps/v8/src/codegen/s390/macro-assembler-s390.cc')
-rw-r--r-- | deps/v8/src/codegen/s390/macro-assembler-s390.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/deps/v8/src/codegen/s390/macro-assembler-s390.cc b/deps/v8/src/codegen/s390/macro-assembler-s390.cc index f6c2314a84..355d536379 100644 --- a/deps/v8/src/codegen/s390/macro-assembler-s390.cc +++ b/deps/v8/src/codegen/s390/macro-assembler-s390.cc @@ -193,6 +193,13 @@ void TurboAssembler::Jump(Handle<Code> code, RelocInfo::Mode rmode, jump(code, RelocInfo::RELATIVE_CODE_TARGET, cond); } +void TurboAssembler::Jump(const ExternalReference& reference) { + UseScratchRegisterScope temps(this); + Register scratch = temps.Acquire(); + Move(scratch, reference); + Jump(scratch); +} + void TurboAssembler::Call(Register target) { // Branch to target via indirect branch basr(r14, target); @@ -576,8 +583,9 @@ void MacroAssembler::RecordWrite(Register object, Register address, Check(eq, AbortReason::kWrongAddressOrValuePassedToRecordWrite); } - if (remembered_set_action == OMIT_REMEMBERED_SET && - !FLAG_incremental_marking) { + if ((remembered_set_action == OMIT_REMEMBERED_SET && + !FLAG_incremental_marking) || + FLAG_disable_write_barriers) { return; } // First, check if a write barrier is even needed. The tests below |