summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/backend/mips/code-generator-mips.cc
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2022-04-12 11:10:15 +0200
committerMichaël Zasso <targos@protonmail.com>2022-04-12 22:08:39 +0200
commitfd4f80ce54d7f7b7503e0999f6a9d293d493846d (patch)
tree00fba34b8aabeb481c7128fccee635719ee44a3b /deps/v8/src/compiler/backend/mips/code-generator-mips.cc
parent73d53fe9f56d7ce5de4b9c9ad5257dc601bbce14 (diff)
downloadnode-new-fd4f80ce54d7f7b7503e0999f6a9d293d493846d.tar.gz
deps: update V8 to 10.1.124.6
PR-URL: https://github.com/nodejs/node/pull/42657 Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
Diffstat (limited to 'deps/v8/src/compiler/backend/mips/code-generator-mips.cc')
-rw-r--r--deps/v8/src/compiler/backend/mips/code-generator-mips.cc42
1 files changed, 21 insertions, 21 deletions
diff --git a/deps/v8/src/compiler/backend/mips/code-generator-mips.cc b/deps/v8/src/compiler/backend/mips/code-generator-mips.cc
index fd4358a4fa..4dd0d5cd32 100644
--- a/deps/v8/src/compiler/backend/mips/code-generator-mips.cc
+++ b/deps/v8/src/compiler/backend/mips/code-generator-mips.cc
@@ -167,8 +167,10 @@ class OutOfLineRecordWrite final : public OutOfLineCode {
exit());
__ Addu(scratch1_, object_, index_);
RememberedSetAction const remembered_set_action =
- mode_ > RecordWriteMode::kValueIsMap ? RememberedSetAction::kEmit
- : RememberedSetAction::kOmit;
+ mode_ > RecordWriteMode::kValueIsMap ||
+ FLAG_use_full_record_write_builtin
+ ? RememberedSetAction::kEmit
+ : RememberedSetAction::kOmit;
SaveFPRegsMode const save_fp_mode = frame()->DidAllocateDoubleRegisters()
? SaveFPRegsMode::kSave
: SaveFPRegsMode::kIgnore;
@@ -3689,8 +3691,9 @@ void CodeGenerator::AssembleArchDeoptBranch(Instruction* instr,
AssembleArchBranch(instr, branch);
}
-void CodeGenerator::AssembleArchJump(RpoNumber target) {
- if (!IsNextInAssemblyOrder(target)) __ Branch(GetLabel(target));
+void CodeGenerator::AssembleArchJumpRegardlessOfAssemblyOrder(
+ RpoNumber target) {
+ __ Branch(GetLabel(target));
}
#if V8_ENABLE_WEBASSEMBLY
@@ -3931,21 +3934,21 @@ void CodeGenerator::AssembleArchSelect(Instruction* instr,
void CodeGenerator::FinishFrame(Frame* frame) {
auto call_descriptor = linkage()->GetIncomingDescriptor();
- const RegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
- if (saves_fpu != 0) {
+ const DoubleRegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
+ if (!saves_fpu.is_empty()) {
frame->AlignSavedCalleeRegisterSlots();
}
- if (saves_fpu != 0) {
- int count = base::bits::CountPopulation(saves_fpu);
+ if (!saves_fpu.is_empty()) {
+ int count = saves_fpu.Count();
DCHECK_EQ(kNumCalleeSavedFPU, count);
frame->AllocateSavedCalleeRegisterSlots(count *
(kDoubleSize / kSystemPointerSize));
}
const RegList saves = call_descriptor->CalleeSavedRegisters();
- if (saves != 0) {
- int count = base::bits::CountPopulation(saves);
+ if (!saves.is_empty()) {
+ int count = saves.Count();
frame->AllocateSavedCalleeRegisterSlots(count);
}
}
@@ -4002,7 +4005,7 @@ void CodeGenerator::AssembleConstructFrame() {
}
const RegList saves = call_descriptor->CalleeSavedRegisters();
- const RegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
+ const DoubleRegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
if (required_slots > 0) {
DCHECK(frame_access_state()->has_frame());
@@ -4043,19 +4046,19 @@ void CodeGenerator::AssembleConstructFrame() {
const int returns = frame()->GetReturnSlotCount();
// Skip callee-saved and return slots, which are pushed below.
- required_slots -= base::bits::CountPopulation(saves);
- required_slots -= 2 * base::bits::CountPopulation(saves_fpu);
+ required_slots -= saves.Count();
+ required_slots -= 2 * saves_fpu.Count();
required_slots -= returns;
if (required_slots > 0) {
__ Subu(sp, sp, Operand(required_slots * kSystemPointerSize));
}
// Save callee-saved FPU registers.
- if (saves_fpu != 0) {
+ if (!saves_fpu.is_empty()) {
__ MultiPushFPU(saves_fpu);
}
- if (saves != 0) {
+ if (!saves.is_empty()) {
// Save callee-saved registers.
__ MultiPush(saves);
}
@@ -4076,13 +4079,13 @@ void CodeGenerator::AssembleReturn(InstructionOperand* additional_pop_count) {
// Restore GP registers.
const RegList saves = call_descriptor->CalleeSavedRegisters();
- if (saves != 0) {
+ if (!saves.is_empty()) {
__ MultiPop(saves);
}
// Restore FPU registers.
- const RegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
- if (saves_fpu != 0) {
+ const DoubleRegList saves_fpu = call_descriptor->CalleeSavedFPRegisters();
+ if (!saves_fpu.is_empty()) {
__ MultiPopFPU(saves_fpu);
}
@@ -4133,9 +4136,6 @@ void CodeGenerator::AssembleReturn(InstructionOperand* additional_pop_count) {
if (drop_jsargs) {
// We must pop all arguments from the stack (including the receiver). This
// number of arguments is given by max(1 + argc_reg, parameter_slots).
- if (!kJSArgcIncludesReceiver) {
- __ Addu(t0, t0, Operand(1)); // Also pop the receiver.
- }
if (parameter_slots > 1) {
__ li(kScratchReg, parameter_slots);
__ slt(kScratchReg2, t0, kScratchReg);