pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/lang/gcc14
Module Name: pkgsrc
Committed By: mrg
Date: Sun Oct 12 21:44:57 UTC 2025
Modified Files:
pkgsrc/lang/gcc14: distinfo
pkgsrc/lang/gcc14/patches: patch-gcc_config.gcc
patch-gcc_config_aarch64_aarch64.cc
Log Message:
add arm64eb support: a config snippet, and a gcc14 specific fix.
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.11 pkgsrc/lang/gcc14/distinfo
cvs rdiff -u -r1.2 -r1.3 pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc \
pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/lang/gcc14/distinfo
diff -u pkgsrc/lang/gcc14/distinfo:1.10 pkgsrc/lang/gcc14/distinfo:1.11
--- pkgsrc/lang/gcc14/distinfo:1.10 Mon Jul 14 11:16:56 2025
+++ pkgsrc/lang/gcc14/distinfo Sun Oct 12 21:44:57 2025
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.10 2025/07/14 11:16:56 ryoon Exp $
+$NetBSD: distinfo,v 1.11 2025/10/12 21:44:57 mrg Exp $
BLAKE2s (gcc-14.3.0.tar.xz) = 70036c7d07767bba3476d19a6fd52f0b09dc05651c6cf5d136afe18ffa3b63a9
SHA512 (gcc-14.3.0.tar.xz) = cb4e3259640721bbd275c723fe4df53d12f9b1673afb3db274c22c6aa457865dccf2d6ea20b4fd4c591f6152e6d4b87516c402015900f06ce9d43af66d3b7a93
@@ -26,7 +26,7 @@ SHA1 (patch-gcc_calls.h) = 89b4b16d1c6d0
SHA1 (patch-gcc_collect2.cc) = 0afb813670c91221416a69a84295efe122a3b258
SHA1 (patch-gcc_common.opt) = 1aa40a7919fc55f085316ebda18f0e8f4e724da8
SHA1 (patch-gcc_common_config_aarch64_aarch64-common.cc) = e37205308e70a45bda90244c733e30adaef787d5
-SHA1 (patch-gcc_config.gcc) = 6799bb4f583fca42ca68fd7f9f01fecd9b867155
+SHA1 (patch-gcc_config.gcc) = 9b09ccade2a617943d7c84e8385fb4f840bf160a
SHA1 (patch-gcc_config.host) = bf95dd21bfdf79d173e745fbd35c9bb99fdf4087
SHA1 (patch-gcc_config_aarch64_aarch64-builtins.cc) = 6a1d686275eec3598ffefb14973bf768846ab4a1
SHA1 (patch-gcc_config_aarch64_aarch64-c.cc) = 32c31e906263e7790112140a528e1ca0337e43ff
@@ -34,7 +34,7 @@ SHA1 (patch-gcc_config_aarch64_aarch64-c
SHA1 (patch-gcc_config_aarch64_aarch64-netbsd.h) = abf19e2445bce1773162bddef16cd7f41eb36827
SHA1 (patch-gcc_config_aarch64_aarch64-protos.h) = d9b90df2600b7d92bca098d9dc4ac965fe94983c
SHA1 (patch-gcc_config_aarch64_aarch64-tune.md) = 4c3d2f4d757e75e6f154936ae6cb0b409aabd8f2
-SHA1 (patch-gcc_config_aarch64_aarch64.cc) = 3de2cc5fe4f4da6ca25b8f7ef0ef659d7bec51f8
+SHA1 (patch-gcc_config_aarch64_aarch64.cc) = 90cc5b659959c73ef29616cd642924cbdaf674be
SHA1 (patch-gcc_config_aarch64_aarch64.h) = b2e297c5a37d07b5d360566d111ce7b5c561209d
SHA1 (patch-gcc_config_aarch64_aarch64.md) = 547637f1096d544897ee906c67f7d18b070ab4cc
SHA1 (patch-gcc_config_aarch64_aarch64.opt) = 179acff4f1f9f462810a834f71908e94b341b8a3
Index: pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc
diff -u pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc:1.2 pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc:1.3
--- pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc:1.2 Sun Jun 8 07:37:45 2025
+++ pkgsrc/lang/gcc14/patches/patch-gcc_config.gcc Sun Oct 12 21:44:57 2025
@@ -1,9 +1,10 @@
-$NetBSD: patch-gcc_config.gcc,v 1.2 2025/06/08 07:37:45 wiz Exp $
+$NetBSD: patch-gcc_config.gcc,v 1.3 2025/10/12 21:44:57 mrg Exp $
Support Darwin/aarch64, from https://github.com/Homebrew/formula-patches.
+Support NetBSD/aarch64eb.
---- gcc/config.gcc.orig 2025-05-23 11:02:04.272197204 +0000
-+++ gcc/config.gcc
+--- gcc/config.gcc.orig 2025-05-23 04:02:04.272197204 -0700
++++ gcc/config.gcc 2025-10-12 14:28:13.767650187 -0700
@@ -1177,13 +1177,22 @@ case ${target} in
;;
esac
@@ -43,3 +44,15 @@ Support Darwin/aarch64, from https://git
aarch64*-*-freebsd*)
tm_file="${tm_file} elfos.h ${fbsd_tm_file}"
tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-errata.h aarch64/aarch64-freebsd.h"
+@@ -1238,6 +1255,11 @@ aarch64*-*-netbsd*)
+ tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-errata.h aarch64/aarch64-netbsd.h"
+ tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-netbsd"
+ extra_options="${extra_options} netbsd.opt netbsd-elf.opt"
++ case $target in
++ aarch64_be-*)
++ tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1"
++ ;;
++ esac
+ ;;
+ aarch64*-*-linux*)
+ tm_file="${tm_file} elfos.h gnu-user.h linux.h glibc-stdint.h"
Index: pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc
diff -u pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc:1.2 pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc:1.3
--- pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc:1.2 Sun Jun 8 07:37:45 2025
+++ pkgsrc/lang/gcc14/patches/patch-gcc_config_aarch64_aarch64.cc Sun Oct 12 21:44:57 2025
@@ -1,9 +1,11 @@
-$NetBSD: patch-gcc_config_aarch64_aarch64.cc,v 1.2 2025/06/08 07:37:45 wiz Exp $
+$NetBSD: patch-gcc_config_aarch64_aarch64.cc,v 1.3 2025/10/12 21:44:57 mrg Exp $
Support Darwin/aarch64, from https://github.com/Homebrew/formula-patches.
+Apply fixes from GCC PR PR118891: Fix ZIP1 order in aarch64_expand_vector_init
---- gcc/config/aarch64/aarch64.cc.orig 2025-05-23 11:02:04.284197394 +0000
-+++ gcc/config/aarch64/aarch64.cc
+
+--- gcc/config/aarch64/aarch64.cc.orig 2025-05-23 04:02:04.284197394 -0700
++++ gcc/config/aarch64/aarch64.cc 2025-10-12 14:39:18.549565530 -0700
@@ -329,8 +329,10 @@ static bool aarch64_vfp_is_call_or_retur
const_tree,
machine_mode *, int *,
@@ -1084,7 +1086,21 @@ Support Darwin/aarch64, from https://git
return true;
if (SYMBOL_REF_P (x) && mode == DImode && CONSTANT_ADDRESS_P (x))
-@@ -24453,12 +25043,8 @@ aarch64_asm_output_variant_pcs (FILE *st
+@@ -24019,6 +24609,13 @@ aarch64_expand_vector_init (rtx target,
+ emit_insn (rec_seq);
+ }
+
++ /* The two halves should (by induction) be individually endian-correct.
++ However, in the memory layout provided by VALS, the nth element of
++ HALVES[0] comes immediately before the nth element HALVES[1].
++ This means that, on big-endian targets, the nth element of HALVES[0]
++ is more significant than the nth element HALVES[1]. */
++ if (BYTES_BIG_ENDIAN)
++ std::swap (halves[0], halves[1]);
+ rtvec v = gen_rtvec (2, halves[0], halves[1]);
+ rtx_insn *zip1_insn
+ = emit_set_insn (target, gen_rtx_UNSPEC (mode, v, UNSPEC_ZIP1));
+@@ -24453,12 +25050,8 @@ aarch64_asm_output_variant_pcs (FILE *st
static std::string aarch64_last_printed_arch_string;
static std::string aarch64_last_printed_tune_string;
@@ -1099,7 +1115,7 @@ Support Darwin/aarch64, from https://git
{
tree target_parts = DECL_FUNCTION_SPECIFIC_TARGET (fndecl);
-@@ -24497,15 +25083,60 @@ aarch64_declare_function_name (FILE *str
+@@ -24497,15 +25090,60 @@ aarch64_declare_function_name (FILE *str
this_tune->name);
aarch64_last_printed_tune_string = this_tune->name;
}
@@ -1160,7 +1176,7 @@ Support Darwin/aarch64, from https://git
/* Implement PRINT_PATCHABLE_FUNCTION_ENTRY. */
-@@ -24562,12 +25193,17 @@ aarch64_output_patchable_area (unsigned
+@@ -24562,12 +25200,17 @@ aarch64_output_patchable_area (unsigned
/* Implement ASM_OUTPUT_DEF_FROM_DECLS. Output .variant_pcs for aliases. */
void
@@ -1179,7 +1195,7 @@ Support Darwin/aarch64, from https://git
}
/* Implement ASM_OUTPUT_EXTERNAL. Output .variant_pcs for undefined
-@@ -24613,6 +25249,9 @@ aarch64_start_file (void)
+@@ -24613,6 +25256,9 @@ aarch64_start_file (void)
aarch64_last_printed_arch_string.c_str ());
default_file_start ();
@@ -1189,7 +1205,7 @@ Support Darwin/aarch64, from https://git
}
/* Emit load exclusive. */
-@@ -25192,6 +25831,16 @@ aarch64_output_simd_mov_immediate (rtx c
+@@ -25192,6 +25838,16 @@ aarch64_output_simd_mov_immediate (rtx c
}
gcc_assert (CONST_INT_P (info.u.mov.value));
@@ -1206,7 +1222,7 @@ Support Darwin/aarch64, from https://git
if (which == AARCH64_CHECK_MOV)
{
-@@ -25200,16 +25849,16 @@ aarch64_output_simd_mov_immediate (rtx c
+@@ -25200,16 +25856,16 @@ aarch64_output_simd_mov_immediate (rtx c
? "msl" : "lsl");
if (lane_count == 1)
snprintf (templ, sizeof (templ), "%s\t%%d0, " HOST_WIDE_INT_PRINT_HEX,
@@ -1226,7 +1242,7 @@ Support Darwin/aarch64, from https://git
}
else
{
-@@ -25218,12 +25867,12 @@ aarch64_output_simd_mov_immediate (rtx c
+@@ -25218,12 +25874,12 @@ aarch64_output_simd_mov_immediate (rtx c
if (info.u.mov.shift)
snprintf (templ, sizeof (templ), "%s\t%%0.%d%c, #"
HOST_WIDE_INT_PRINT_DEC ", %s #%d", mnemonic, lane_count,
@@ -1241,7 +1257,7 @@ Support Darwin/aarch64, from https://git
}
return templ;
}
-@@ -28459,7 +29108,8 @@ aarch64_libgcc_floating_mode_supported_p
+@@ -28459,7 +29115,8 @@ aarch64_libgcc_floating_mode_supported_p
}
/* Implement TARGET_SCALAR_MODE_SUPPORTED_P - return TRUE
@@ -1251,7 +1267,7 @@ Support Darwin/aarch64, from https://git
static bool
aarch64_scalar_mode_supported_p (scalar_mode mode)
-@@ -28467,7 +29117,7 @@ aarch64_scalar_mode_supported_p (scalar_
+@@ -28467,7 +29124,7 @@ aarch64_scalar_mode_supported_p (scalar_
if (DECIMAL_FLOAT_MODE_P (mode))
return default_decimal_float_supported_p ();
@@ -1260,7 +1276,7 @@ Support Darwin/aarch64, from https://git
? true
: default_scalar_mode_supported_p (mode));
}
-@@ -29284,19 +29934,37 @@ aarch64_sls_emit_shared_blr_thunks (FILE
+@@ -29284,19 +29941,37 @@ aarch64_sls_emit_shared_blr_thunks (FILE
continue;
const char *name = indirect_symbol_names[regnum];
@@ -1301,7 +1317,7 @@ Support Darwin/aarch64, from https://git
}
}
-@@ -30384,6 +31052,60 @@ aarch64_retrieve_sysreg (const char *reg
+@@ -30384,6 +31059,60 @@ aarch64_retrieve_sysreg (const char *reg
return sysreg->encoding;
}
@@ -1362,7 +1378,7 @@ Support Darwin/aarch64, from https://git
/* Target-specific selftests. */
#if CHECKING_P
-@@ -30600,6 +31322,15 @@ aarch64_run_selftests (void)
+@@ -30600,6 +31329,15 @@ aarch64_run_selftests (void)
#undef TARGET_ASM_ALIGNED_SI_OP
#define TARGET_ASM_ALIGNED_SI_OP "\t.word\t"
@@ -1378,7 +1394,7 @@ Support Darwin/aarch64, from https://git
#undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
#define TARGET_ASM_CAN_OUTPUT_MI_THUNK \
hook_bool_const_tree_hwi_hwi_const_tree_true
-@@ -30702,6 +31433,12 @@ aarch64_run_selftests (void)
+@@ -30702,6 +31440,12 @@ aarch64_run_selftests (void)
#undef TARGET_FUNCTION_ARG_BOUNDARY
#define TARGET_FUNCTION_ARG_BOUNDARY aarch64_function_arg_boundary
@@ -1391,7 +1407,7 @@ Support Darwin/aarch64, from https://git
#undef TARGET_FUNCTION_ARG_PADDING
#define TARGET_FUNCTION_ARG_PADDING aarch64_function_arg_padding
-@@ -31042,7 +31779,7 @@ aarch64_libgcc_floating_mode_supported_p
+@@ -31042,7 +31786,7 @@ aarch64_libgcc_floating_mode_supported_p
/* The architecture reserves bits 0 and 1 so use bit 2 for descriptors. */
#undef TARGET_CUSTOM_FUNCTION_DESCRIPTORS
Home |
Main Index |
Thread Index |
Old Index