Home
last modified time | relevance | path

Searched refs:shl (Results 1 – 22 of 22) sorted by relevance

/art/compiler/optimizing/
Dinstruction_simplifier_riscv64.cc44 bool TryReplaceShiftAddWithOneInstruction(HShl* shl, HAdd* add) { in TryReplaceShiftAddWithOneInstruction() argument
47 if (shl->GetType() != DataType::Type::kInt64) { in TryReplaceShiftAddWithOneInstruction()
51 if (!shl->GetRight()->IsIntConstant()) { in TryReplaceShiftAddWithOneInstruction()
55 const int32_t distance = shl->GetRight()->AsIntConstant()->GetValue(); in TryReplaceShiftAddWithOneInstruction()
60 if (!shl->HasOnlyOneNonEnvironmentUse()) { in TryReplaceShiftAddWithOneInstruction()
64 auto* const add_other_input = add->GetLeft() == shl ? add->GetRight() : add->GetLeft(); in TryReplaceShiftAddWithOneInstruction()
66 HRiscv64ShiftAdd(shl->GetLeft(), add_other_input, distance); in TryReplaceShiftAddWithOneInstruction()
71 shl->GetBlock()->RemoveInstruction(shl); in TryReplaceShiftAddWithOneInstruction()
Dinstruction_simplifier.cc62 bool ReplaceRotateWithRor(HBinaryOperation* op, HUShr* ushr, HShl* shl);
64 bool TryReplaceWithRotateConstantPattern(HBinaryOperation* op, HUShr* ushr, HShl* shl);
65 bool TryReplaceWithRotateRegisterNegPattern(HBinaryOperation* op, HUShr* ushr, HShl* shl);
66 bool TryReplaceWithRotateRegisterSubPattern(HBinaryOperation* op, HUShr* ushr, HShl* shl);
438 HShl *shl = shr_value->AsShl(); in TryReplaceShiftsByConstantWithTypeConversion() local
439 if (!shl->HasOnlyOneNonEnvironmentUse()) { in TryReplaceShiftsByConstantWithTypeConversion()
444 if (shl->GetRight() != shr_amount) { in TryReplaceShiftsByConstantWithTypeConversion()
456 HInstruction* shl_value = shl->GetLeft(); in TryReplaceShiftsByConstantWithTypeConversion()
469 shl->GetBlock()->RemoveInstruction(shl); in TryReplaceShiftsByConstantWithTypeConversion()
557 HShl* shl) { in ReplaceRotateWithRor() argument
[all …]
Dinstruction_simplifier_arm.cc280 HInstruction* shl = instruction->GetRight()->InputAt(0); in VisitSub() local
281 if (shl->InputAt(1)->IsConstant() && TryReplaceSubSubWithSubAdd(instruction)) { in VisitSub()
282 if (TryMergeIntoUsersShifterOperand(shl)) { in VisitSub()
Dinstruction_simplifier_arm64.cc251 HInstruction* shl = instruction->GetRight()->InputAt(0); in VisitSub() local
252 if (shl->InputAt(1)->IsConstant() && TryReplaceSubSubWithSubAdd(instruction)) { in VisitSub()
253 if (TryMergeIntoUsersShifterOperand(shl)) { in VisitSub()
Dinduction_var_analysis_test.cc291 HInstruction* shl = InsertInstruction( in TEST_F() local
300 EXPECT_STREQ("((2) * i + (0)):Int32", GetInductionInfo(shl, 0).c_str()); in TEST_F()
476 HInstruction* shl = InsertInstruction( in TEST_F() local
495 GetInductionInfo(shl, 0).c_str()); in TEST_F()
617 HInstruction* shl = InsertInstruction( in TEST_F() local
630 EXPECT_STREQ("", GetInductionInfo(shl, 0).c_str()); in TEST_F()
696 HInstruction* shl = InsertInstruction( in TEST_F() local
714 GetInductionInfo(shl, 0).c_str()); in TEST_F()
1021 HInstruction* shl = InsertInstruction( in TEST_F() local
1034 EXPECT_STREQ("periodic((2), (0)):Int32", GetInductionInfo(shl, 0).c_str()); in TEST_F()
Dbounds_check_elimination.cc1044 auto is_needed_shl = [](HShl* shl) { in TryToAssignRangeIfOptimizedRemWithConstantDivisor() argument
1045 return shl != nullptr && shl->GetRight()->IsConstant() && shl->GetLeft()->IsDiv(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1057 HShl* shl = add->GetRight()->AsShlOrNull(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor() local
1058 if (!is_needed_shl(shl)) { in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1062 div = shl->GetLeft()->AsDiv(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1067 int32_t n = shl->GetRight()->AsIntConstant()->GetValue(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1074 HShl* shl = sub->GetLeft()->AsShlOrNull(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor() local
1075 if (!is_needed_shl(shl)) { in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1079 div = shl->GetLeft()->AsDiv(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
1084 int32_t n = shl->GetRight()->AsIntConstant()->GetValue(); in TryToAssignRangeIfOptimizedRemWithConstantDivisor()
Dcode_generator_arm64.cc6370 void LocationsBuilderARM64::VisitShl(HShl* shl) { in VisitShl() argument
6371 HandleShift(shl); in VisitShl()
6374 void InstructionCodeGeneratorARM64::VisitShl(HShl* shl) { in VisitShl() argument
6375 HandleShift(shl); in VisitShl()
Dcode_generator_x86_64.cc5077 void LocationsBuilderX86_64::VisitShl(HShl* shl) { in VisitShl() argument
5078 HandleShift(shl); in VisitShl()
5081 void InstructionCodeGeneratorX86_64::VisitShl(HShl* shl) { in VisitShl() argument
5082 HandleShift(shl); in VisitShl()
Dcode_generator_x86.cc5143 void LocationsBuilderX86::VisitShl(HShl* shl) { in VisitShl() argument
5144 HandleShift(shl); in VisitShl()
5147 void InstructionCodeGeneratorX86::VisitShl(HShl* shl) { in VisitShl() argument
5148 HandleShift(shl); in VisitShl()
Dcode_generator_arm_vixl.cc5636 void LocationsBuilderARMVIXL::VisitShl(HShl* shl) { in VisitShl() argument
5637 HandleShift(shl); in VisitShl()
5640 void InstructionCodeGeneratorARMVIXL::VisitShl(HShl* shl) { in VisitShl() argument
5641 HandleShift(shl); in VisitShl()
/art/test/685-shifts/smali/
DTest.smali21 shl-long v0, p0, v2
42 shl-long v0, p0, v2
/art/test/467-regalloc-pair/smali/
DTestCase.smali38 shl-long/2addr v4, v3
/art/test/593-checker-shift-and-simplifier/smali/
DSmaliTests.smali53 shl-int/lit8 v3, v2, 0x2
/art/test/dexdump/
Dall.txt169 0004c0: 9800 0102 |0010: shl-int v0, v1, v2
180 0004ec: a300 0102 |0026: shl-long v0, v1, v2
217 000544: b810 |0008: shl-int/2addr v0, v1
228 00055a: c310 |0013: shl-long/2addr v0, v1
289 0005dc: e000 0112 |0010: shl-int/lit8 v0, v1, #int 18 // #12
Dcheckers.txt1886 0029ee: e003 0501 |005f: shl-int/lit8 v3, v5, #int 1 // #01
1965 002aba: b820 |002d: shl-int/2addr v0, v2
1967 002abe: b831 |002f: shl-int/2addr v1, v3
1970 002ac4: b871 |0032: shl-int/2addr v1, v7
1972 002ac8: b864 |0034: shl-int/2addr v4, v6
2305 002ee4: e003 0003 |000e: shl-int/lit8 v3, v0, #int 3 // #03
2765 0033e6: e017 1603 |0011: shl-int/lit8 v23, v22, #int 3 // #03
3103 0038be: e007 0f01 |027d: shl-int/lit8 v7, v15, #int 1 // #01
5066 0053c2: e004 0403 |041d: shl-int/lit8 v4, v4, #int 3 // #03
5124 005498: e004 0405 |0488: shl-int/lit8 v4, v4, #int 5 // #05
[all …]
Dbytecodes.txt1463 001584: 9802 0809 |0036: shl-int v2, v8, v9
1509 0015d4: e00d 0d01 |0000: shl-int/lit8 v13, v13, #int 1 // #01
1512 0015e0: b8ed |0006: shl-int/2addr v13, v14
1522 001602: 9806 0e09 |0017: shl-int v6, v14, v9
1625 0016a4: a31c 1c16 |0002: shl-long v28, v28, v22
1633 0016c2: a31c 1c16 |0011: shl-long v28, v28, v22
1653 00170c: a30e 1e16 |0036: shl-long v14, v30, v22
Dall-dex-files.txt169 0004c0: 9800 0102 |0010: shl-int v0, v1, v2
180 0004ec: a300 0102 |0026: shl-long v0, v1, v2
217 000544: b810 |0008: shl-int/2addr v0, v1
228 00055a: c310 |0013: shl-long/2addr v0, v1
289 0005dc: e000 0112 |0010: shl-int/lit8 v0, v1, #int 18 // #12
2527 0029ee: e003 0501 |005f: shl-int/lit8 v3, v5, #int 1 // #01
2606 002aba: b820 |002d: shl-int/2addr v0, v2
2608 002abe: b831 |002f: shl-int/2addr v1, v3
2611 002ac4: b871 |0032: shl-int/2addr v1, v7
2613 002ac8: b864 |0034: shl-int/2addr v4, v6
[all …]
/art/runtime/interpreter/mterp/x86_64ng/
Dmain.S912 jz 6f # shl sets the Z flag
1132 jz .Linvoke_fast_path_\suffix # shl sets the Z flag
/art/runtime/arch/x86/
Dmemcmp16_x86.S52 shl $1, %ecx
Dquick_entrypoints_x86.S1424 shl %cl,%eax
/art/runtime/arch/x86_64/
Dmemcmp16_x86_64.S47 shl $1, %rdx
/art/runtime/interpreter/mterp/x86ng/
Dmain.S1124 jz .Linvoke_fast_path_\suffix # shl sets the Z flag