Home
last modified time | relevance | path

Searched refs:imm (Results 1 – 25 of 37) sorted by relevance

12

/art/compiler/optimizing/
Dscheduler_arm64.cc84 int64_t imm = Int64FromConstant(instr->GetRight()->AsConstant()); in VisitDiv() local
85 if (imm == 0) { in VisitDiv()
88 } else if (imm == 1 || imm == -1) { in VisitDiv()
91 } else if (IsPowerOfTwo(AbsOrMin(imm))) { in VisitDiv()
95 DCHECK(imm <= -2 || imm >= 2); in VisitDiv()
152 int64_t imm = Int64FromConstant(instruction->GetRight()->AsConstant()); in VisitRem() local
153 if (imm == 0) { in VisitRem()
156 } else if (imm == 1 || imm == -1) { in VisitRem()
159 } else if (IsPowerOfTwo(AbsOrMin(imm))) { in VisitRem()
163 DCHECK(imm <= -2 || imm >= 2); in VisitRem()
Dcode_generator_x86_64.cc3219 Immediate imm(second.GetConstant()->AsIntConstant()->GetValue()); in VisitSub() local
3220 __ subl(first.AsRegister<CpuRegister>(), imm); in VisitSub()
3322 Immediate imm(mul->InputAt(1)->AsIntConstant()->GetValue()); in VisitMul() local
3323 __ imull(out.AsRegister<CpuRegister>(), first.AsRegister<CpuRegister>(), imm); in VisitMul()
3480 int64_t imm = Int64FromConstant(second.GetConstant()); in DivRemOneOrMinusOne() local
3482 DCHECK(imm == 1 || imm == -1); in DivRemOneOrMinusOne()
3490 if (imm == -1) { in DivRemOneOrMinusOne()
3502 if (imm == -1) { in DivRemOneOrMinusOne()
3521 int64_t imm = Int64FromConstant(second.GetConstant()); in DivByPowerOfTwo() local
3522 DCHECK(IsPowerOfTwo(AbsOrMin(imm))); in DivByPowerOfTwo()
[all …]
Dcode_generator_mips64.cc1740 int64_t imm = CodeGenerator::GetInt64ValueOf(right->AsConstant()); in HandleBinaryOp() local
1742 can_use_imm = IsUint<16>(imm); in HandleBinaryOp()
1744 can_use_imm = IsInt<16>(imm); in HandleBinaryOp()
1747 can_use_imm = IsInt<16>(-imm); in HandleBinaryOp()
2980 int64_t imm = Int64FromConstant(second.GetConstant()); in DivRemOneOrMinusOne() local
2981 DCHECK(imm == 1 || imm == -1); in DivRemOneOrMinusOne()
2986 if (imm == -1) { in DivRemOneOrMinusOne()
3009 int64_t imm = Int64FromConstant(second.GetConstant()); in DivRemByPowerOfTwo() local
3010 uint64_t abs_imm = static_cast<uint64_t>(AbsOrMin(imm)); in DivRemByPowerOfTwo()
3024 if (imm < 0) { in DivRemByPowerOfTwo()
[all …]
Dcode_generator_x86.cc3233 Immediate imm(mul->InputAt(1)->AsIntConstant()->GetValue()); in VisitMul() local
3234 __ imull(out.AsRegister<Register>(), first.AsRegister<Register>(), imm); in VisitMul()
3475 int32_t imm = locations->InAt(1).GetConstant()->AsIntConstant()->GetValue(); in DivRemOneOrMinusOne() local
3477 DCHECK(imm == 1 || imm == -1); in DivRemOneOrMinusOne()
3483 if (imm == -1) { in DivRemOneOrMinusOne()
3495 int32_t imm = locations->InAt(1).GetConstant()->AsIntConstant()->GetValue(); in DivByPowerOfTwo() local
3496 DCHECK(IsPowerOfTwo(AbsOrMin(imm))); in DivByPowerOfTwo()
3497 uint32_t abs_imm = static_cast<uint32_t>(AbsOrMin(imm)); in DivByPowerOfTwo()
3504 int shift = CTZ(imm); in DivByPowerOfTwo()
3507 if (imm < 0) { in DivByPowerOfTwo()
[all …]
Dcode_generator_arm64.cc3288 int64_t imm = Int64FromConstant(second.GetConstant()); in FOR_EACH_CONDITION_INSTRUCTION() local
3289 DCHECK(imm == 1 || imm == -1); in FOR_EACH_CONDITION_INSTRUCTION()
3294 if (imm == 1) { in FOR_EACH_CONDITION_INSTRUCTION()
3311 int64_t imm = Int64FromConstant(second.GetConstant()); in DivRemByPowerOfTwo() local
3312 uint64_t abs_imm = static_cast<uint64_t>(AbsOrMin(imm)); in DivRemByPowerOfTwo()
3322 if (imm > 0) { in DivRemByPowerOfTwo()
3346 int64_t imm = Int64FromConstant(second.GetConstant()); in GenerateDivRemWithAnyConstant() local
3353 CalculateMagicAndShiftForDivRem(imm, type == Primitive::kPrimLong /* is_long */, &magic, &shift); in GenerateDivRemWithAnyConstant()
3367 if (imm > 0 && magic < 0) { in GenerateDivRemWithAnyConstant()
3369 } else if (imm < 0 && magic > 0) { in GenerateDivRemWithAnyConstant()
[all …]
Dcode_generator_mips.cc1929 int32_t imm = CodeGenerator::GetInt32ValueOf(right->AsConstant()); in HandleBinaryOp() local
1931 can_use_imm = IsUint<16>(imm); in HandleBinaryOp()
1933 can_use_imm = IsInt<16>(imm); in HandleBinaryOp()
1936 can_use_imm = IsInt<16>(-imm); in HandleBinaryOp()
3489 int32_t imm = second.GetConstant()->AsIntConstant()->GetValue(); in DivRemOneOrMinusOne() local
3490 DCHECK(imm == 1 || imm == -1); in DivRemOneOrMinusOne()
3495 if (imm == -1) { in DivRemOneOrMinusOne()
3513 int32_t imm = second.GetConstant()->AsIntConstant()->GetValue(); in DivRemByPowerOfTwo() local
3514 uint32_t abs_imm = static_cast<uint32_t>(AbsOrMin(imm)); in DivRemByPowerOfTwo()
3527 if (imm < 0) { in DivRemByPowerOfTwo()
[all …]
/art/test/442-checker-constant-folding/src/
DMain.java1399 long imm = $inline$long(33L); in ReturnInt33() local
1400 return (int) imm; in ReturnInt33()
1416 float imm = $inline$float(1.0e34f); in ReturnIntMax() local
1417 return (int) imm; in ReturnIntMax()
1433 double imm = $inline$double(Double.NaN); in ReturnInt0() local
1434 return (int) imm; in ReturnInt0()
1450 int imm = $inline$int(33); in ReturnLong33() local
1451 return (long) imm; in ReturnLong33()
1467 float imm = $inline$float(34.0f); in ReturnLong34() local
1468 return (long) imm; in ReturnLong34()
[all …]
/art/compiler/utils/x86_64/
Dassembler_x86_64.h350 void pushq(const Immediate& imm);
366 void movq(const Address& dst, const Immediate& imm);
368 void movl(const Address& dst, const Immediate& imm);
380 void movb(const Address& dst, const Immediate& imm);
388 void movw(const Address& dst, const Immediate& imm);
501 void roundsd(XmmRegister dst, XmmRegister src, const Immediate& imm);
502 void roundss(XmmRegister dst, XmmRegister src, const Immediate& imm);
539 void shufpd(XmmRegister dst, XmmRegister src, const Immediate& imm);
540 void shufps(XmmRegister dst, XmmRegister src, const Immediate& imm);
541 void pshufd(XmmRegister dst, XmmRegister src, const Immediate& imm);
[all …]
Dassembler_x86_64.cc78 void X86_64Assembler::pushq(const Immediate& imm) { in pushq() argument
80 CHECK(imm.is_int32()); // pushq only supports 32b immediate. in pushq()
81 if (imm.is_int8()) { in pushq()
83 EmitUint8(imm.value() & 0xFF); in pushq()
86 EmitImmediate(imm); in pushq()
106 void X86_64Assembler::movq(CpuRegister dst, const Immediate& imm) { in movq() argument
108 if (imm.is_int32()) { in movq()
113 EmitInt32(static_cast<int32_t>(imm.value())); in movq()
117 EmitInt64(imm.value()); in movq()
122 void X86_64Assembler::movl(CpuRegister dst, const Immediate& imm) { in movl() argument
[all …]
Djni_macro_assembler_x86_64.h63 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE;
/art/compiler/utils/x86/
Dassembler_x86.cc81 void X86Assembler::pushl(const Immediate& imm) { in pushl() argument
83 if (imm.is_int8()) { in pushl()
85 EmitUint8(imm.value() & 0xFF); in pushl()
88 EmitImmediate(imm); in pushl()
106 void X86Assembler::movl(Register dst, const Immediate& imm) { in movl() argument
109 EmitImmediate(imm); in movl()
134 void X86Assembler::movl(const Address& dst, const Immediate& imm) { in movl() argument
138 EmitImmediate(imm); in movl()
249 void X86Assembler::movb(const Address& dst, const Immediate& imm) { in movb() argument
253 CHECK(imm.is_int8()); in movb()
[all …]
Dassembler_x86.h321 void pushl(const Immediate& imm);
331 void movl(const Address& dst, const Immediate& imm);
346 void rorl(Register reg, const Immediate& imm);
348 void roll(Register reg, const Immediate& imm);
357 void movb(const Address& dst, const Immediate& imm);
365 void movw(const Address& dst, const Immediate& imm);
472 void roundsd(XmmRegister dst, XmmRegister src, const Immediate& imm);
473 void roundss(XmmRegister dst, XmmRegister src, const Immediate& imm);
511 void shufpd(XmmRegister dst, XmmRegister src, const Immediate& imm);
512 void shufps(XmmRegister dst, XmmRegister src, const Immediate& imm);
[all …]
Djni_macro_assembler_x86.h62 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE;
Djni_macro_assembler_x86.cc162 void X86JNIMacroAssembler::StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister) { in StoreImmediateToFrame() argument
163 __ movl(Address(ESP, dest), Immediate(imm)); in StoreImmediateToFrame()
/art/compiler/utils/
Dassembler_test.h159 for (int64_t imm : imms) { variable
160 ImmType new_imm = CreateImmediate(imm);
179 sreg << imm * multiplier + bias;
213 for (int64_t imm : imms) { in RepeatTemplatedRegistersImmBits() local
214 ImmType new_imm = CreateImmediate(imm); in RepeatTemplatedRegistersImmBits()
239 sreg << imm + bias; in RepeatTemplatedRegistersImmBits()
272 for (int64_t imm : imms) { in RepeatTemplatedImmBitsRegisters() local
273 ImmType new_imm = CreateImmediate(imm); in RepeatTemplatedImmBitsRegisters()
292 sreg << imm; in RepeatTemplatedImmBitsRegisters()
320 for (int64_t imm : imms) { in RepeatTemplatedRegisterImmBits() local
[all …]
Djni_macro_assembler.h79 virtual void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) = 0;
/art/compiler/utils/arm/
Dassembler_arm_vixl.h140 void Vmov(vixl32::DRegister rd, double imm) { in Vmov() argument
141 if (vixl::VFP::IsImmFP64(imm)) { in Vmov()
142 MacroAssembler::Vmov(rd, imm); in Vmov()
144 MacroAssembler::Vldr(rd, imm); in Vmov()
Djni_macro_assembler_arm.h68 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE;
Djni_macro_assembler_arm_vixl.h67 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE;
Dassembler_thumb2.cc1384 uint32_t imm = so.GetImmediate(); in Emit32BitDataProcessing() local
1386 uint32_t i = (imm >> 11) & 1; in Emit32BitDataProcessing()
1387 uint32_t imm3 = (imm >> 8) & 7U /* 0b111 */; in Emit32BitDataProcessing()
1388 uint32_t imm8 = imm & 0xff; in Emit32BitDataProcessing()
1400 uint32_t imm = ModifiedImmediate(so.encodingThumb()); in Emit32BitDataProcessing() local
1401 if (imm == kInvalidModifiedImmediate) { in Emit32BitDataProcessing()
1410 imm; in Emit32BitDataProcessing()
2747 void Thumb2Assembler::ldrex(Register rt, Register rn, uint16_t imm, Condition cond) { in ldrex() argument
2751 CHECK_LT(imm, (1u << 10)); in ldrex()
2757 imm >> 2; in ldrex()
[all …]
Djni_macro_assembler_arm.cc278 uint32_t imm, in StoreImmediateToFrame() argument
282 __ LoadImmediate(scratch.AsCoreRegister(), imm); in StoreImmediateToFrame()
Djni_macro_assembler_arm_vixl.cc260 uint32_t imm, in StoreImmediateToFrame() argument
266 asm_.LoadImmediate(mscratch.AsVIXLRegister(), imm); in StoreImmediateToFrame()
/art/compiler/linker/arm/
Drelative_patcher_thumb2.cc80 uint32_t imm = (diff16 >> 11) & 0x1u; in PatchPcRelativeReference() local
83 insn = (insn & 0xfbf08f00u) | (imm << 26) | (imm4 << 16) | (imm3 << 12) | imm8; in PatchPcRelativeReference()
/art/compiler/utils/arm64/
Djni_macro_assembler_arm64.h69 void StoreImmediateToFrame(FrameOffset dest, uint32_t imm, ManagedRegister scratch) OVERRIDE;
/art/runtime/interpreter/mterp/mips/
Dheader.S673 #define LOAD_IMM(dest, imm) li dest, imm argument

12