On Fri, 08 Aug 2025 19:17:09 +0200
Kirill A. Korinsky <kir...@korins.ky> wrote:

> Sure, attached version includes missed pice for ada as well.
> 
> I had also switched to gcc-15.2.0 which was released today, but it can be,
> easly, reverted if someone doubt.

I built gcc-15.2.0 (and your update to gas-2.45) on powerpc64 after
making some changes.  15/gcc4.port.mk had references to lang/gcc/11;
I changed them to 15.  My other changes are specific to powerpc64.

I had errors like,
/usr/ports/pobj/gcc-15.2.0/gcc-15.2.0/gcc/stor-layout.cc:794:26: error: use of 
undeclared identifier 'rs6000_special_adjust_field_align_p'; did you mean 
'rs6000_special_adjust_field_align'?
  794 |           SET_DECL_ALIGN (decl, ADJUST_FIELD_ALIGN (decl, TREE_TYPE 
(decl),
      |                                 ^

The ADJUST_FIELD_ALIGN macro in rs6000/openbsd64.h looked too old, so
I copied the same macro from linux64.h, and the errors went away.

Later, I needed "make update-plist" to fix 2 missing files.  I moved
the changes from update-plist to PFRAG.powerpc64-main.  I also have
fake-powerpc64/usr/local/info/libquadmath.info but undid update-plist
adding libquadmath.info.  (I don't have the other quadmath files in
fake-powerpc64.)

gfortran can compile my 2-line example, but I don't know whether
larger programs would work.
--gkoehler

diff -ru 15-before/gcc4.port.mk 15/gcc4.port.mk
--- 15-before/gcc4.port.mk      Mon Aug  4 04:15:25 2025
+++ 15/gcc4.port.mk     Mon Aug 11 13:52:58 2025
@@ -24,13 +24,13 @@
 
 _MODGCC4_LINKS =
 MODGCC4STDCPP = estdc++
-MODGCC4_CPPLIBDEP = lang/gcc/11,-libs>=15,<16
-MODGCC4_CPPDEP =    lang/gcc/11,-c++>=15,<16
+MODGCC4_CPPLIBDEP = lang/gcc/15,-libs>=15,<16
+MODGCC4_CPPDEP =    lang/gcc/15,-c++>=15,<16
 MODGCC4_CPPWANTLIB = estdc++>=21 pthread
 MODGCC4_ATOMICWANTLIB = atomic
 
-MODGCC4_FORTRANDEP = lang/gcc/11,-f95>=15,<16
-MODGCC4_FORTRANLIBDEP = lang/gcc/11,-libs>=15,<16
+MODGCC4_FORTRANDEP = lang/gcc/15,-f95>=15,<16
+MODGCC4_FORTRANLIBDEP = lang/gcc/15,-libs>=15,<16
 MODGCC4_FORTRANWANTLIB = gfortran>=10
 # XXX sync with Makefile
 .if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
@@ -40,7 +40,7 @@
 .if ${_MODGCC4_ARCH_USES:L} == "yes"
 
 .  if ${MODGCC4_LANGS:L:Mc}
-BUILD_DEPENDS += lang/gcc/11>=15,<16
+BUILD_DEPENDS += lang/gcc/15>=15,<16
 # XXX ports-clang already defines this
 .    if !${COMPILER_LINKS:Mgcc}
 COMPILER_LINKS += gcc ${LOCALBASE}/bin/egcc cc ${LOCALBASE}/bin/egcc
diff -ru 15-before/patches/patch-gcc_config_rs6000_openbsd64_h 
15/patches/patch-gcc_config_rs6000_openbsd64_h
--- 15-before/patches/patch-gcc_config_rs6000_openbsd64_h       Mon Aug  4 
04:15:25 2025
+++ 15/patches/patch-gcc_config_rs6000_openbsd64_h      Mon Aug 11 19:40:22 2025
@@ -1,7 +1,7 @@
 Index: gcc/config/rs6000/openbsd64.h
 --- gcc/config/rs6000/openbsd64.h.orig
 +++ gcc/config/rs6000/openbsd64.h
-@@ -0,0 +1,413 @@
+@@ -0,0 +1,411 @@
 +/* Definitions for 64-bit PowerPC running OpenBSD using the ELF format
 +   Copyright (C) 2012-2021 Free Software Foundation, Inc.
 +
@@ -352,12 +352,10 @@
 +/* PowerPC64 Linux word-aligns FP doubles when -malign-power is given.  */
 +#undef  ADJUST_FIELD_ALIGN
 +#define ADJUST_FIELD_ALIGN(FIELD, TYPE, COMPUTED) \
-+  (rs6000_special_adjust_field_align_p ((TYPE), (COMPUTED))           \
-+   ? 128                                                                \
-+   : (TARGET_64BIT                                                      \
-+      && TARGET_ALIGN_NATURAL == 0                                      \
-+      && TYPE_MODE (strip_array_types (TYPE)) == DFmode)              \
-+   ? MIN ((COMPUTED), 32)                                               \
++  ((TARGET_64BIT                                                      \
++    && TARGET_ALIGN_NATURAL == 0                                      \
++    && TYPE_MODE (strip_array_types (TYPE)) == DFmode)                        
\
++   ? MIN ((COMPUTED), 32)                                             \
 +   : (COMPUTED))
 +
 +#undef  TOC_SECTION_ASM_OP
diff -ru 15-before/pkg/PFRAG.powerpc64-main 15/pkg/PFRAG.powerpc64-main
--- 15-before/pkg/PFRAG.powerpc64-main  Fri Aug  8 13:03:20 2025
+++ 15/pkg/PFRAG.powerpc64-main Mon Aug 11 17:43:01 2025
@@ -5,11 +5,14 @@
 lib/gcc/${CONFIG}/${V}/include/emmintrin.h
 lib/gcc/${CONFIG}/${V}/include/htmintrin.h
 lib/gcc/${CONFIG}/${V}/include/htmxlintrin.h
+lib/gcc/${CONFIG}/${V}/include/immintrin.h
 lib/gcc/${CONFIG}/${V}/include/mm_malloc.h
 lib/gcc/${CONFIG}/${V}/include/mmintrin.h
+lib/gcc/${CONFIG}/${V}/include/nmmintrin.h
 lib/gcc/${CONFIG}/${V}/include/pmmintrin.h
 lib/gcc/${CONFIG}/${V}/include/ppc-asm.h
 lib/gcc/${CONFIG}/${V}/include/ppu_intrinsics.h
+lib/gcc/${CONFIG}/${V}/include/rs6000-vecdefines.h
 lib/gcc/${CONFIG}/${V}/include/si2vmx.h
 lib/gcc/${CONFIG}/${V}/include/smmintrin.h
 lib/gcc/${CONFIG}/${V}/include/spu2vmx.h
@@ -17,6 +20,7 @@
 lib/gcc/${CONFIG}/${V}/include/tmmintrin.h
 lib/gcc/${CONFIG}/${V}/include/unwind.h
 lib/gcc/${CONFIG}/${V}/include/vec_types.h
+lib/gcc/${CONFIG}/${V}/include/x86gprintrin.h
 lib/gcc/${CONFIG}/${V}/include/x86intrin.h
 lib/gcc/${CONFIG}/${V}/include/xmmintrin.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/elfos.h
@@ -30,9 +34,7 @@
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/default64.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/openbsd64.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/option-defaults.h
-lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-builtin.def
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-cpus.def
-lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-modes.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-opts.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000-protos.h
 lib/gcc/${CONFIG}/${V}/plugin/include/config/rs6000/rs6000.h

Reply via email to