[compiler] Remove more unneeded accessors

Inlining the field accesses make the code simpler by avoiding the
abstraction of the accessor, and makes stepping through the code for
debugging easier.

R=thibaudm@chromium.org

Bug: v8:12330
Change-Id: I51bd0e88baa5ffba5bd4bfcca36e95caab7468c3
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3372913
Reviewed-by: Thibaud Michaud <thibaudm@chromium.org>
Commit-Queue: Clemens Backes <clemensb@chromium.org>
Cr-Commit-Position: refs/heads/main@{#78521}
This commit is contained in:
Clemens Backes 2022-01-07 16:11:32 +01:00 committed by V8 LUCI CQ
parent facb3fbd5f
commit 9af895db5d

View File

@ -1543,9 +1543,6 @@ class SinglePassRegisterAllocator final {
return data_->VirtualRegisterDataFor(virtual_register);
}
int num_allocatable_registers() const { return num_allocatable_registers_; }
const InstructionBlock* current_block() const { return current_block_; }
// Virtual register to register mapping.
ZoneVector<RegisterIndex> virtual_register_to_reg_;
@ -1839,7 +1836,7 @@ void SinglePassRegisterAllocator::SpillRegisterAtMerge(RegisterState* reg_state,
VirtualRegisterData& vreg_data =
data_->VirtualRegisterDataFor(virtual_register);
AllocatedOperand allocated = AllocatedOperandForReg(reg, vreg_data.rep());
reg_state->Spill(reg, allocated, current_block(), data_);
reg_state->Spill(reg, allocated, current_block_, data_);
}
}
@ -1948,7 +1945,7 @@ void SinglePassRegisterAllocator::EmitGapMoveFromOutput(InstructionOperand from,
int instr_index) {
DCHECK(from.IsAllocated());
DCHECK(to.IsAllocated());
const InstructionBlock* block = current_block();
const InstructionBlock* block = current_block_;
DCHECK_EQ(data_->GetBlock(instr_index), block);
if (instr_index == block->last_instruction_index()) {
// Add gap move to the first instruction of every successor block.
@ -2081,7 +2078,7 @@ RegisterIndex SinglePassRegisterAllocator::ChooseFreeRegister(
const RegisterBitVector& allocated_regs, MachineRepresentation rep) {
RegisterIndex chosen_reg = RegisterIndex::Invalid();
if (kSimpleFPAliasing || kind() == RegisterKind::kGeneral) {
chosen_reg = allocated_regs.GetFirstCleared(num_allocatable_registers());
chosen_reg = allocated_regs.GetFirstCleared(num_allocatable_registers_);
} else {
// If we don't have simple fp aliasing, we need to check each register
// individually to get one with the required representation.
@ -2160,7 +2157,7 @@ void SinglePassRegisterAllocator::SpillRegister(RegisterIndex reg) {
int virtual_register = VirtualRegisterForRegister(reg);
MachineRepresentation rep = VirtualRegisterDataFor(virtual_register).rep();
AllocatedOperand allocated = AllocatedOperandForReg(reg, rep);
register_state_->Spill(reg, allocated, current_block(), data_);
register_state_->Spill(reg, allocated, current_block_, data_);
FreeRegister(reg, virtual_register, rep);
}
@ -2377,7 +2374,7 @@ void SinglePassRegisterAllocator::AllocateConstantOutput(
// necessary gap moves from the constant operand to the register.
SpillRegisterForVirtualRegister(vreg_data.vreg());
if (vreg_data.NeedsSpillAtOutput()) {
vreg_data.EmitGapMoveFromOutputToSpillSlot(*operand, current_block(),
vreg_data.EmitGapMoveFromOutputToSpillSlot(*operand, current_block_,
instr_index, data_);
}
}
@ -2430,8 +2427,7 @@ RegisterIndex SinglePassRegisterAllocator::AllocateOutput(
}
if (vreg_data.NeedsSpillAtOutput()) {
vreg_data.EmitGapMoveFromOutputToSpillSlot(
*AllocatedOperand::cast(operand), current_block(), instr_index,
data_);
*AllocatedOperand::cast(operand), current_block_, instr_index, data_);
} else if (vreg_data.NeedsSpillAtDeferredBlocks()) {
vreg_data.EmitDeferredSpillOutputs(data_);
}