s390x: [baseline] implement Store functions
Change-Id: If401e5c9d1ab6f293de2d8efed1f885683667408 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3386389 Reviewed-by: Milad Farazmand <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/main@{#78629}
This commit is contained in:
parent
b8440171c9
commit
2e147b4fae
@ -440,17 +440,26 @@ void BaselineAssembler::LoadByteField(Register output, Register source,
|
||||
}
|
||||
void BaselineAssembler::StoreTaggedSignedField(Register target, int offset,
|
||||
Smi value) {
|
||||
UNIMPLEMENTED();
|
||||
ASM_CODE_COMMENT(masm_);
|
||||
ScratchRegisterScope temps(this);
|
||||
Register tmp = temps.AcquireScratch();
|
||||
__ LoadSmiLiteral(tmp, value);
|
||||
__ StoreTaggedField(tmp, FieldMemOperand(target, offset), r0);
|
||||
}
|
||||
void BaselineAssembler::StoreTaggedFieldWithWriteBarrier(Register target,
|
||||
int offset,
|
||||
Register value) {
|
||||
UNIMPLEMENTED();
|
||||
ASM_CODE_COMMENT(masm_);
|
||||
Register scratch = WriteBarrierDescriptor::SlotAddressRegister();
|
||||
DCHECK(!AreAliased(target, value, scratch));
|
||||
__ StoreTaggedField(value, FieldMemOperand(target, offset), r0);
|
||||
__ RecordWriteField(target, offset, value, scratch, kLRHasNotBeenSaved,
|
||||
SaveFPRegsMode::kIgnore);
|
||||
}
|
||||
void BaselineAssembler::StoreTaggedFieldNoWriteBarrier(Register target,
|
||||
int offset,
|
||||
Register value) {
|
||||
UNIMPLEMENTED();
|
||||
__ StoreTaggedField(value, FieldMemOperand(target, offset), r0);
|
||||
}
|
||||
|
||||
void BaselineAssembler::AddToInterruptBudgetAndJumpIfNotExceeded(
|
||||
|
Loading…
Reference in New Issue
Block a user