Home | History | Annotate | Download | only in mips

Lines Matching refs:CONTEXT

130 //   o cp: our context
179 // Generators allocate locals, if any, in context slots.
203 // Possibly allocate a local context.
204 int heap_slots = info->scope()->num_heap_slots() - Context::MIN_CONTEXT_SLOTS;
206 Comment cmnt(masm_, "[ Allocate context");
219 // Context is returned in both v0 and cp. It replaces the context
222 // Copy any necessary parameters into the context.
231 // Store it in the context.
247 // Load this again, if it's used by the local context below.
772 // context. Otherwise, we let the Visit function deal with the
774 if (!context()->IsTest() || !info_->IsOptimizable()) return;
789 // context.
792 // Check that we're not inside a with or catch context.
808 // local context.
831 case Variable::CONTEXT:
892 case Variable::CONTEXT: {
897 int offset = Context::SlotOffset(variable->index());
927 ASSERT(variable->location() == Variable::CONTEXT);
936 __ lw(a1, ContextOperand(a1, Context::EXTENSION_INDEX));
942 Context::SlotOffset(variable->index()),
964 case Variable::CONTEXT: {
986 // The context is the first argument.
1239 { EffectContext context(this);
1351 context()->Plug(v0);
1373 __ lw(temp, ContextOperand(current, Context::EXTENSION_INDEX));
1376 // Load next context in chain.
1377 __ lw(next, ContextOperand(current, Context::PREVIOUS_INDEX));
1382 // context extensions.
1393 // Terminate at native context.
1398 __ lw(temp, ContextOperand(next, Context::EXTENSION_INDEX));
1400 // Load next context in chain.
1401 __ lw(next, ContextOperand(next, Context::PREVIOUS_INDEX));
1419 Register context = cp;
1427 __ lw(temp, ContextOperand(context, Context::EXTENSION_INDEX));
1430 __ lw(next, ContextOperand(context, Context::PREVIOUS_INDEX));
1432 context = next;
1436 __ lw(temp, ContextOperand(context, Context::EXTENSION_INDEX));
1442 return ContextOperand(context, var->index());
1497 context()->Plug(v0);
1503 case Variable::CONTEXT: {
1505 ? "Context variable"
1562 context()->Plug(v0);
1566 context()->Plug(var);
1578 __ Push(cp, a1); // Context and name.
1581 context()->Plug(v0);
1633 context()->Plug(v0);
1774 context()->PlugTOS();
1776 context()->Plug(v0);
1880 context()->PlugTOS();
1882 context()->Plug(v0);
1938 { AccumulatorValueContext context(this);
1963 AccumulatorValueContext context(this);
1989 context()->Plug(v0);
2040 context()->Plug(result_register());
2138 context()->DropAndPlug(2, v0); // drop iter and g
2162 // Load suspended function and context.
2191 // cp = callee's context,
2239 context()->Plug(result_register());
2395 context()->Plug(v0);
2409 context()->Plug(v0);
2435 EffectContext context(this);
2464 context()->Plug(v0);
2494 // able to drill a hole to that function context, even from inside a
2495 // 'with' context. We thus bypass the normal static scope lookup for
2499 __ Push(cp, a0); // Context and name.
2509 __ Push(cp, a1, a0); // Context, name, strict mode.
2527 int offset = Context::SlotOffset(var->index());
2548 int offset = Context::SlotOffset(var->index());
2557 __ Push(cp, a1, a0); // Context, name, strict mode.
2583 context()->Plug(v0);
2606 context()->Plug(v0);
2618 context()->Plug(v0);
2624 context()->Plug(v0);
2656 // Restore context register.
2658 context()->Plug(v0);
2689 // Restore context register.
2691 context()->DropAndPlug(1, v0); // Drop the key still on the stack.
2719 // Restore context register.
2721 context()->DropAndPlug(1, v0);
2796 // Restore context register.
2798 context()->DropAndPlug(1, v0);
2910 context()->Plug(v0);
2924 context()->PrepareTest(&materialize_true, &materialize_false,
2931 context()->Plug(if_true, if_false);
2945 context()->PrepareTest(&materialize_true, &materialize_false,
2952 context()->Plug(if_true, if_false);
2966 context()->PrepareTest(&materialize_true, &materialize_false,
2983 context()->Plug(if_true, if_false);
2997 context()->PrepareTest(&materialize_true, &materialize_false,
3006 context()->Plug(if_true, if_false);
3020 context()->PrepareTest(&materialize_true, &materialize_false,
3030 context()->Plug(if_true, if_false);
3045 context()->PrepareTest(&materialize_true, &materialize_false,
3112 __ lw(a3, ContextOperand(cp, Context::GLOBAL_OBJECT_INDEX));
3114 __ lw(a3, ContextOperand(a3, Context::STRING_FUNCTION_PROTOTYPE_MAP_INDEX));
3118 context()->Plug(if_true, if_false);
3132 context()->PrepareTest(&materialize_true, &materialize_false,
3141 context()->Plug(if_true, if_false);
3155 context()->PrepareTest(&materialize_true, &materialize_false,
3171 context()->Plug(if_true, if_false);
3185 context()->PrepareTest(&materialize_true, &materialize_false,
3194 context()->Plug(if_true, if_false);
3208 context()->PrepareTest(&materialize_true, &materialize_false,
3216 context
3227 context()->PrepareTest(&materialize_true, &materialize_false,
3247 context()->Plug(if_true, if_false);
3263 context()->PrepareTest(&materialize_true, &materialize_false,
3270 context()->Plug(if_true, if_false);
3285 context()->Plug(v0);
3306 context()->Plug(v0);
3366 context()->Plug(v0);
3388 context()->Plug(v0);
3401 context()->Plug(v0);
3415 context()->Plug(v0);
3435 context()->Plug(v0);
3482 context()->Plug(v0);
3519 context()->Plug(string);
3556 context()->Plug(string);
3568 context()->Plug(v0);
3597 context()->Plug(v0);
3611 context()->Plug(v0);
3630 context()->Plug(a1);
3677 context()->Plug(result);
3726 context()->Plug(result);
3748 context()->Plug(v0);
3761 context()->Plug(v0);
3774 context()->Plug(v0);
3784 context()->Plug(v0);
3817 context()->Plug(v0);
3829 context()->Plug(v0);
3845 context()->Plug(v0);
3853 __ lw(cache, ContextOperand(cp, Context::GLOBAL_OBJECT_INDEX));
3857 cache, Context::JSFUNCTION_RESULT_CACHES_INDEX));
3883 context()->Plug(v0);
3920 context()->Plug(v0);
3932 context()->PrepareTest(&materialize_true, &materialize_false,
3941 context()->Plug(if_true, if_false);
3955 context()->Plug(v0);
4193 context()->Plug(v0);
4228 // Restore context register.
4234 context()->Plug(v0);
4253 context()->Plug(v0);
4265 context()->Plug(v0);
4269 context()->Plug(var->is_this());
4272 // context where the variable was introduced.
4277 context()->Plug(v0);
4283 context()->Plug(true);
4291 context()->Plug(Heap::kUndefinedValueRootIndex);
4297 if (context()->IsEffect()) {
4301 } else if (context()->IsTest()) {
4302 const TestContext* test = TestContext::cast(context());
4308 context()->Plug(test->true_label(), test->false_label());
4311 // for control and plugging the control flow into the context,
4314 ASSERT(context()->IsAccumulatorValue() || context()->IsStackValue());
4323 if (context()->IsStackValue()) __ push(v0);
4328 if (context()->IsStackValue()) __ push(v0);
4336 { StackValueContext context(this);
4340 context()->Plug(v0);
4366 // In case of a property we use the uninitialized expression context
4376 AccumulatorValueContext context(this);
4380 if (expr->is_postfix() && !context()->IsEffect()) {
4418 if (!context()->IsEffect()) {
4451 if (!context()->IsEffect()) {
4487 { EffectContext context(this);
4491 context.Plug(v0);
4495 if (!context()->IsEffect()) {
4496 context()->PlugTOS();
4502 context()->Plug(v0);
4515 if (!context()->IsEffect()) {
4516 context()->PlugTOS();
4519 context()->Plug(v0);
4532 if (!context()->IsEffect()) {
4533 context()->PlugTOS();
4536 context()->Plug(v0);
4545 ASSERT(!context()->IsEffect());
4546 ASSERT(!context()->IsTest());
4557 context()->Plug(v0);
4572 context()->Plug(v0);
4586 context()->PrepareTest(&materialize_true, &materialize_false,
4589 { AccumulatorValueContext context(this);
4655 context()->Plug(if_true, if_false);
4668 // into the expression's context after the comparison is performed.
4673 context()->PrepareTest(&materialize_true, &materialize_false,
4723 // expression's context.
4724 context()->Plug(if_true, if_false);
4735 context()->PrepareTest(&materialize_true, &materialize_false,
4752 context()->Plug(if_true, if_false);
4758 context()->Plug(v0);
4787 // Contexts nested in the native context have a canonical empty function
4794 // context calling eval, not the anonymous closure containing the eval
4795 // code. Fetch it from the context.
4796 __ lw(at, ContextOperand(cp, Context::CLOSURE_INDEX));
4886 // Because the handler block contains the context of the finally
4892 // Restore the context to its dedicated register and the stack.