Searched defs:cmpi (Results 1 - 2 of 2) sorted by relevance

/external/v8/src/ppc/
H A Dassembler-ppc.cc1000 void Assembler::cmpi(Register src1, const Operand& src2, CRegister cr) { function in class:v8::internal::Assembler
H A Dmacro-assembler-ppc.cc830 cmpi(shift, Operand(32));
876 cmpi(shift, Operand(32));
922 cmpi(shift, Operand(32));
1350 cmpi(expected.reg(), Operand(actual.immediate()));
1385 cmpi(r7, Operand(StepIn));
1535 cmpi(scratch, Operand(LAST_NAME_TYPE));
1600 cmpi(scratch, Operand::Zero());
1862 cmpi(r0, Operand(object_size));
2195 cmpi(type_reg, Operand(type));
2526 cmpi(scratch
2192 STATIC_ASSERT(Map::kInstanceTypeOffset < 4096); STATIC_ASSERT(LAST_TYPE < 256); lbz(type_reg, FieldMemOperand(map, Map::kInstanceTypeOffset)); cmpi(type_reg, Operand(type)); } void MacroAssembler::CompareRoot(Register obj, Heap::RootListIndex index) { DCHECK(!obj.is(r0)); LoadRoot(r0, index); cmp(obj, r0); } void MacroAssembler::CheckFastElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); STATIC_ASSERT(FAST_ELEMENTS == 2); STATIC_ASSERT(FAST_HOLEY_ELEMENTS == 3); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); STATIC_ASSERT(Map::kMaximumBitField2FastHoleyElementValue < 0x8000); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleyElementValue)); bgt(fail); } void MacroAssembler::CheckFastObjectElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); STATIC_ASSERT(FAST_ELEMENTS == 2); STATIC_ASSERT(FAST_HOLEY_ELEMENTS == 3); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleySmiElementValue)); ble(fail); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleyElementValue)); bgt(fail); } void MacroAssembler::CheckFastSmiElements(Register map, Register scratch, Label* fail) { STATIC_ASSERT(FAST_SMI_ELEMENTS == 0); STATIC_ASSERT(FAST_HOLEY_SMI_ELEMENTS == 1); lbz(scratch, FieldMemOperand(map, Map::kBitField2Offset)); cmpli(scratch, Operand(Map::kMaximumBitField2FastHoleySmiElementValue)); bgt(fail); } void MacroAssembler::StoreNumberToDoubleElements( Register value_reg, Register key_reg, Register elements_reg, Register scratch1, DoubleRegister double_scratch, Label* fail, int elements_offset) { DCHECK(!AreAliased(value_reg, key_reg, elements_reg, scratch1)); Label smi_value, store; JumpIfSmi(value_reg, &smi_value); CheckMap(value_reg, scratch1, isolate()->factory()->heap_number_map(), fail, DONT_DO_SMI_CHECK); lfd(double_scratch, FieldMemOperand(value_reg, HeapNumber::kValueOffset)); CanonicalizeNaN(double_scratch); b(&store); bind(&smi_value); SmiToDouble(double_scratch, value_reg); bind(&store); SmiToDoubleArrayOffset(scratch1, key_reg); add(scratch1, elements_reg, scratch1); stfd(double_scratch, FieldMemOperand(scratch1, FixedDoubleArray::kHeaderSize - elements_offset)); } void MacroAssembler::AddAndCheckForOverflow(Register dst, Register left, Register right, Register overflow_dst, Register scratch) { DCHECK(!dst.is(overflow_dst)); DCHECK(!dst.is(scratch)); DCHECK(!overflow_dst.is(scratch)); DCHECK(!overflow_dst.is(left)); DCHECK(!overflow_dst.is(right)); bool left_is_right = left.is(right); RCBit xorRC = left_is_right ? SetRC : LeaveRC; if (dst.is(left)) { mr(scratch, left); add(dst, left, right); xor_(overflow_dst, dst, scratch, xorRC); if (!left_is_right) xor_(scratch, dst, right); } else if (dst.is(right)) { mr(scratch, right); add(dst, left, right); xor_(overflow_dst, dst, left, xorRC); if (!left_is_right) xor_(scratch, dst, scratch); } else { add(dst, left, right); xor_(overflow_dst, dst, left, xorRC); if (!left_is_right) xor_(scratch, dst, right); } if (!left_is_right) and_(overflow_dst, scratch, overflow_dst, SetRC); } void MacroAssembler::AddAndCheckForOverflow(Register dst, Register left, intptr_t right, Register overflow_dst, Register scratch) { Register original_left = left; DCHECK(!dst.is(overflow_dst)); DCHECK(!dst.is(scratch)); DCHECK(!overflow_dst.is(scratch)); DCHECK(!overflow_dst.is(left)); if (dst.is(left)) { original_left = overflow_dst; mr(original_left, left); } Add(dst, left, right, scratch); xor_(overflow_dst, dst, original_left); if (right >= 0) argument
[all...]

Completed in 181 milliseconds