pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/cross/ppc-morphos-gcc



Module Name:    pkgsrc
Committed By:   js
Date:           Sat Jul  4 22:44:02 UTC 2026

Modified Files:
        pkgsrc/cross/ppc-morphos-gcc: Makefile
Added Files:
        pkgsrc/cross/ppc-morphos-gcc/files: save-r13-baserel.diff

Log Message:
cross/ppc-morphos-gcc: Save r13 for baserel


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 pkgsrc/cross/ppc-morphos-gcc/Makefile
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/cross/ppc-morphos-gcc/files/save-r13-baserel.diff

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/cross/ppc-morphos-gcc/Makefile
diff -u pkgsrc/cross/ppc-morphos-gcc/Makefile:1.7 pkgsrc/cross/ppc-morphos-gcc/Makefile:1.8
--- pkgsrc/cross/ppc-morphos-gcc/Makefile:1.7   Tue Jun 30 23:30:52 2026
+++ pkgsrc/cross/ppc-morphos-gcc/Makefile       Sat Jul  4 22:44:02 2026
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.7 2026/06/30 23:30:52 js Exp $
+# $NetBSD: Makefile,v 1.8 2026/07/04 22:44:02 js Exp $
 
 DISTNAME=      gcc-15.2.0
-PKGREVISION=   3
+PKGREVISION=   4
 PKGNAME=       ppc-morphos-${DISTNAME}
 CATEGORIES=    cross
 MASTER_SITES=  ${MASTER_SITE_GNU:=gcc/gcc-${PKGVERSION_NOREV}/}
@@ -56,6 +56,7 @@ pre-patch:
        ${RUN} cd ${WRKSRC} && ${PATCH} -p0 <${FILESDIR}/objc-saveds.diff
        ${RUN} cd ${WRKSRC} && ${PATCH} -p1 <${FILESDIR}/libcpp-disable-canonicalize.diff
        ${RUN} cd ${WRKSRC} && ${PATCH} -p0 <${FILESDIR}/const-baserel.diff
+       ${RUN} cd ${WRKSRC} && ${PATCH} -p0 <${FILESDIR}/save-r13-baserel.diff
        ${RUN} find ${WRKSRC} -name configure -print0 | xargs -0 -r perl -i.orig -p -e 
"s|toolexecdir='\\\$$\(libdir\)/gcc/\\\$$\(target_alias\)'|toolexecdir='\\\$$(libdir)/gcc-lib/\\\$$(target_alias)'|g;"
        ${RUN} find ${WRKSRC} -name Makefile.in -print0 | xargs -0 -r perl -i.orig -p -e "s|= \\\$$\(libexecdir\)/gcc/\\\$$\(real_target_noncanonical\)|= 
\\\$$(libexecdir)/gcc-lib/\\\$$(real_target_noncanonical)|g;s|= \\\$$\(libdir\)/gcc/\\\$$\(target_noncanonical\)|= \\\$$(libdir)/gcc-lib/\\\$$(target_noncanonical)|g;"
 

Added files:

Index: pkgsrc/cross/ppc-morphos-gcc/files/save-r13-baserel.diff
diff -u /dev/null pkgsrc/cross/ppc-morphos-gcc/files/save-r13-baserel.diff:1.1
--- /dev/null   Sat Jul  4 22:44:02 2026
+++ pkgsrc/cross/ppc-morphos-gcc/files/save-r13-baserel.diff    Sat Jul  4 22:44:02 2026
@@ -0,0 +1,35 @@
+--- ./gcc/config/rs6000/rs6000.h.orig  2026-07-04 17:55:03.554901293 +0000
++++ ./gcc/config/rs6000/rs6000.h
+@@ -1523,7 +1523,8 @@ typedef struct rs6000_args
+    || (TARGET_ALTIVEC && (REGNO) == VRSAVE_REGNO)             \
+    || (crtl->calls_eh_return                                  \
+        && TARGET_AIX                                          \
+-       && (REGNO) == 2))
++       && (REGNO) == 2)                                         \
++   || (crtl->calls_eh_return && (REGNO) == 13))
+ 
+ 
+ /* Length in units of the trampoline for entering a nested function.  */
+--- ./gcc/config/rs6000/rs6000-logue.cc.orig   2026-07-04 17:56:56.172827431 +0000
++++ ./gcc/config/rs6000/rs6000-logue.cc
+@@ -114,6 +114,11 @@ save_reg_p (int reg)
+       return true;
+     }
+ 
++#ifdef TARGET_BASEREL
++  if (reg == 13 && (crtl->calls_eh_return || crtl->saves_all_registers))
++    return true;
++#endif
++
+   return !call_used_or_fixed_reg_p (reg) && df_regs_ever_live_p (reg);
+ }
+ 
+@@ -2689,6 +2694,8 @@ rs6000_get_separate_components (void)
+       || (flag_pic && DEFAULT_ABI == ABI_DARWIN))
+     bitmap_clear_bit (components, RS6000_PIC_OFFSET_TABLE_REGNUM);
+ 
++  bitmap_clear_bit (components, 13);
++
+   /* The FPRs we need saved to the frame.  */
+   if ((info->savres_strategy & SAVE_INLINE_FPRS)
+       && (info->savres_strategy & REST_INLINE_FPRS))



Home | Main Index | Thread Index | Old Index