/art/compiler/optimizing/ |
D | instruction_simplifier_arm64.cc | 45 bool TryMergeIntoShifterOperand(HInstruction* use, 48 bool CanMergeIntoShifterOperand(HInstruction* use, HInstruction* bitfield_op) { in CanMergeIntoShifterOperand() argument 49 return TryMergeIntoShifterOperand(use, bitfield_op, /* do_merge= */ false); in CanMergeIntoShifterOperand() 51 bool MergeIntoShifterOperand(HInstruction* use, HInstruction* bitfield_op) { in MergeIntoShifterOperand() argument 52 DCHECK(CanMergeIntoShifterOperand(use, bitfield_op)); in MergeIntoShifterOperand() 53 return TryMergeIntoShifterOperand(use, bitfield_op, /* do_merge= */ true); in MergeIntoShifterOperand() 90 bool InstructionSimplifierArm64Visitor::TryMergeIntoShifterOperand(HInstruction* use, in TryMergeIntoShifterOperand() argument 93 DCHECK(HasShifterOperand(use, InstructionSet::kArm64)); in TryMergeIntoShifterOperand() 94 DCHECK(use->IsBinaryOperation() || use->IsNeg()); in TryMergeIntoShifterOperand() 98 DataType::Type type = use->GetType(); in TryMergeIntoShifterOperand() [all …]
|
D | instruction_simplifier_arm.cc | 45 bool TryMergeIntoShifterOperand(HInstruction* use, HInstruction* bitfield_op, bool do_merge); 46 bool CanMergeIntoShifterOperand(HInstruction* use, HInstruction* bitfield_op) { in CanMergeIntoShifterOperand() argument 47 return TryMergeIntoShifterOperand(use, bitfield_op, /* do_merge= */ false); in CanMergeIntoShifterOperand() 49 bool MergeIntoShifterOperand(HInstruction* use, HInstruction* bitfield_op) { in MergeIntoShifterOperand() argument 50 DCHECK(CanMergeIntoShifterOperand(use, bitfield_op)); in MergeIntoShifterOperand() 51 return TryMergeIntoShifterOperand(use, bitfield_op, /* do_merge= */ true); in MergeIntoShifterOperand() 84 bool InstructionSimplifierArmVisitor::TryMergeIntoShifterOperand(HInstruction* use, in TryMergeIntoShifterOperand() argument 87 DCHECK(HasShifterOperand(use, InstructionSet::kArm)); in TryMergeIntoShifterOperand() 88 DCHECK(use->IsBinaryOperation()); in TryMergeIntoShifterOperand() 92 DataType::Type type = use->GetType(); in TryMergeIntoShifterOperand() [all …]
|
D | code_sinking.cc | 185 for (const HUseListNode<HInstruction*>& use : instruction->GetUses()) { in FindIdealPosition() local 186 HInstruction* user = use.GetUser(); in FindIdealPosition() 194 : block->GetPredecessors()[use.GetIndex()]; in FindIdealPosition() 199 for (const HUseListNode<HEnvironment*>& use : instruction->GetEnvUses()) { in FindIdealPosition() local 200 DCHECK(!use.GetUser()->GetHolder()->IsPhi()); in FindIdealPosition() 201 DCHECK(!filter || !ShouldFilterUse(instruction, use.GetUser()->GetHolder(), post_dominated)); in FindIdealPosition() 202 finder.Update(use.GetUser()->GetHolder()->GetBlock()); in FindIdealPosition() 227 for (const HUseListNode<HInstruction*>& use : instruction->GetUses()) { in FindIdealPosition() local 228 if (use.GetUser()->GetBlock() == target_block && in FindIdealPosition() 229 (insert_pos == nullptr || use.GetUser()->StrictlyDominates(insert_pos))) { in FindIdealPosition() [all …]
|
D | ssa_phi_elimination.cc | 55 for (const HUseListNode<HInstruction*>& use : phi->GetUses()) { in MarkDeadPhis() local 56 if (!use.GetUser()->IsPhi()) { in MarkDeadPhis() 105 for (const HUseListNode<HInstruction*>& use : phi->GetUses()) { in EliminateDeadPhis() local 106 HInstruction* user = use.GetUser(); in EliminateDeadPhis() 114 for (const HUseListNode<HEnvironment*>& use : phi->GetEnvUses()) { in EliminateDeadPhis() local 115 HEnvironment* user = use.GetUser(); in EliminateDeadPhis() 116 user->SetRawEnvAt(use.GetIndex(), nullptr); in EliminateDeadPhis() 248 for (const HUseListNode<HInstruction*>& use : current->GetUses()) { in Run() local 249 HInstruction* user = use.GetUser(); in Run()
|
D | instruction_simplifier_shared.cc | 111 HInstruction* use = mul->GetUses().front().GetUser(); in TryCombineMultiplyAccumulate() local 112 if (use->IsAdd() || use->IsSub()) { in TryCombineMultiplyAccumulate() 125 HBinaryOperation* binop = use->AsBinaryOperation(); in TryCombineMultiplyAccumulate() 133 } else if (use->IsAdd()) { in TryCombineMultiplyAccumulate() 151 } else if (use->IsNeg() && isa != InstructionSet::kArm) { in TryCombineMultiplyAccumulate() 159 use->GetBlock()->ReplaceAndRemoveInstructionWith(use, mulacc); in TryCombineMultiplyAccumulate() 300 for (const HUseListNode<HInstruction*>& use : index->GetUses()) { in TryExtractVecArrayAccessAddress() local 301 HInstruction* user = use.GetUser(); in TryExtractVecArrayAccessAddress()
|
D | escape.cc | 35 for (const HUseListNode<HInstruction*>& use : reference->GetUses()) { in VisitEscapes() local 36 HInstruction* user = use.GetUser(); in VisitEscapes() 81 for (const HUseListNode<HEnvironment*>& use : reference->GetEnvUses()) { in VisitEscapes() local 82 HEnvironment* user = use.GetUser(); in VisitEscapes()
|
D | ssa_liveness_analysis.cc | 222 for (const HUseListNode<HInstruction*>& use : current->GetUses()) { in ComputeLiveRanges() local 223 HInstruction* user = use.GetUser(); in ComputeLiveRanges() 224 size_t index = use.GetIndex(); in ComputeLiveRanges() 379 for (const UsePosition& use : GetUses()) { in FindFirstRegisterHint() local 380 size_t use_position = use.GetPosition(); in FindFirstRegisterHint() 384 if (use_position >= start && !use.IsSynthesized()) { in FindFirstRegisterHint() 385 HInstruction* user = use.GetUser(); in FindFirstRegisterHint() 386 size_t input_index = use.GetInputIndex(); in FindFirstRegisterHint() 418 Location expected = locations->InAt(use.GetInputIndex()); in FindFirstRegisterHint()
|
/art/test/676-proxy-jit-at-first-use/ |
D | Android.bp | 3 // Build rules for ART run-test `676-proxy-jit-at-first-use`. 16 name: "art-run-test-676-proxy-jit-at-first-use", 21 ":art-run-test-676-proxy-jit-at-first-use-expected-stdout", 22 ":art-run-test-676-proxy-jit-at-first-use-expected-stderr", 28 name: "art-run-test-676-proxy-jit-at-first-use-expected-stdout", 29 out: ["art-run-test-676-proxy-jit-at-first-use-expected-stdout.txt"], 36 name: "art-run-test-676-proxy-jit-at-first-use-expected-stderr", 37 out: ["art-run-test-676-proxy-jit-at-first-use-expected-stderr.txt"],
|
D | info.txt | 1 Regression test for "jit at first use" (-Xjitthreshold:0) crash for proxy methods. b/73718713
|
/art/test/482-checker-loop-back-edge-use/ |
D | Android.bp | 3 // Build rules for ART run-test `482-checker-loop-back-edge-use`. 16 name: "art-run-test-482-checker-loop-back-edge-use", 21 ":art-run-test-482-checker-loop-back-edge-use-expected-stdout", 22 ":art-run-test-482-checker-loop-back-edge-use-expected-stderr", 31 name: "art-run-test-482-checker-loop-back-edge-use-expected-stdout", 32 out: ["art-run-test-482-checker-loop-back-edge-use-expected-stdout.txt"], 39 name: "art-run-test-482-checker-loop-back-edge-use-expected-stderr", 40 out: ["art-run-test-482-checker-loop-back-edge-use-expected-stderr.txt"],
|
/art/test/552-checker-primitive-typeprop/smali/ |
D | TypePropagation.smali | 4 # you may not use this file except in compliance with the License. 33 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 46 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 63 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 75 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 87 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 100 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 112 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 134 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use
|
D | ArrayGet.smali | 4 # you may not use this file except in compliance with the License. 36 add-float v2, v0, v1 # float use fixes type 44 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 64 add-float v2, v0, v1 # float use fixes type 71 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 94 add-int v2, v0, v1 # int use fixes type 102 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 124 aget v0, p0, v0 # read value, should be float but has no typed use 133 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use 154 aget v0, p0, v0 # read value, should be int but has no typed use [all …]
|
/art/tools/jvmti-agents/jit-load/ |
D | README.md | 10 …uilt for 32-bit, 64-bit, host and target. Below examples assume you want to use the 64-bit version. 16 * If using `libartd.so`, make sure to use the debug version of jvmti and agent. 22 * To use with run-test or testrunner.py use the --with-agent argument.
|
/art/tools/jvmti-agents/dump-jvmti-state/ |
D | README.md | 4 allows one to use SIGQUIT to dump information about the current JVMTI state to logcat. It does 12 assume you want to use the 64-bit version. 19 * If using `libartd.so`, make sure to use the debug version of jvmti.
|
/art/test/531-regression-debugphi/smali/ |
D | TestCase.smali | 4 # you may not use this file except in compliance with the License. 51 invoke-static {}, Ljava/lang/System;->nanoTime()J # env use of both PhiA equivalents 60 invoke-static {}, Ljava/lang/System;->nanoTime()J # env use of PhiB 76 # - PrimInt PhiA: update inputs, set to PrimNot, use instead of PrimNot PhiA 101 invoke-static {}, Ljava/lang/System;->nanoTime()J # env use of both PhiA equivalents 107 invoke-static {}, Ljava/lang/System;->nanoTime()J # env use of both PhiB equivalents
|
/art/test/537-checker-debuggable/smali/ |
D | TestCase.smali | 4 # you may not use this file except in compliance with the License. 19 # The phi in this method has no actual uses but one environment use. It will 38 invoke-static {}, Ljava/lang/System;->nanoTime()J # create an env use
|
/art/libartbase/base/unix_file/ |
D | README | 3 This is intended to be lightweight and easy to use, similar to Java's 5 don't pay for what you don't use" apply.
|
/art/test/594-checker-irreducible-linorder/smali/ |
D | IrreducibleLoop.smali | 4 # you may not use this file except in compliance with the License. 99 # This constant has a use in a phi in :back_edge2 and a back edge use in 100 # :back_edge1. Because the linear order is wrong, the back edge use has 101 # a lower liveness than the phi use.
|
/art/test/998-redefine-use-after-free/ |
D | info.txt | 3 It was possible for the JVMTI class redefinition to encounter a use-after-free 9 Hitting this use-after-free can cause many strange outcomes, from CHECK failures
|
/art/test/677-fsi2/ |
D | info.txt | 1 Test that -Xonly-use-system-oat-files works.
|
/art/test/638-checker-inline-caches/ |
D | info.txt | 1 Verify the use of inline caches in AOT mode.
|
/art/test/566-checker-codegen-select/ |
D | info.txt | 1 Test the use positions of inputs of non-materialized conditions.
|
/art/test/1926-missed-frame-pop/ |
D | info.txt | 3 This tests the normal use case.
|
/art/test/1923-frame-pop/ |
D | info.txt | 3 This tests the normal use case.
|
/art/test/615-checker-arm64-store-zero/ |
D | info.txt | 1 Checker test to verify we correctly use wzr and xzr to store zero constants.
|