summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Szuba <marecki@gentoo.org>2021-06-24 12:15:17 +0100
committerMarek Szuba <marecki@gentoo.org>2021-06-24 12:15:17 +0100
commit8343d8dbc07ef7749636b6954a0dc6749536e434 (patch)
treebc93dfcb5d1f6bc2b9f45c4594f6899fcbc071b1 /net-libs/nodejs/files
parentsci-libs/opencascade[vtk]: prevent name collision (diff)
downloadgentoo-8343d8dbc07ef7749636b6954a0dc6749536e434.tar.gz
gentoo-8343d8dbc07ef7749636b6954a0dc6749536e434.tar.bz2
gentoo-8343d8dbc07ef7749636b6954a0dc6749536e434.zip
net-libs/nodejs: add 16.4.0, drop 16.3.0
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'net-libs/nodejs/files')
-rw-r--r--net-libs/nodejs/files/nodejs-16.1.0-ppc64-segfault.patch119
1 files changed, 0 insertions, 119 deletions
diff --git a/net-libs/nodejs/files/nodejs-16.1.0-ppc64-segfault.patch b/net-libs/nodejs/files/nodejs-16.1.0-ppc64-segfault.patch
deleted file mode 100644
index 5ddd1fe7d08d..000000000000
--- a/net-libs/nodejs/files/nodejs-16.1.0-ppc64-segfault.patch
+++ /dev/null
@@ -1,119 +0,0 @@
-From ca4bf75504d07db5e1e66ec5c867cd76c90268af Mon Sep 17 00:00:00 2001
-From: Junliang Yan <jyan@ca.ibm.ca>
-Date: Tue, 11 May 2021 08:57:03 -0400
-Subject: [PATCH] ppc: Prevent trampoline emission on deoptimization table generation
-
-The deoptimization table needs to be continuously, so we need to block
-trampoline pool emission during the whole process.
-
-bug: v8:11759
-Change-Id: Ie5e0ffe27dc8e6cdb18985dc2cf26bdadeff318f
-Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2881918
-Commit-Queue: Junliang Yan <junyan@redhat.com>
-Reviewed-by: Jakob Gruber <jgruber@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#74506}
-X-Gentoo-bug: https://bugs.gentoo.org/785751
-Backported by gyakovlev@gentoo.org
----
-
-diff --git a/src/codegen/ppc/assembler-ppc.h b/src/codegen/ppc/assembler-ppc.h
-index 794b917..ae04118 100644
---- a/deps/v8/src/codegen/ppc/assembler-ppc.h
-+++ b/deps/v8/src/codegen/ppc/assembler-ppc.h
-@@ -195,6 +195,12 @@
-
- void MaybeEmitOutOfLineConstantPool() { EmitConstantPool(); }
-
-+ inline void CheckTrampolinePoolQuick(int extra_space = 0) {
-+ if (pc_offset() >= next_trampoline_check_ - extra_space) {
-+ CheckTrampolinePool();
-+ }
-+ }
-+
- // Label operations & relative jumps (PPUM Appendix D)
- //
- // Takes a branch opcode (cc) and a label (L) and generates
-@@ -1334,12 +1340,6 @@
- }
-
- inline void UntrackBranch();
-- void CheckTrampolinePoolQuick() {
-- if (pc_offset() >= next_trampoline_check_) {
-- CheckTrampolinePool();
-- }
-- }
--
- // Instruction generation
- void a_form(Instr instr, DoubleRegister frt, DoubleRegister fra,
- DoubleRegister frb, RCBit r);
-diff --git a/src/compiler/backend/code-generator.cc b/src/compiler/backend/code-generator.cc
-index 023e697..62e57fe 100644
---- a/deps/v8/src/compiler/backend/code-generator.cc
-+++ b/deps/v8/src/compiler/backend/code-generator.cc
-@@ -416,23 +416,29 @@
- std::sort(deoptimization_exits_.begin(), deoptimization_exits_.end(), cmp);
- }
-
-- for (DeoptimizationExit* exit : deoptimization_exits_) {
-- if (exit->emitted()) continue;
-- if (Deoptimizer::kSupportsFixedDeoptExitSizes) {
-- exit->set_deoptimization_id(next_deoptimization_id_++);
-- }
-- result_ = AssembleDeoptimizerCall(exit);
-- if (result_ != kSuccess) return;
-+ {
-+#ifdef V8_TARGET_ARCH_PPC64
-+ v8::internal::Assembler::BlockTrampolinePoolScope block_trampoline_pool(
-+ tasm());
-+#endif
-+ for (DeoptimizationExit* exit : deoptimization_exits_) {
-+ if (exit->emitted()) continue;
-+ if (Deoptimizer::kSupportsFixedDeoptExitSizes) {
-+ exit->set_deoptimization_id(next_deoptimization_id_++);
-+ }
-+ result_ = AssembleDeoptimizerCall(exit);
-+ if (result_ != kSuccess) return;
-
-- // UpdateDeoptimizationInfo expects lazy deopts to be visited in pc_offset
-- // order, which is always the case since they are added to
-- // deoptimization_exits_ in that order, and the optional sort operation
-- // above preserves that order.
-- if (exit->kind() == DeoptimizeKind::kLazy) {
-- int trampoline_pc = exit->label()->pos();
-- last_updated = safepoints()->UpdateDeoptimizationInfo(
-- exit->pc_offset(), trampoline_pc, last_updated,
-- exit->deoptimization_id());
-+ // UpdateDeoptimizationInfo expects lazy deopts to be visited in pc_offset
-+ // order, which is always the case since they are added to
-+ // deoptimization_exits_ in that order, and the optional sort operation
-+ // above preserves that order.
-+ if (exit->kind() == DeoptimizeKind::kLazy) {
-+ int trampoline_pc = exit->label()->pos();
-+ last_updated = safepoints()->UpdateDeoptimizationInfo(
-+ exit->pc_offset(), trampoline_pc, last_updated,
-+ exit->deoptimization_id());
-+ }
- }
- }
-
-diff --git a/src/compiler/backend/ppc/code-generator-ppc.cc b/src/compiler/backend/ppc/code-generator-ppc.cc
-index 3e4e94a..0281376 100644
---- a/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc
-+++ b/deps/v8/src/compiler/backend/ppc/code-generator-ppc.cc
-@@ -4296,7 +4296,15 @@
-
- void CodeGenerator::PrepareForDeoptimizationExits(
- ZoneDeque<DeoptimizationExit*>* exits) {
-- // __ EmitConstantPool();
-+ int total_size = 0;
-+ for (DeoptimizationExit* exit : deoptimization_exits_) {
-+ total_size += (exit->kind() == DeoptimizeKind::kLazy)
-+ ? Deoptimizer::kLazyDeoptExitSize
-+ : Deoptimizer::kNonLazyDeoptExitSize;
-+ }
-+
-+ __ CheckTrampolinePoolQuick(total_size);
-+ DCHECK(Deoptimizer::kSupportsFixedDeoptExitSizes);
- }
-
- void CodeGenerator::AssembleMove(InstructionOperand* source,