| Index: src/compiler/instruction.cc
|
| diff --git a/src/compiler/instruction.cc b/src/compiler/instruction.cc
|
| index d3459284955e2b99d3753cfd99075af52446f740..5ca3600375aafd8f4b7bd5d55a0742235d732702 100644
|
| --- a/src/compiler/instruction.cc
|
| +++ b/src/compiler/instruction.cc
|
| @@ -12,6 +12,7 @@ namespace v8 {
|
| namespace internal {
|
| namespace compiler {
|
|
|
| +const auto GetRegConfig = RegisterConfiguration::Turbofan;
|
|
|
| FlagsCondition CommuteFlagsCondition(FlagsCondition condition) {
|
| switch (condition) {
|
| @@ -64,8 +65,7 @@ bool InstructionOperand::InterferesWith(const InstructionOperand& that) const {
|
|
|
| const LocationOperand& loc1 = *LocationOperand::cast(this);
|
| const LocationOperand& loc2 = LocationOperand::cast(that);
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| + const RegisterConfiguration* config = GetRegConfig();
|
| if (config->fp_aliasing_kind() != RegisterConfiguration::COMBINE)
|
| return loc1.register_code() == loc2.register_code();
|
|
|
| @@ -81,12 +81,7 @@ void InstructionOperand::Print(const RegisterConfiguration* config) const {
|
| os << wrapper << std::endl;
|
| }
|
|
|
| -
|
| -void InstructionOperand::Print() const {
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| - Print(config);
|
| -}
|
| +void InstructionOperand::Print() const { Print(GetRegConfig()); }
|
|
|
| std::ostream& operator<<(std::ostream& os,
|
| const PrintableInstructionOperand& printable) {
|
| @@ -142,12 +137,18 @@ std::ostream& operator<<(std::ostream& os,
|
| } else if (op.IsFPStackSlot()) {
|
| os << "[fp_stack:" << allocated.index();
|
| } else if (op.IsRegister()) {
|
| - os << "[" << allocated.GetRegister().ToString() << "|R";
|
| + os << "["
|
| + << GetRegConfig()->GetGeneralRegisterName(allocated.register_code())
|
| + << "|R";
|
| } else if (op.IsDoubleRegister()) {
|
| - os << "[" << allocated.GetDoubleRegister().ToString() << "|R";
|
| + os << "["
|
| + << GetRegConfig()->GetDoubleRegisterName(allocated.register_code())
|
| + << "|R";
|
| } else {
|
| DCHECK(op.IsFloatRegister());
|
| - os << "[" << allocated.GetFloatRegister().ToString() << "|R";
|
| + os << "["
|
| + << GetRegConfig()->GetFloatRegisterName(allocated.register_code())
|
| + << "|R";
|
| }
|
| if (allocated.IsExplicit()) {
|
| os << "|E";
|
| @@ -203,13 +204,7 @@ void MoveOperands::Print(const RegisterConfiguration* config) const {
|
| os << wrapper << std::endl;
|
| }
|
|
|
| -
|
| -void MoveOperands::Print() const {
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| - Print(config);
|
| -}
|
| -
|
| +void MoveOperands::Print() const { Print(GetRegConfig()); }
|
|
|
| std::ostream& operator<<(std::ostream& os,
|
| const PrintableMoveOperands& printable) {
|
| @@ -258,14 +253,11 @@ ExplicitOperand::ExplicitOperand(LocationKind kind, MachineRepresentation rep,
|
| int index)
|
| : LocationOperand(EXPLICIT, kind, rep, index) {
|
| DCHECK_IMPLIES(kind == REGISTER && !IsFloatingPoint(rep),
|
| - Register::from_code(index).IsAllocatable(
|
| - RegisterConfiguration::TURBOFAN));
|
| + GetRegConfig()->IsAllocatableGeneralCode(index));
|
| DCHECK_IMPLIES(kind == REGISTER && rep == MachineRepresentation::kFloat32,
|
| - FloatRegister::from_code(index).IsAllocatable(
|
| - RegisterConfiguration::TURBOFAN));
|
| + GetRegConfig()->IsAllocatableFloatCode(index));
|
| DCHECK_IMPLIES(kind == REGISTER && (rep == MachineRepresentation::kFloat64),
|
| - DoubleRegister::from_code(index).IsAllocatable(
|
| - RegisterConfiguration::TURBOFAN));
|
| + GetRegConfig()->IsAllocatableDoubleCode(index));
|
| }
|
|
|
| Instruction::Instruction(InstructionCode opcode)
|
| @@ -326,13 +318,7 @@ void Instruction::Print(const RegisterConfiguration* config) const {
|
| os << wrapper << std::endl;
|
| }
|
|
|
| -
|
| -void Instruction::Print() const {
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| - Print(config);
|
| -}
|
| -
|
| +void Instruction::Print() const { Print(GetRegConfig()); }
|
|
|
| std::ostream& operator<<(std::ostream& os,
|
| const PrintableParallelMove& printable) {
|
| @@ -360,9 +346,7 @@ void ReferenceMap::RecordReference(const AllocatedOperand& op) {
|
| std::ostream& operator<<(std::ostream& os, const ReferenceMap& pm) {
|
| os << "{";
|
| bool first = true;
|
| - PrintableInstructionOperand poi = {
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN),
|
| - InstructionOperand()};
|
| + PrintableInstructionOperand poi = {GetRegConfig(), InstructionOperand()};
|
| for (const InstructionOperand& op : pm.reference_operands_) {
|
| if (!first) {
|
| os << ";";
|
| @@ -897,12 +881,7 @@ void InstructionSequence::Print(const RegisterConfiguration* config) const {
|
| os << wrapper << std::endl;
|
| }
|
|
|
| -
|
| -void InstructionSequence::Print() const {
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| - Print(config);
|
| -}
|
| +void InstructionSequence::Print() const { Print(GetRegConfig()); }
|
|
|
| void InstructionSequence::PrintBlock(const RegisterConfiguration* config,
|
| int block_id) const {
|
| @@ -956,9 +935,7 @@ void InstructionSequence::PrintBlock(const RegisterConfiguration* config,
|
| }
|
|
|
| void InstructionSequence::PrintBlock(int block_id) const {
|
| - const RegisterConfiguration* config =
|
| - RegisterConfiguration::ArchDefault(RegisterConfiguration::TURBOFAN);
|
| - PrintBlock(config, block_id);
|
| + PrintBlock(GetRegConfig(), block_id);
|
| }
|
|
|
| FrameStateDescriptor::FrameStateDescriptor(
|
|
|