From f7f6f03a3c54dec938deb37646df27bbf0d46ba7 Mon Sep 17 00:00:00 2001 From: Eduardo Aguilar Date: Mon, 2 Nov 2020 16:37:24 +0100 Subject: [PATCH 1/2] ppc: define kScratchReg properly --- deps/v8/src/codegen/ppc/macro-assembler-ppc.cc | 6 +++--- deps/v8/src/codegen/ppc/register-ppc.h | 1 + deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc | 2 -- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/deps/v8/src/codegen/ppc/macro-assembler-ppc.cc b/deps/v8/src/codegen/ppc/macro-assembler-ppc.cc index ba68e3d3..0153c1a8 100644 --- a/deps/v8/src/codegen/ppc/macro-assembler-ppc.cc +++ b/deps/v8/src/codegen/ppc/macro-assembler-ppc.cc @@ -723,7 +723,7 @@ void TurboAssembler::ConvertIntToFloatingPointNoPPC64(Register src, bool result_is_a_float, bool src_is_unsigned) { - Register scratch = r11; + Register scratch = kScratchReg; DoubleRegister double_scratch = kScratchDoubleReg; subi(sp, sp, Operand(kDoubleSize)); // reserve one temporary double on the stack @@ -1717,7 +1717,7 @@ void TurboAssembler::TryInlineTruncateDoubleToI(Register result, Label* done) { Label conv_inv, conv_ok; #if !V8_TARGET_ARCH_PPC64 - Register scratch = r11; + Register scratch = kScratchReg; CRegister cr = cr7; int crbit = v8::internal::Assembler::encode_crbit( cr, static_cast(VXCVI % CRWIDTH)); @@ -3115,7 +3115,7 @@ void TurboAssembler::LoadCodeObjectEntry(Register destination, DCHECK(root_array_available()); Label if_code_is_off_heap, out; - Register scratch = r11; + Register scratch = kScratchReg; DCHECK(!AreAliased(destination, scratch)); DCHECK(!AreAliased(code_object, scratch)); diff --git a/deps/v8/src/codegen/ppc/register-ppc.h b/deps/v8/src/codegen/ppc/register-ppc.h index 61cd3850..1aa1d338 100644 --- a/deps/v8/src/codegen/ppc/register-ppc.h +++ b/deps/v8/src/codegen/ppc/register-ppc.h @@ -304,6 +304,7 @@ constexpr Register kContextRegister = r30; constexpr Register kAllocateSizeRegister = r4; constexpr Register kSpeculationPoisonRegister = r14; constexpr Register kInterpreterAccumulatorRegister = r3; +constexpr Register kScratchReg = r11; constexpr Register kInterpreterBytecodeOffsetRegister = r15; constexpr Register kInterpreterBytecodeArrayRegister = r16; constexpr Register kInterpreterDispatchTableRegister = r17; diff --git a/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc b/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc index 11530c6c..fe92423c 100644 --- a/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc +++ b/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc @@ -25,8 +25,6 @@ namespace compiler { #define __ tasm()-> -#define kScratchReg r11 - // Adds PPC-specific methods to convert InstructionOperands. class PPCOperandConverter final : public InstructionOperandConverter { public: -- 2.28.0