Lines Matching refs:environment
565 void LCodeGen::WriteTranslation(LEnvironment* environment,
567 if (environment == NULL) return;
569 // The translation includes one command per value in the environment.
570 int translation_size = environment->translation_size();
572 WriteTranslation(environment->outer(), translation);
573 WriteTranslationFrame(environment, translation);
578 LOperand* value = environment->values()->at(i);
580 environment, translation, value, environment->HasTaggedValueAt(i),
581 environment->HasUint32ValueAt(i), &object_index, &dematerialized_index);
586 void LCodeGen::AddToTranslation(LEnvironment* environment,
595 if (environment->ObjectIsDuplicateAt(object_index)) {
596 int dupe_of = environment->ObjectDuplicateOfAt(object_index);
600 int object_length = environment->ObjectLengthAt(object_index);
601 if (environment->ObjectIsArgumentsAt(object_index)) {
607 int env_offset = environment->translation_size() + dematerialized_index;
610 LOperand* value = environment->values()->at(env_offset + i);
611 AddToTranslation(environment,
614 environment->HasTaggedValueAt(env_offset + i),
615 environment->HasUint32ValueAt(env_offset + i),
717 void LCodeGen::RegisterEnvironmentForDeoptimization(LEnvironment* environment,
719 environment->set_has_been_used();
720 if (!environment->HasBeenRegistered()) {
725 // Layout of the environment:
736 for (LEnvironment* e = environment; e != NULL; e = e->outer()) {
743 WriteTranslation(environment, &translation);
746 environment->Register(deoptimization_index,
749 deoptimizations_.Add(environment, zone());
758 LEnvironment* environment = instr->environment();
759 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt);
760 DCHECK(environment->HasBeenRegistered());
761 int id = environment->deoptimization_index();
4717 // the environment's HContext or HInlinedContext value.
4778 // the environment's HContext or HInlinedContext value.
5585 LEnvironment* env = instr->environment();
5623 LEnvironment* env = instr->environment();
5641 LEnvironment* env = instr->environment();
5674 // This is a pseudo-instruction that ensures that the environment here is
5677 LEnvironment* environment = instr->environment();
5679 // If the environment were already registered, we would have no way of
5681 DCHECK(!environment->HasBeenRegistered());
5682 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt);