Lines Matching refs:environment
526 void LCodeGen::WriteTranslation(LEnvironment* environment,
528 if (environment == NULL) return;
530 // The translation includes one command per value in the environment.
531 int translation_size = environment->translation_size();
533 WriteTranslation(environment->outer(), translation);
534 environment, translation);
539 LOperand* value = environment->values()->at(i);
541 environment, translation, value, environment->HasTaggedValueAt(i),
542 environment->HasUint32ValueAt(i), &object_index, &dematerialized_index);
547 void LCodeGen::AddToTranslation(LEnvironment* environment,
556 if (environment->ObjectIsDuplicateAt(object_index)) {
557 int dupe_of = environment->ObjectDuplicateOfAt(object_index);
561 int object_length = environment->ObjectLengthAt(object_index);
562 if (environment->ObjectIsArgumentsAt(object_index)) {
568 int env_offset = environment->translation_size() + dematerialized_index;
571 LOperand* value = environment->values()->at(env_offset + i);
572 AddToTranslation(environment,
575 environment->HasTaggedValueAt(env_offset + i),
576 environment->HasUint32ValueAt(env_offset + i),
691 void LCodeGen::RegisterEnvironmentForDeoptimization(LEnvironment* environment,
693 environment->set_has_been_used();
694 if (!environment->HasBeenRegistered()) {
699 // Layout of the environment:
710 for (LEnvironment* e = environment; e != NULL; e = e->outer()) {
717 WriteTranslation(environment, &translation);
720 environment->Register(deoptimization_index,
723 deoptimizations_.Add(environment, environment->zone());
731 LEnvironment* environment = instr->environment();
732 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt);
733 DCHECK(environment->HasBeenRegistered());
734 int id = environment->deoptimization_index();
4634 // the environment's HContext or HInlinedContext value.
4689 // the environment's HContext or HInlinedContext value.
5418 LEnvironment* env = instr->environment();
5453 LEnvironment* env = instr->environment();
5471 LEnvironment* env = instr->environment();
5505 // This is a pseudo-instruction that ensures that the environment here is
5508 LEnvironment* environment = instr->environment();
5510 // If the environment were already registered, we would have no way of
5512 DCHECK(!environment->HasBeenRegistered());
5513 RegisterEnvironmentForDeoptimization(environment, Safepoint::kNoLazyDeopt);