| Index: src/builtins.cc
|
| ===================================================================
|
| --- src/builtins.cc (revision 6955)
|
| +++ src/builtins.cc (working copy)
|
| @@ -31,6 +31,7 @@
|
| #include "arguments.h"
|
| #include "bootstrapper.h"
|
| #include "builtins.h"
|
| +#include "gdb-jit.h"
|
| #include "ic-inl.h"
|
| #include "vm-state-inl.h"
|
|
|
| @@ -1257,10 +1258,15 @@
|
|
|
|
|
| static void Generate_LoadIC_StringLength(MacroAssembler* masm) {
|
| - LoadIC::GenerateStringLength(masm);
|
| + LoadIC::GenerateStringLength(masm, false);
|
| }
|
|
|
|
|
| +static void Generate_LoadIC_StringWrapperLength(MacroAssembler* masm) {
|
| + LoadIC::GenerateStringLength(masm, true);
|
| +}
|
| +
|
| +
|
| static void Generate_LoadIC_FunctionPrototype(MacroAssembler* masm) {
|
| LoadIC::GenerateFunctionPrototype(masm);
|
| }
|
| @@ -1311,44 +1317,6 @@
|
| }
|
|
|
|
|
| -static void Generate_KeyedLoadIC_ExternalByteArray(MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalByteArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalUnsignedByteArray(
|
| - MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalUnsignedByteArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalShortArray(MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalShortArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalUnsignedShortArray(
|
| - MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalUnsignedShortArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalIntArray(MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalIntArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalUnsignedIntArray(
|
| - MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalUnsignedIntArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedLoadIC_ExternalFloatArray(MacroAssembler* masm) {
|
| - KeyedLoadIC::GenerateExternalArray(masm, kExternalFloatArray);
|
| -}
|
| -
|
| -
|
| static void Generate_KeyedLoadIC_PreMonomorphic(MacroAssembler* masm) {
|
| KeyedLoadIC::GeneratePreMonomorphic(masm);
|
| }
|
| @@ -1393,44 +1361,6 @@
|
| }
|
|
|
|
|
| -static void Generate_KeyedStoreIC_ExternalByteArray(MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalByteArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalUnsignedByteArray(
|
| - MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalUnsignedByteArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalShortArray(MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalShortArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalUnsignedShortArray(
|
| - MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalUnsignedShortArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalIntArray(MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalIntArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalUnsignedIntArray(
|
| - MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalUnsignedIntArray);
|
| -}
|
| -
|
| -
|
| -static void Generate_KeyedStoreIC_ExternalFloatArray(MacroAssembler* masm) {
|
| - KeyedStoreIC::GenerateExternalArray(masm, kExternalFloatArray);
|
| -}
|
| -
|
| -
|
| static void Generate_KeyedStoreIC_Miss(MacroAssembler* masm) {
|
| KeyedStoreIC::GenerateMiss(masm);
|
| }
|
| @@ -1616,7 +1546,7 @@
|
| CodeDesc desc;
|
| masm.GetCode(&desc);
|
| Code::Flags flags = functions[i].flags;
|
| - Object* code = 0;
|
| + Object* code = NULL;
|
| {
|
| // During startup it's OK to always allocate and defer GC to later.
|
| // This simplifies things because we don't need to retry.
|
| @@ -1630,7 +1560,11 @@
|
| }
|
| // Log the event and add the code to the builtins array.
|
| PROFILE(CodeCreateEvent(Logger::BUILTIN_TAG,
|
| - Code::cast(code), functions[i].s_name));
|
| + Code::cast(code),
|
| + functions[i].s_name));
|
| + GDBJIT(AddCode(GDBJITInterface::BUILTIN,
|
| + functions[i].s_name,
|
| + Code::cast(code)));
|
| builtins_[i] = code;
|
| #ifdef ENABLE_DISASSEMBLER
|
| if (FLAG_print_builtin_code) {
|
|
|