svn commit: r520012 - head/www/node/files
Piotr Kubaj
pkubaj at FreeBSD.org
Fri Dec 13 10:19:06 UTC 2019
Author: pkubaj
Date: Fri Dec 13 10:19:05 2019
New Revision: 520012
URL: https://svnweb.freebsd.org/changeset/ports/520012
Log:
www/node: fix build on powerpc64 elfv1
13.2.0 broke powerpc64 elfv1 (again). The problem are those two commits:
https://github.com/nodejs/node/commit/605cb9f0fcd1d334ec15959bb79ba44b0e9f8186
https://github.com/nodejs/node/commit/fe99841c88fdb87959a14c7bca81e4cd4582eba6
They added ifdefs for _AIX, but the code they guard should run on all ppc64 elfv1 (not only on AIX).
Widen those ifdefs appriopriately so that node builds again.
PR: 242404
Approved by: bhughes (maintainer)
Added:
head/www/node/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc (contents, props changed)
head/www/node/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc (contents, props changed)
Added: head/www/node/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/www/node/files/patch-deps_v8_src_compiler_backend_instruction-selector.cc Fri Dec 13 10:19:05 2019 (r520012)
@@ -0,0 +1,11 @@
+--- deps/v8/src/compiler/backend/instruction-selector.cc.orig 2019-12-03 12:54:01 UTC
++++ deps/v8/src/compiler/backend/instruction-selector.cc
+@@ -2812,7 +2812,7 @@ void InstructionSelector::VisitCall(Node* node, BasicB
+ switch (call_descriptor->kind()) {
+ case CallDescriptor::kCallAddress: {
+ int misc_field = static_cast<int>(call_descriptor->ParameterCount());
+-#if defined(_AIX)
++#if defined(_AIX) || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1))
+ // Highest misc_field bit is used on AIX to indicate if a CFunction call
+ // has function descriptor or not.
+ misc_field |= call_descriptor->HasFunctionDescriptor()
Added: head/www/node/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/www/node/files/patch-deps_v8_src_compiler_backend_ppc_code-generator-ppc.cc Fri Dec 13 10:19:05 2019 (r520012)
@@ -0,0 +1,11 @@
+--- deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc.orig 2019-12-03 11:33:29 UTC
++++ deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc
+@@ -1025,7 +1025,7 @@ CodeGenerator::CodeGenResult CodeGenerator::AssembleAr
+ Label start_call;
+ bool isWasmCapiFunction =
+ linkage()->GetIncomingDescriptor()->IsWasmCapiFunction();
+-#if defined(_AIX)
++#if defined(_AIX) || (V8_TARGET_ARCH_PPC_BE && (!defined(_CALL_ELF) || _CALL_ELF == 1))
+ // AIX/PPC64BE Linux uses a function descriptor
+ int kNumParametersMask = kHasFunctionDescriptorBitMask - 1;
+ num_parameters = kNumParametersMask & misc_field;
More information about the svn-ports-head
mailing list