Commit 2e147b4f authored by Junliang Yan's avatar Junliang Yan Committed by V8 LUCI CQ

s390x: [baseline] implement Store functions

Change-Id: If401e5c9d1ab6f293de2d8efed1f885683667408
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3386389Reviewed-by: 's avatarMilad Farazmand <mfarazma@redhat.com>
Commit-Queue: Junliang Yan <junyan@redhat.com>
Cr-Commit-Position: refs/heads/main@{#78629}
parent b8440171
......@@ -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(
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment