git: f4a7497b21ee - main - games/punchy: replace 316a89ed4e72 with upstream fix
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 11 Jul 2023 05:04:16 UTC
The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=f4a7497b21ee9bc7c9468ec6632dedcd34875798 commit f4a7497b21ee9bc7c9468ec6632dedcd34875798 Author: Jan Beich <jbeich@FreeBSD.org> AuthorDate: 2023-07-11 03:17:45 +0000 Commit: Jan Beich <jbeich@FreeBSD.org> CommitDate: 2023-07-11 05:03:23 +0000 games/punchy: replace 316a89ed4e72 with upstream fix --- games/punchy/Makefile | 5 +- games/punchy/files/patch-clang16-aarch64 | 104 +++++++++++++++++++++++++++++++ 2 files changed, 106 insertions(+), 3 deletions(-) diff --git a/games/punchy/Makefile b/games/punchy/Makefile index 8e1fe489fc11..ebb10876a190 100644 --- a/games/punchy/Makefile +++ b/games/punchy/Makefile @@ -1,7 +1,7 @@ PORTNAME= punchy DISTVERSIONPREFIX= v DISTVERSION= 0.3.0 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= games wayland MAINTAINER= jbeich@FreeBSD.org @@ -24,11 +24,10 @@ PORTDATA= * # Bundled v8 BUILD_DEPENDS+= gn:devel/gn -USES+= compiler ninja:build python:build +USES+= ninja:build python:build BINARY_ALIAS+= python=${PYTHON_CMD} CARGO_ENV+= V8_FROM_SOURCE=1 CLANG_BASE_PATH="/usr" GN_ARGS='${GN_ARGS}' GN_ARGS+= use_custom_libcxx=false -CXXFLAGS+= ${${ARCH} == aarch64 && ${COMPILER_TYPE} == clang && ${COMPILER_VERSION} >= 160:?-Wno-enum-constexpr-conversion:} post-patch: # Search assets under PREFIX instead of current directory diff --git a/games/punchy/files/patch-clang16-aarch64 b/games/punchy/files/patch-clang16-aarch64 new file mode 100644 index 000000000000..2ee89b0603ee --- /dev/null +++ b/games/punchy/files/patch-clang16-aarch64 @@ -0,0 +1,104 @@ +https://chromium.googlesource.com/v8/v8/+/d15d49b09dc7%5E%21/ + +--- cargo-crates/v8-0.47.1/v8/include/v8-internal.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/include/v8-internal.h +@@ -413,7 +413,7 @@ class Internals { + + static const int kNodeClassIdOffset = 1 * kApiSystemPointerSize; + static const int kNodeFlagsOffset = 1 * kApiSystemPointerSize + 3; +- static const int kNodeStateMask = 0x7; ++ static const int kNodeStateMask = 0x3; + static const int kNodeStateIsWeakValue = 2; + + static const int kFirstNonstringType = 0x80; +--- cargo-crates/v8-0.47.1/v8/src/ast/ast.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/ast/ast.h +@@ -1006,7 +1006,7 @@ class Literal final : public Expression { + friend class AstNodeFactory; + friend Zone; + +- using TypeField = Expression::NextBitField<Type, 4>; ++ using TypeField = Expression::NextBitField<Type, 3>; + + Literal(int smi, int position) : Expression(position, kLiteral), smi_(smi) { + bit_field_ = TypeField::update(bit_field_, kSmi); +--- cargo-crates/v8-0.47.1/v8/src/base/bit-field.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/base/bit-field.h +@@ -40,6 +40,11 @@ class BitField final { + static constexpr U kNumValues = U{1} << kSize; + + // Value for the field with all bits set. ++ // If clang complains ++ // "constexpr variable 'kMax' must be initialized by a constant expression" ++ // on this line, then you're creating a BitField for an enum with more bits ++ // than needed for the enum values. Either reduce the BitField size, ++ // or give the enum an explicit underlying type. + static constexpr T kMax = static_cast<T>(kNumValues - 1); + + template <class T2, int size2> +--- cargo-crates/v8-0.47.1/v8/src/compiler/backend/instruction-codes.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/compiler/backend/instruction-codes.h +@@ -195,7 +195,7 @@ V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostrea + V(None) \ + TARGET_ADDRESSING_MODE_LIST(V) + +-enum AddressingMode { ++enum AddressingMode : uint8_t { + #define DECLARE_ADDRESSING_MODE(Name) kMode_##Name, + ADDRESSING_MODE_LIST(DECLARE_ADDRESSING_MODE) + #undef DECLARE_ADDRESSING_MODE +@@ -306,7 +306,7 @@ using LaneSizeField = base::BitField<int, 22, 8>; + // LaneSizeField and AccessModeField are helper types to encode/decode a lane + // size, an access mode, or both inside the overlapping MiscField. + using LaneSizeField = base::BitField<int, 22, 8>; +-using AccessModeField = base::BitField<MemoryAccessMode, 30, 2>; ++using AccessModeField = base::BitField<MemoryAccessMode, 30, 1>; + // TODO(turbofan): {HasMemoryAccessMode} is currently only used to guard + // decoding (in CodeGenerator and InstructionScheduler). Encoding (in + // InstructionSelector) is not yet guarded. There are in fact instructions for +--- cargo-crates/v8-0.47.1/v8/src/compiler/backend/instruction.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/compiler/backend/instruction.h +@@ -591,8 +591,8 @@ class LocationOperand : public InstructionOperand { + } + + static_assert(KindField::kSize == 3); +- using LocationKindField = base::BitField64<LocationKind, 3, 2>; +- using RepresentationField = base::BitField64<MachineRepresentation, 5, 8>; ++ using LocationKindField = base::BitField64<LocationKind, 3, 1>; ++ using RepresentationField = LocationKindField::Next<MachineRepresentation, 8>; + using IndexField = base::BitField64<int32_t, 35, 29>; + }; + +--- cargo-crates/v8-0.47.1/v8/src/handles/global-handles.cc.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/handles/global-handles.cc +@@ -573,7 +573,7 @@ class GlobalHandles::Node final : public NodeBase<Glob + + // This stores three flags (independent, partially_dependent and + // in_young_list) and a State. +- using NodeState = base::BitField8<State, 0, 3>; ++ using NodeState = base::BitField8<State, 0, 2>; + // Tracks whether the node is contained in the set of young nodes. This bit + // persists across allocating and freeing a node as it's only cleaned up + // when young nodes are proccessed. +--- cargo-crates/v8-0.47.1/v8/src/maglev/maglev-ir.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/maglev/maglev-ir.h +@@ -271,7 +271,7 @@ class OpProperties { + return kValueRepresentationBits::decode(bitfield_); + } + constexpr bool is_pure() const { +- return (bitfield_ | kPureMask) == kPureValue; ++ return (bitfield_ & kPureMask) == kPureValue; + } + constexpr bool is_required_when_unused() const { + return can_write() || non_memory_side_effects(); +--- cargo-crates/v8-0.47.1/v8/src/wasm/wasm-code-manager.h.orig 1973-11-29 21:33:09 UTC ++++ cargo-crates/v8-0.47.1/v8/src/wasm/wasm-code-manager.h +@@ -463,7 +463,7 @@ class V8_EXPORT_PRIVATE WasmCode final { + int trap_handler_index_ = -1; + + // Bits encoded in {flags_}: +- using KindField = base::BitField8<Kind, 0, 3>; ++ using KindField = base::BitField8<Kind, 0, 2>; + using ExecutionTierField = KindField::Next<ExecutionTier, 2>; + using ForDebuggingField = ExecutionTierField::Next<ForDebugging, 2>; +