From 7af8870af9dc33b0a49124219ef2627504871b12 Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Tue, 14 Oct 2014 22:50:08 +0200 Subject: [PATCH] deps: fix v8 x32 build Fix double definition errors in the libv8_base.a library target by compiling out stub functions when building for x32. This fix is incomplete because, although V8 now builds, it makes a number of bad assumptions about the size of stack slots, see https://code.google.com/p/v8/issues/detail?id=3630. PR-URL: https://github.com/node-forward/node/pull/24 Reviewed-By: Fedor Indutny --- deps/v8/src/compiler/instruction-selector.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/deps/v8/src/compiler/instruction-selector.cc b/deps/v8/src/compiler/instruction-selector.cc index f36b07ea7e..133dd8f9b4 100644 --- a/deps/v8/src/compiler/instruction-selector.cc +++ b/deps/v8/src/compiler/instruction-selector.cc @@ -722,7 +722,7 @@ void InstructionSelector::VisitFloat64LessThanOrEqual(Node* node) { #endif // V8_TURBOFAN_BACKEND // 32 bit targets do not implement the following instructions. -#if V8_TARGET_ARCH_32_BIT && V8_TURBOFAN_BACKEND +#if V8_TARGET_ARCH_32_BIT && !V8_TARGET_ARCH_X64 && V8_TURBOFAN_BACKEND void InstructionSelector::VisitWord64And(Node* node) { UNIMPLEMENTED(); } @@ -785,7 +785,7 @@ void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) { // 32-bit targets and unsupported architectures need dummy implementations of // selected 64-bit ops. -#if V8_TARGET_ARCH_32_BIT || !V8_TURBOFAN_BACKEND +#if V8_TARGET_ARCH_32_BIT && !V8_TARGET_ARCH_X64 || !V8_TURBOFAN_BACKEND void InstructionSelector::VisitWord64Test(Node* node, FlagsContinuation* cont) { UNIMPLEMENTED();