Permalink
Browse files

Make Latest V8 in Gingerbread buildable

This makes minor updates to the source to ensure build success on Gingerbread.
The changes here include:
1. Update makefiles to include new source files in 2.5.9.7
2. Update makefiles to quiet gcc warnings
3. Update gettid usage to accomodate android specific ids
4. Include stdarg.h in utils.h
5. Update CompileMathFloor function to disable JITed code generation.
   Fall back to runtime support for this.

(cherry picked from commit cc3f90ae562468433112a80cd3be235c6f3516f1)

Change-Id: I2fac2c0bfe66d442757744972aeabb27c7ce4e09
  • Loading branch information...
1 parent 2a4b295 commit a173972bf5d3374276882f83768ead0e7cf5def6 Dineel Sule committed with rmcc Jan 7, 2011
Showing with 29 additions and 12 deletions.
  1. +6 −2 Android.libv8.mk
  2. +4 −0 Android.mksnapshot.mk
  3. +13 −8 Android.v8common.mk
  4. +3 −0 src/arm/stub-cache-arm.cc
  5. +2 −2 src/platform-linux.cc
  6. +1 −0 src/utils.h
View
@@ -59,12 +59,16 @@ LOCAL_CFLAGS += \
-Wno-endif-labels \
-Wno-import \
-Wno-format \
+ -Wno-psabi \
-fno-exceptions \
-DENABLE_DEBUGGER_SUPPORT \
+ -DENABLE_VMSTATE_TRACKING \
+ -DENABLE_LOGGING_AND_PROFILING \
+ -DV8_NATIVE_REGEXP \
-O3
ifeq ($(ARCH_ARM_HAVE_ARMV7A),true)
-LOCAL_CFLAGS += -DCAN_USE_UNALIGNED_ACCESSES
+ LOCAL_CFLAGS += -DCAN_USE_UNALIGNED_ACCESSES
endif
ifeq ($(TARGET_ARCH),arm)
@@ -76,7 +80,7 @@ ifeq ($(TARGET_ARCH),x86)
endif
ifeq ($(ENABLE_V8_LOGGING_AND_PROFILING),true)
- LOCAL_CFLAGS += -DENABLE_LOGGING_AND_PROFILING
+ LOCAL_CFLAGS += -DENABLE_LOGGING_AND_PROFILING
endif
ifeq ($(DEBUG_V8),true)
@@ -54,9 +54,13 @@ LOCAL_CFLAGS := \
-Wno-endif-labels \
-Wno-import \
-Wno-format \
+ -Wno-psabi \
-ansi \
-fno-rtti \
-DENABLE_DEBUGGER_SUPPORT \
+ -DENABLE_LOGGING_AND_PROFILING \
+ -DENABLE_VMSTATE_TRACKING \
+ -DV8_NATIVE_REGEXP \
-O3 \
-DCAN_USE_UNALIGNED_ACCESSES
View
@@ -6,8 +6,11 @@ V8_LOCAL_SRC_FILES := \
src/api.cc \
src/assembler.cc \
src/ast.cc \
+ src/bignum.cc \
+ src/bignum-dtoa.cc \
src/bootstrapper.cc \
src/builtins.cc \
+ src/cached-powers.cc \
src/checks.cc \
src/circular-queue.cc \
src/code-stubs.cc \
@@ -27,9 +30,7 @@ V8_LOCAL_SRC_FILES := \
src/dtoa.cc \
src/execution.cc \
src/factory.cc \
- src/fast-codegen.cc \
src/flags.cc \
- src/flow-graph.cc \
src/frame-element.cc \
src/frames.cc \
src/full-codegen.cc \
@@ -51,8 +52,11 @@ V8_LOCAL_SRC_FILES := \
src/mark-compact.cc \
src/messages.cc \
src/objects.cc \
+ src/objects-visiting.cc \
src/oprofile-agent.cc \
src/parser.cc \
+ src/preparser.cc \
+ src/preparse-data.cc \
src/profile-generator.cc \
src/property.cc \
src/regexp-macro-assembler.cc \
@@ -61,13 +65,16 @@ V8_LOCAL_SRC_FILES := \
src/register-allocator.cc \
src/rewriter.cc \
src/runtime.cc \
+ src/scanner-base.cc \
src/scanner.cc \
src/scopeinfo.cc \
src/scopes.cc \
src/serialize.cc \
src/snapshot-common.cc \
src/spaces.cc \
+ src/string-search.cc \
src/string-stream.cc \
+ src/strtod.cc \
src/stub-cache.cc \
src/token.cc \
src/top.cc \
@@ -80,16 +87,17 @@ V8_LOCAL_SRC_FILES := \
src/variables.cc \
src/virtual-frame.cc \
src/version.cc \
- src/vm-state.cc \
- src/zone.cc
+ src/zone.cc \
+ src/extensions/gc-extension.cc \
+ src/extensions/externalize-string-extension.cc
ifeq ($(TARGET_ARCH),arm)
V8_LOCAL_SRC_FILES += \
- src/arm/fast-codegen-arm.cc \
src/jump-target-light.cc \
src/virtual-frame-light.cc \
src/arm/assembler-arm.cc \
src/arm/builtins-arm.cc \
+ src/arm/code-stubs-arm.cc \
src/arm/codegen-arm.cc \
src/arm/constants-arm.cc \
src/arm/cpu-arm.cc \
@@ -133,9 +141,6 @@ ifeq ($(DEBUG_V8),true)
src/regexp-macro-assembler-tracer.cc
endif
-V8_LOCAL_SRC_FILES += \
- src/dtoa-config.c
-
V8_LOCAL_JS_LIBRARY_FILES := \
src/runtime.js \
src/v8natives.js \
@@ -1836,6 +1836,9 @@ MaybeObject* CallStubCompiler::CompileMathFloorCall(Object* object,
// -- ...
// -- sp[argc * 4] : receiver
// -----------------------------------
+ // Causes CRASH with Mr. Doob website on our targets!!
+ // Disabling this feature for now.
+ return Heap::undefined_value();
if (!CpuFeatures::IsSupported(VFP3)) return Heap::undefined_value();
CpuFeatures::Scope scope_vfp3(VFP3);
@@ -817,14 +817,14 @@ class Sampler::PlatformData : public Malloced {
signal_handler_installed_(false),
vm_tgid_(getpid()),
// Glibc doesn't provide a wrapper for gettid(2).
- vm_tid_(syscall(SYS_gettid)),
+ vm_tid_(syscall(__NR_gettid)),
signal_sender_launched_(false) {
}
void SignalSender() {
while (sampler_->IsActive()) {
// Glibc doesn't provide a wrapper for tgkill(2).
- syscall(SYS_tgkill, vm_tgid_, vm_tid_, SIGPROF);
+ syscall(__NR_tgkill, vm_tgid_, vm_tid_, SIGPROF);
// Convert ms to us and subtract 100 us to compensate delays
// occuring during signal delivery.
const useconds_t interval = sampler_->interval_ * 1000 - 100;
View
@@ -30,6 +30,7 @@
#include <stdlib.h>
#include <string.h>
+#include <stdarg.h>
#include "globals.h"
#include "checks.h"

0 comments on commit a173972

Please sign in to comment.