/art/compiler/optimizing/ |
D | constant_folding.cc | 41 void VisitUnaryOperation(HUnaryOperation* inst) override; 42 void VisitBinaryOperation(HBinaryOperation* inst) override; 49 bool TryRemoveBinaryOperationViaSelect(HBinaryOperation* inst); 51 void VisitArrayLength(HArrayLength* inst) override; 52 void VisitDivZeroCheck(HDivZeroCheck* inst) override; 53 void VisitIf(HIf* inst) override; 54 void VisitInvoke(HInvoke* inst) override; 55 void VisitTypeConversion(HTypeConversion* inst) override; 125 void HConstantFoldingVisitor::VisitUnaryOperation(HUnaryOperation* inst) { in VisitUnaryOperation() argument 128 HConstant* constant = inst->TryStaticEvaluation(); in VisitUnaryOperation() [all …]
|
D | instruction_simplifier_riscv64.cc | 91 void VisitAnd(HAnd* inst) override { in VisitAnd() argument 92 if (TryMergeNegatedInput(inst)) { in VisitAnd() 97 void VisitOr(HOr* inst) override { in VisitOr() argument 98 if (TryMergeNegatedInput(inst)) { in VisitOr() 103 void VisitSub(HSub* inst) override { in VisitSub() argument 104 if (TryMergeWithAnd(inst)) { in VisitSub() 109 void VisitXor(HXor* inst) override { in VisitXor() argument 110 if (TryMergeNegatedInput(inst)) { in VisitXor()
|
D | constant_folding_test.cc | 127 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0); in TEST_F() local 128 ASSERT_TRUE(inst->IsIntConstant()); in TEST_F() 129 ASSERT_EQ(inst->AsIntConstant()->GetValue(), -1); in TEST_F() 188 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0); in TEST_F() local 189 ASSERT_TRUE(inst->IsLongConstant()); in TEST_F() 190 ASSERT_EQ(inst->AsLongConstant()->GetValue(), INT64_C(-4294967296)); in TEST_F() 249 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0); in TEST_F() local 250 ASSERT_TRUE(inst->IsIntConstant()); in TEST_F() 251 ASSERT_EQ(inst->AsIntConstant()->GetValue(), 3); in TEST_F() 399 HInstruction* inst = graph->GetBlocks()[1]->GetFirstInstruction()->InputAt(0); in TEST_F() local [all …]
|
D | load_store_analysis.cc | 93 bool HeapLocationCollector::InstructionEligibleForLSERemoval(HInstruction* inst) const { in InstructionEligibleForLSERemoval() 94 if (inst->IsNewInstance()) { in InstructionEligibleForLSERemoval() 95 return !inst->AsNewInstance()->NeedsChecks(); in InstructionEligibleForLSERemoval() 96 } else if (inst->IsNewArray()) { in InstructionEligibleForLSERemoval() 97 HInstruction* array_length = inst->AsNewArray()->GetLength(); in InstructionEligibleForLSERemoval() 101 std::all_of(inst->GetUses().cbegin(), in InstructionEligibleForLSERemoval() 102 inst->GetUses().cend(), in InstructionEligibleForLSERemoval()
|
/art/tools/ahat/src/main/com/android/ahat/ |
D | Summarizer.java | 38 public static DocString summarize(AhatInstance inst) { in summarize() argument 40 if (inst == null) { in summarize() 46 if (inst.getBaseline().isPlaceHolder()) { in summarize() 51 if (inst.isPlaceHolder()) { in summarize() 56 Reachability reachability = inst.getReachability(); in summarize() 62 if (inst.isRoot()) { in summarize() 66 DocString linkText = DocString.text(inst.toString()); in summarize() 67 if (inst.isPlaceHolder()) { in summarize() 71 URI objTarget = DocString.formattedUri("object?id=0x%x", inst.getId()); in summarize() 76 String stringValue = inst.asString(kMaxChars); in summarize() [all …]
|
D | ObjectHandler.java | 58 AhatInstance inst = mSnapshot.findInstance(id); in handle() local 59 if (inst == null) { in handle() 63 AhatInstance base = inst.getBaseline(); in handle() 65 doc.title("Object %08x", inst.getId()); in handle() 66 doc.big(Summarizer.summarize(inst)); in handle() 68 printAllocationSite(doc, query, inst); in handle() 70 if (!inst.isUnreachable()) { in handle() 71 printGcRootPath(doc, query, inst); in handle() 75 AhatClassObj cls = inst.getClassObj(); in handle() 79 doc.description(DocString.text("Heap"), DocString.text(inst.getHeap().getName())); in handle() [all …]
|
D | OverviewHandler.java | 94 for (AhatBitmapInstance inst : list) { in printDuplicateBitmaps() 95 AhatInstance base = inst.getBaseline(); in printDuplicateBitmaps() 96 SizeTable.row(doc, inst.getSize(), base.getSize(), in printDuplicateBitmaps() 97 DocString.text(inst.getHeap().getName()), in printDuplicateBitmaps() 98 Summarizer.summarize(inst)); in printDuplicateBitmaps() 99 totalSize = totalSize.plus(inst.getSize()); in printDuplicateBitmaps()
|
/art/runtime/verifier/ |
D | method_verifier.cc | 286 bool VerifyInstruction(const Instruction* inst, uint32_t code_offset); 446 …bool CheckSignaturePolymorphicReceiver(const Instruction* inst) REQUIRES_SHARED(Locks::mutator_loc… 522 void VerifyNewArray(const Instruction* inst, bool is_filled, bool is_range) 533 void VerifyAGet(const Instruction* inst, const RegType& insn_type, 537 void VerifyAPut(const Instruction* inst, const RegType& insn_type, 549 void VerifyISFieldAccess(const Instruction* inst, const RegType& insn_type, 597 ArtMethod* VerifyInvocationArgs(const Instruction* inst, MethodType method_type, bool is_range) 602 void VerifyInvocationArgsUnresolvedMethod(const Instruction* inst, MethodType method_type, 607 ArtMethod* VerifyInvocationArgsFromIterator(T* it, const Instruction* inst, 708 uint16_t GetMethodIdxOfInvoke(const Instruction* inst) in GetMethodIdxOfInvoke() argument [all …]
|
D | register_line.cc | 49 const RegType& RegisterLine::GetInvocationThis(MethodVerifier* verifier, const Instruction* inst, in GetInvocationThis() argument 51 DCHECK(inst->IsInvoke()); in GetInvocationThis() 52 const size_t args_count = inst->VRegA(); in GetInvocationThis() 60 const uint32_t this_reg = inst->VRegC(); in GetInvocationThis() 198 void RegisterLine::CheckUnaryOp(MethodVerifier* verifier, const Instruction* inst, in CheckUnaryOp() argument 200 if (VerifyRegisterType(verifier, inst->VRegB_12x(), src_type)) { in CheckUnaryOp() 201 SetRegisterType<LockOp::kClear>(inst->VRegA_12x(), dst_type); in CheckUnaryOp() 205 void RegisterLine::CheckUnaryOpWide(MethodVerifier* verifier, const Instruction* inst, in CheckUnaryOpWide() argument 208 if (VerifyRegisterTypeWide(verifier, inst->VRegB_12x(), src_type1, src_type2)) { in CheckUnaryOpWide() 209 SetRegisterTypeWide(inst->VRegA_12x(), dst_type1, dst_type2); in CheckUnaryOpWide() [all …]
|
D | register_line.h | 230 const Instruction* inst, 239 const Instruction* inst, 245 const Instruction* inst, 253 const Instruction* inst, 260 const Instruction* inst, 272 const Instruction* inst, 280 const Instruction* inst, 290 const Instruction* inst, 301 const Instruction* inst, 309 const Instruction* inst, [all …]
|
/art/dexdump/ |
D | dexdump_cfg.cc | 46 const Instruction* inst = &pair.Inst(); in DumpMethodCFG() local 47 if (inst->IsBranch()) { in DumpMethodCFG() 48 dex_pc_is_branch_target.insert(pair.DexPc() + inst->GetTargetOffset()); in DumpMethodCFG() 49 } else if (inst->IsSwitch()) { in DumpMethodCFG() 50 const uint16_t* insns = reinterpret_cast<const uint16_t*>(inst); in DumpMethodCFG() 164 const Instruction* inst = &pair.Inst(); in DumpMethodCFG() local 206 if (inst->IsBranch()) { in DumpMethodCFG() 207 const int32_t offset = inst->GetTargetOffset(); in DumpMethodCFG() 208 const bool conditional = !inst->IsUnconditional(); in DumpMethodCFG() 220 } else if (inst->IsSwitch()) { in DumpMethodCFG() [all …]
|
/art/tools/ahat/src/main/com/android/ahat/heapdump/ |
D | AhatInstance.java | 655 private static PathElement getNextPathElementToGcRoot(AhatInstance inst) { in getNextPathElementToGcRoot() argument 656 if (inst.isRoot()) { in getNextPathElementToGcRoot() 659 return new PathElement(inst.mNextInstanceToGcRoot, inst.mNextInstanceToGcRootField); in getNextPathElementToGcRoot() 771 static void computeRetainedSize(AhatInstance inst, int numHeaps) { in computeRetainedSize() argument 779 deque.push(inst); in computeRetainedSize() 782 inst = deque.pop(); in computeRetainedSize() 783 if (inst.mRetainedSizes == null) { in computeRetainedSize() 784 inst.mRetainedSizes = new Size[numHeaps]; in computeRetainedSize() 786 inst.mRetainedSizes[i] = Size.ZERO; in computeRetainedSize() 788 if (!(inst instanceof SuperRoot)) { in computeRetainedSize() [all …]
|
D | Diff.java | 105 private Key(AhatInstance inst) { in Key() argument 106 mClass = inst.getClassName(); in Key() 107 mHeapName = inst.getHeap().getName(); in Key() 108 mClassName = inst.isClassObj() ? inst.asClassObj().getName() : ""; in Key() 109 String string = inst.asString(); in Key() 111 AhatArrayInstance array = inst.asArrayInstance(); in Key() 118 public static Key keyFor(AhatInstance inst) { in keyFor() argument 119 return new Key(inst); in keyFor() 162 private static AhatInstance createPlaceHolders(AhatInstance inst, in createPlaceHolders() argument 166 AhatInstance result = inst.newPlaceHolderInstance(); in createPlaceHolders() [all …]
|
D | AhatSnapshot.java | 57 for (AhatInstance inst : mInstances) { in AhatSnapshot() 59 inst.getSite().addInstance(inst); in AhatSnapshot() 62 AhatInstance.RegisteredNativeAllocation nra = inst.asRegisteredNativeAllocation(); in AhatSnapshot() 67 if (retained == Reachability.UNREACHABLE && inst.isUnreachable()) { in AhatSnapshot() 68 mSuperRoot.addRoot(inst); in AhatSnapshot() 125 AhatInstance inst = findInstance(id); in findClassObj() local 126 return inst == null ? null : inst.asClassObj(); in findClassObj()
|
D | Site.java | 190 void addInstance(AhatInstance inst) { in addInstance() argument 191 mObjects.add(inst); in addInstance() 218 for (AhatInstance inst : mObjects) { in prepareForUse() 219 if (inst.getReachability().notWeakerThan(retained)) { in prepareForUse() 220 AhatHeap heap = inst.getHeap(); in prepareForUse() 221 Size size = inst.getSize(); in prepareForUse() 222 ObjectsInfo info = getObjectsInfo(heap, inst.getClassObj()); in prepareForUse() 285 for (AhatInstance inst : mObjects) { in getObjects() 286 if (predicate.test(inst)) { in getObjects() 287 consumer.accept(inst); in getObjects()
|
/art/tools/dexanalyze/ |
D | dexanalyze_experiments.cc | 45 uint16_t NumberOfArgs(const Instruction& inst) { in NumberOfArgs() argument 46 return IsRange(inst.Opcode()) ? inst.VRegA_3rc() : inst.VRegA_35c(); in NumberOfArgs() 49 uint16_t DexMethodIndex(const Instruction& inst) { in DexMethodIndex() argument 50 return IsRange(inst.Opcode()) ? inst.VRegB_3rc() : inst.VRegB_35c(); in DexMethodIndex() 283 auto ProcessInstanceField = [&](const Instruction& inst, in ProcessDexFile() 287 const uint32_t dex_field_idx = inst.VRegC_22c(); in ProcessDexFile() 289 uint32_t input = inst.VRegA_22c(); in ProcessDexFile() 291 const uint32_t receiver = inst.VRegB_22c(); in ProcessDexFile() 298 auto ProcessStaticField = [&](const Instruction& inst, in ProcessDexFile() argument 301 const uint32_t dex_field_idx = inst.VRegB_21c(); in ProcessDexFile() [all …]
|
D | dexanalyze_bytecode.cc | 224 for (auto inst = code_item.begin(); inst != code_item.end(); ++inst) { in ProcessCodeItem() local 227 std::cout << inst->DumpString(nullptr); in ProcessCodeItem() 237 const Instruction::Code opcode = inst->Opcode(); in ProcessCodeItem() 257 const uint32_t dex_field_idx = inst->VRegC_22c(); in ProcessCodeItem() 264 uint32_t receiver = inst->VRegB_22c(); in ProcessCodeItem() 266 uint32_t out_reg = inst->VRegA_22c(); in ProcessCodeItem() 295 const uint16_t str_idx = is_jumbo ? inst->VRegB_31c() : inst->VRegB_21c(); in ProcessCodeItem() 296 uint32_t out_reg = is_jumbo ? inst->VRegA_31c() : inst->VRegA_21c(); in ProcessCodeItem() 324 uint32_t out_reg = inst->VRegA_21c(); in ProcessCodeItem() 325 const uint32_t dex_field_idx = inst->VRegB_21c(); in ProcessCodeItem() [all …]
|
/art/runtime/interpreter/mterp/ |
D | nterp.cc | 264 const Instruction* inst = Instruction::At(dex_pc_ptr); in NterpGetShortyFromInvokePolymorphic() local 265 dex::ProtoIndex proto_idx(inst->Opcode() == Instruction::INVOKE_POLYMORPHIC in NterpGetShortyFromInvokePolymorphic() 266 ? inst->VRegH_45cc() in NterpGetShortyFromInvokePolymorphic() 267 : inst->VRegH_4rcc()); in NterpGetShortyFromInvokePolymorphic() 274 const Instruction* inst = Instruction::At(dex_pc_ptr); in NterpGetShortyFromInvokeCustom() local 275 uint16_t call_site_index = (inst->Opcode() == Instruction::INVOKE_CUSTOM in NterpGetShortyFromInvokeCustom() 276 ? inst->VRegB_35c() in NterpGetShortyFromInvokeCustom() 277 : inst->VRegB_3rc()); in NterpGetShortyFromInvokeCustom() 323 const Instruction* inst = Instruction::At(dex_pc_ptr); in NterpGetMethod() local 324 Instruction::Code opcode = inst->Opcode(); in NterpGetMethod() [all …]
|
/art/test/551-implicit-null-checks/src/ |
D | Main.java | 23 private Inner inst; field in Main 50 long result = inst.i1; in $opt$noinline$testGetLong() 55 inst.i1 = a; in $opt$noinline$testPutLong() 60 double result = inst.i2; in $opt$noinline$testGetDouble() 65 inst.i2 = a; in $opt$noinline$testPutDouble()
|
/art/runtime/interpreter/ |
D | interpreter_common.h | 120 const Instruction* inst, 163 const Instruction* inst, in DoInvoke() argument 171 const uint32_t vregC = is_range ? inst->VRegC_3rc() : inst->VRegC_35c(); in DoInvoke() 176 self, sf_method, &obj, *inst, /* only_lookup_tls_cache= */ false, &string_init); in DoInvoke() 184 called_method, self, shadow_frame, inst, inst_data, string_init, result); in DoInvoke() 206 const Instruction* inst, \ 216 const Instruction* inst, 232 const Instruction* inst, in DoInvokeCustom() argument 236 const uint32_t call_site_idx = is_range ? inst->VRegB_3rc() : inst->VRegB_35c(); in DoInvokeCustom() 238 RangeInstructionOperands operands(inst->VRegC_3rc(), inst->VRegA_3rc()); in DoInvokeCustom() [all …]
|
D | interpreter_common.cc | 207 void UnexpectedOpcode(const Instruction* inst, const ShadowFrame& shadow_frame) { in UnexpectedOpcode() argument 209 << inst->DumpString(shadow_frame.GetMethod()->GetDexFile()); in UnexpectedOpcode() 296 const Instruction* inst, in DoMethodHandleInvokeCommon() argument 305 const uint32_t vRegC = (is_range) ? inst->VRegC_4rcc() : inst->VRegC_45cc(); in DoMethodHandleInvokeCommon() 306 const int invoke_method_idx = (is_range) ? inst->VRegB_4rcc() : inst->VRegB_45cc(); in DoMethodHandleInvokeCommon() 328 const uint16_t vRegH = (is_range) ? inst->VRegH_4rcc() : inst->VRegH_45cc(); in DoMethodHandleInvokeCommon() 351 RangeInstructionOperands operands(inst->VRegC_4rcc() + 1, inst->VRegA_4rcc() - 1); in DoMethodHandleInvokeCommon() 370 inst->GetVarArgs(args, inst_data); in DoMethodHandleInvokeCommon() 374 VarArgsInstructionOperands operands(args, inst->VRegA_45cc() - 1); in DoMethodHandleInvokeCommon() 395 const Instruction* inst, in DoMethodHandleInvokeExact() argument [all …]
|
/art/test/003-omnibus-opcodes/src/ |
D | MethodCall.java | 54 MethodCall inst = new MethodCall(); in run() local 56 MethodCallBase base = inst; in run() 58 inst.tryThing(); in run() 60 inst = null; in run() 62 inst.directly(); in run()
|
/art/tools/veridex/ |
D | hidden_api_finder.cc | 66 for (const DexInstructionPcPair& inst : codes) { in CollectAccesses() local 67 if (inst.DexPc() >= max_pc) { in CollectAccesses() 72 switch (inst->Opcode()) { in CollectAccesses() 74 dex::StringIndex string_index(inst->VRegB_21c()); in CollectAccesses() 106 CheckMethod(inst->VRegB_35c(), resolver, method.GetReference()); in CollectAccesses() 115 CheckMethod(inst->VRegB_3rc(), resolver, method.GetReference()); in CollectAccesses() 126 CheckField(inst->VRegC_22c(), resolver, method.GetReference()); in CollectAccesses() 137 CheckField(inst->VRegC_22c(), resolver, method.GetReference()); in CollectAccesses() 148 CheckField(inst->VRegB_21c(), resolver, method.GetReference()); in CollectAccesses() 159 CheckField(inst->VRegB_21c(), resolver, method.GetReference()); in CollectAccesses()
|
/art/test/043-privates/src/ |
D | Main.java | 45 PrivatePackage inst = new PrivatePackageSub(); in stretchTest() local 46 System.out.println("PrivatePackage --> " + inst.getStr()); in stretchTest() 47 System.out.println("PrivatePackage --> " + inst.privGetStr()); in stretchTest()
|
/art/test/983-source-transform-verify/ |
D | source_transform_art.cc | 56 const Instruction& inst = pair.Inst(); in VerifyClassData() local 58 if ((inst.GetVerifyExtraFlags() & forbidden_flags) != 0) { in VerifyClassData() 61 << inst.DumpString(dex.get()) << std::endl; in VerifyClassData()
|