| Index: src/arm/full-codegen-arm.cc
|
| ===================================================================
|
| --- src/arm/full-codegen-arm.cc (revision 4955)
|
| +++ src/arm/full-codegen-arm.cc (working copy)
|
| @@ -766,7 +766,8 @@
|
| }
|
| __ pop(r2); // Receiver.
|
|
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedStoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| // Value in r0 is ignored (declarations are statements).
|
| }
|
| @@ -1042,7 +1043,8 @@
|
| // object (receiver) in r0.
|
| __ ldr(r0, CodeGenerator::GlobalObject());
|
| __ mov(r2, Operand(var->name()));
|
| - Handle<Code> ic(Builtins::builtin(Builtins::LoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::LoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET_CONTEXT);
|
| Apply(context, r0);
|
|
|
| @@ -1095,7 +1097,8 @@
|
| __ mov(r0, Operand(key_literal->handle()));
|
|
|
| // Call keyed load IC. It has arguments key and receiver in r0 and r1.
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedLoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedLoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| Apply(context, r0);
|
| }
|
| @@ -1168,7 +1171,8 @@
|
| VisitForValue(value, kAccumulator);
|
| __ mov(r2, Operand(key->handle()));
|
| __ ldr(r1, MemOperand(sp));
|
| - Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::StoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| break;
|
| }
|
| @@ -1370,7 +1374,8 @@
|
| Literal* key = prop->key()->AsLiteral();
|
| __ mov(r2, Operand(key->handle()));
|
| // Call load IC. It has arguments receiver and property name r0 and r2.
|
| - Handle<Code> ic(Builtins::builtin(Builtins::LoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::LoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| }
|
|
|
| @@ -1378,7 +1383,8 @@
|
| void FullCodeGenerator::EmitKeyedPropertyLoad(Property* prop) {
|
| SetSourcePosition(prop->position());
|
| // Call keyed load IC. It has arguments key and receiver in r0 and r1.
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedLoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedLoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| }
|
|
|
| @@ -1423,7 +1429,8 @@
|
| __ mov(r1, r0);
|
| __ pop(r0); // Restore value.
|
| __ mov(r2, Operand(prop->key()->AsLiteral()->handle()));
|
| - Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::StoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| break;
|
| }
|
| @@ -1434,7 +1441,8 @@
|
| __ mov(r1, r0);
|
| __ pop(r2);
|
| __ pop(r0); // Restore value.
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedStoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| break;
|
| }
|
| @@ -1457,7 +1465,8 @@
|
| // r2, and the global object in r1.
|
| __ mov(r2, Operand(var->name()));
|
| __ ldr(r1, CodeGenerator::GlobalObject());
|
| - Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::StoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
|
|
| } else if (var->mode() != Variable::CONST || op == Token::INIT_CONST) {
|
| @@ -1547,7 +1556,8 @@
|
| __ pop(r1);
|
| }
|
|
|
| - Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::StoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
|
|
| // If the assignment ends an initialization block, revert to fast case.
|
| @@ -1591,7 +1601,8 @@
|
| __ pop(r2);
|
| }
|
|
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedStoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
|
|
| // If the assignment ends an initialization block, revert to fast case.
|
| @@ -1777,7 +1788,8 @@
|
| SetSourcePosition(prop->position());
|
| __ pop(r1); // We do not need to keep the receiver.
|
|
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedLoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedLoadIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| // Push result (function).
|
| __ push(r0);
|
| @@ -1838,7 +1850,8 @@
|
| // Function is in sp[arg_count + 1].
|
| __ ldr(r1, MemOperand(sp, (arg_count + 1) * kPointerSize));
|
|
|
| - Handle<Code> construct_builtin(Builtins::builtin(Builtins::JSConstructCall));
|
| + Handle<Code> construct_builtin(Isolate::Current()->builtins()->builtin(
|
| + Builtins::JSConstructCall));
|
| __ Call(construct_builtin, RelocInfo::CONSTRUCT_CALL);
|
|
|
| // Replace function on TOS with result in r0, or pop it.
|
| @@ -2700,7 +2713,8 @@
|
| Comment cmnt(masm_, "Global variable");
|
| __ ldr(r0, CodeGenerator::GlobalObject());
|
| __ mov(r2, Operand(proxy->name()));
|
| - Handle<Code> ic(Builtins::builtin(Builtins::LoadIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::LoadIC_Initialize));
|
| // Use a regular load, not a contextual load, to avoid a reference
|
| // error.
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| @@ -2906,7 +2920,8 @@
|
| case NAMED_PROPERTY: {
|
| __ mov(r2, Operand(prop->key()->AsLiteral()->handle()));
|
| __ pop(r1);
|
| - Handle<Code> ic(Builtins::builtin(Builtins::StoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::StoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| if (expr->is_postfix()) {
|
| if (context_ != Expression::kEffect) {
|
| @@ -2920,7 +2935,8 @@
|
| case KEYED_PROPERTY: {
|
| __ pop(r1); // Key.
|
| __ pop(r2); // Receiver.
|
| - Handle<Code> ic(Builtins::builtin(Builtins::KeyedStoreIC_Initialize));
|
| + Handle<Code> ic(Isolate::Current()->builtins()->builtin(
|
| + Builtins::KeyedStoreIC_Initialize));
|
| __ Call(ic, RelocInfo::CODE_TARGET);
|
| if (expr->is_postfix()) {
|
| if (context_ != Expression::kEffect) {
|
|
|