Lines Matching refs:user

67     HInstruction* user = use.GetUser();
68 if ((user->IsInvokeStaticOrDirect() || user->IsNewInstance()) &&
69 CanMoveClinitCheck(check, user)) {
70 implicit_clinit = user;
71 if (user->IsInvokeStaticOrDirect()) {
72 DCHECK(user->AsInvokeStaticOrDirect()->IsStaticWithExplicitClinitCheck());
73 user->AsInvokeStaticOrDirect()->RemoveExplicitClinitCheck(
76 DCHECK(user->IsNewInstance());
78 if (user->AsNewInstance()->GetEntrypoint() == kQuickAllocObjectInitialized) {
79 user->AsNewInstance()->SetEntrypoint(kQuickAllocObjectResolved);
90 HInstruction* user = it->GetUser();
92 DCHECK(implicit_clinit->StrictlyDominates(user) || (implicit_clinit == user));
94 if (user->IsInvokeStaticOrDirect()) {
95 user->AsInvokeStaticOrDirect()->RemoveExplicitClinitCheck(
149 HInstruction* user) const {
150 if (condition->GetNext() != user) {
154 if (user->IsIf() || user->IsDeoptimize()) {
158 if (user->IsSelect() && user->AsSelect()->GetCondition() == condition) {
167 HInstruction* user = condition->GetUses().front().GetUser();
168 if (CanEmitConditionAt(condition, user)) {
192 HInstruction* user) const {
193 // Determine if input and user come from the same dex instruction, so that we can move
194 // the clinit check responsibility from one to the other, i.e. from HClinitCheck (user)
195 // to HLoadClass (input), or from HClinitCheck (input) to HInvokeStaticOrDirect (user),
196 // or from HLoadClass (input) to HNewInstance (user).
199 if (user->GetDexPc() != input->GetDexPc()) {
205 HEnvironment* user_environment = user->GetEnvironment();
223 if (user->GetBlock() != input->GetBlock()) {
228 // or an instruction with side effects between input and user.
230 for (HInstruction* between = input->GetNext(); between != user; between = between->GetNext()) {