[loong64][mips64][heap] Add shared barrier to RecordWrite builtin
Port commit c5d4812196
Bug: v8:11708
Change-Id: Ia50968a169d6b13370f65d5e5fb84a8794cfe216
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3835322
Auto-Submit: Liu Yu <liuyu@loongson.cn>
Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn>
Cr-Commit-Position: refs/heads/main@{#82510}
This commit is contained in:
parent
c7c9f1c364
commit
5182e6f12a
@ -159,8 +159,9 @@ class OutOfLineRecordWrite final : public OutOfLineCode {
|
||||
}
|
||||
|
||||
void Generate() final {
|
||||
__ CheckPageFlag(value_, MemoryChunk::kPointersToHereAreInterestingMask, eq,
|
||||
exit());
|
||||
__ CheckPageFlag(
|
||||
value_, MemoryChunk::kPointersToHereAreInterestingOrInSharedHeapMask,
|
||||
eq, exit());
|
||||
SaveFPRegsMode const save_fp_mode = frame()->DidAllocateDoubleRegisters()
|
||||
? SaveFPRegsMode::kSave
|
||||
: SaveFPRegsMode::kIgnore;
|
||||
|
@ -162,9 +162,10 @@ class OutOfLineRecordWrite final : public OutOfLineCode {
|
||||
}
|
||||
|
||||
void Generate() final {
|
||||
__ CheckPageFlag(value_, scratch0_,
|
||||
MemoryChunk::kPointersToHereAreInterestingMask, eq,
|
||||
exit());
|
||||
__ CheckPageFlag(
|
||||
value_, scratch0_,
|
||||
MemoryChunk::kPointersToHereAreInterestingOrInSharedHeapMask, eq,
|
||||
exit());
|
||||
__ Daddu(scratch1_, object_, index_);
|
||||
SaveFPRegsMode const save_fp_mode = frame()->DidAllocateDoubleRegisters()
|
||||
? SaveFPRegsMode::kSave
|
||||
|
Loading…
Reference in New Issue
Block a user