diff --git a/src/ic/ppc/ic-ppc.cc b/src/ic/ppc/ic-ppc.cc index fdb88aee50..0858edca34 100644 --- a/src/ic/ppc/ic-ppc.cc +++ b/src/ic/ppc/ic-ppc.cc @@ -874,11 +874,7 @@ void PatchInlinedSmiCode(Address address, InlinedSmiCheck check) { patcher.masm()->TestIfSmi(reg, r0); } else { DCHECK(check == DISABLE_INLINED_SMI_CHECK); -#if V8_TARGET_ARCH_PPC64 - DCHECK(Assembler::IsRldicl(instr_at_patch)); -#else - DCHECK(Assembler::IsRlwinm(instr_at_patch)); -#endif + DCHECK(Assembler::IsAndi(instr_at_patch)); patcher.masm()->cmp(reg, reg, cr0); } DCHECK(Assembler::IsBranch(branch_instr)); diff --git a/src/ppc/assembler-ppc.cc b/src/ppc/assembler-ppc.cc index 38c7fd82b7..571a9fc8a2 100644 --- a/src/ppc/assembler-ppc.cc +++ b/src/ppc/assembler-ppc.cc @@ -337,6 +337,9 @@ bool Assembler::IsRlwinm(Instr instr) { } +bool Assembler::IsAndi(Instr instr) { return ((instr & kOpcodeMask) == ANDIx); } + + #if V8_TARGET_ARCH_PPC64 bool Assembler::IsRldicl(Instr instr) { return (((instr & kOpcodeMask) == EXT5) && diff --git a/src/ppc/assembler-ppc.h b/src/ppc/assembler-ppc.h index e8a654fe64..b63612f964 100644 --- a/src/ppc/assembler-ppc.h +++ b/src/ppc/assembler-ppc.h @@ -1324,6 +1324,7 @@ class Assembler : public AssemblerBase { static bool IsCmpRegister(Instr instr); static bool IsCmpImmediate(Instr instr); static bool IsRlwinm(Instr instr); + static bool IsAndi(Instr instr); #if V8_TARGET_ARCH_PPC64 static bool IsRldicl(Instr instr); #endif