<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/be8e1bff4dff83ff0afa45e78fd946880e50a406">https://github.com/macports/macports-ports/commit/be8e1bff4dff83ff0afa45e78fd946880e50a406</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new be8e1bff4df sbcl: update to 2.3.6
</span>be8e1bff4df is described below
<span style='display:block; white-space:pre;color:#808000;'>commit be8e1bff4dff83ff0afa45e78fd946880e50a406
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Wed Jul 5 17:33:54 2023 +0200
<span style='display:block; white-space:pre;color:#404040;'> sbcl: update to 2.3.6
</span>---
lang/sbcl/Portfile | 23 +++---
.../1001-x86-Darwin-Revert-x86-darwin-files.patch | 2 +-
...Revert-Perform-darwin-related-housekeepin.patch | 20 ++---
...-x86-Darwin-Remove-mach-exception-handler.patch | 2 +-
...use-libc-nanosleep-before-10.6-and-on-PPC.patch | 20 ++++-
...-recovery-support-non-dispatch-semaphores.patch | 20 ++++-
...rwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch | 2 +-
.../1007-x86-Darwin-revert-OS_THREAD_STACK.patch | 6 +-
...-x86-Darwin-fix-build-by-old-preprocessor.patch | 2 +-
...86-Darwin-disable-failing-stat-mode-tests.patch | 2 +-
.../1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch | 2 +-
.../files/1011-x86-Darwin-fix-syntax-typos.patch | 2 +-
...-Revert-Delete-support-for-and-darwin-ppc.patch | 17 ++---
...3-ppc-Darwin-Config.ppc-follow-up-changes.patch | 2 +-
...ppc-assem.S-fix-wrong-assembler-code-chun.patch | 2 +-
.../files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch | 2 +-
...ppc-assem-a-minor-fix-to-assembler-syntax.patch | 2 +-
...-building-by-lisp-without-endian-features.patch | 2 +-
...ement-os_tsd_get_direct-for-macOS-before-.patch | 85 ----------------------
...h => 1018-ppc-Darwin-fix-threads-support.patch} | 8 +-
20 files changed, 82 insertions(+), 141 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/Portfile b/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 2a6e4da4acb..b6bf64d89c9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,8 +11,8 @@ name sbcl
</span> #
# Please bump the revision of math/maxima (and when it exists
# math/maxima-devel) and fricas when this port changes.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version 2.3.5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 2.3.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span>
categories lang
license BSD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -38,9 +38,9 @@ use_bzip2 yes
</span> patchfiles 0001-fix-building-when-root-directory-contain-non-ASCII-c.patch \
0002-add-MacPorts-XDG_DATA_DIRS.patch
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 95a02d7a489137602ebba333b83bfc1d9eb794be \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 89c90720cf9d05dbcd90d690e381a2514c0f1807159e0d7222220c5a8c2d5186 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 7474392
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 b816fbf6e6557d7d347fe2334125b2f4c92fa0db \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 b4414ca4d9a7474e8d884d7d63237e2f29ef459dfd5a848424a9c3fa551d19b9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 7483612
</span>
# NOTE: Historically, the last version to support x86/Darwin and ppc/Darwin was
# 2.2.5 and 2.2.2. Here, we have backported it to nearly the latest version. On
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,13 +48,13 @@ checksums rmd160 95a02d7a489137602ebba333b83bfc1d9eb794be \
</span> #
# Please do not update it without testing.
if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- version 2.3.5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- revision 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version 2.3.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ revision 0
</span> epoch [ expr ${epoch} + 1 ]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 95a02d7a489137602ebba333b83bfc1d9eb794be \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 89c90720cf9d05dbcd90d690e381a2514c0f1807159e0d7222220c5a8c2d5186 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- size 7474392
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ checksums rmd160 b816fbf6e6557d7d347fe2334125b2f4c92fa0db \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 b4414ca4d9a7474e8d884d7d63237e2f29ef459dfd5a848424a9c3fa551d19b9 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 7483612
</span>
# See: https://github.com/catap/sbcl/tree/macports-legacy
patchfiles-append \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,8 +75,7 @@ if {${os.platform} eq "darwin" && ${configure.build_arch} in [list ppc i386]} {
</span> 1015-ppc-Darwin-Misc-fixes-for-PPC.patch \
1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch \
1017-Fix-building-by-lisp-without-endian-features.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1019-ppc-Darwin-fix-threads-support.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1018-ppc-Darwin-fix-threads-support.patch
</span> }
distfiles ${name}-${version}-source${extract.suffix}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1001-x86-Darwin-Revert-x86-darwin-files.patch b/lang/sbcl/files/1001-x86-Darwin-Revert-x86-darwin-files.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 46f4118c547..f3f9702ea85 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1001-x86-Darwin-Revert-x86-darwin-files.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1001-x86-Darwin-Revert-x86-darwin-files.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 1525b671d31cf0cda2a52959487dc2b37e17f271 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2884cc7821f9d2f869f475a0679c35723e8260da Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 23:04:18 +0200
Subject: [PATCH] x86/Darwin: Revert x86-darwin files
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1002-x86-Darwin-Revert-Perform-darwin-related-housekeepin.patch b/lang/sbcl/files/1002-x86-Darwin-Revert-Perform-darwin-related-housekeepin.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 50334e7ba7a..b8fb5ce59dc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1002-x86-Darwin-Revert-Perform-darwin-related-housekeepin.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1002-x86-Darwin-Revert-Perform-darwin-related-housekeepin.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 6928d6cf896af97596228e3bd1e30437c0b159a0 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From d945a4daf584cb65ef0c460eb4e7d589e9c1a330 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 23:40:14 +0200
Subject: [PATCH] x86/Darwin: Revert "Perform darwin-related housekeeping"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -12,7 +12,7 @@ This reverts commit f5386462b3ad5548763bc7de21d71cb723352af7.
</span> 4 files changed, 85 insertions(+), 3 deletions(-)
diff --git src/runtime/interrupt.c src/runtime/interrupt.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index af66f5839..477af6171 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d4b21f8af..5eb492302 100644
</span> --- src/runtime/interrupt.c
+++ src/runtime/interrupt.c
@@ -1571,6 +1571,7 @@ extern int *os_context_flags_addr(os_context_t *context);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -38,7 +38,7 @@ index af66f5839..477af6171 100644
</span>
// These have undefined_alien_function tramp in x-assem.S
diff --git src/runtime/x86-arch.c src/runtime/x86-arch.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 8969326d4..a662d758e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c6dfcc33d..3b7bcd015 100644
</span> --- src/runtime/x86-arch.c
+++ src/runtime/x86-arch.c
@@ -80,6 +80,8 @@ os_context_flags_addr(os_context_t *context)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -132,10 +132,10 @@ index 974c1b10a..f92bde899 100644
</span> ret
SIZE(GNAME(post_signal_tramp))
diff --git src/runtime/x86-bsd-os.c src/runtime/x86-bsd-os.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index d6ffafd9b..a1cd0b33d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a41ded7b5..aa51fd0ba 100644
</span> --- src/runtime/x86-bsd-os.c
+++ src/runtime/x86-bsd-os.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -6,8 +6,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8,8 +8,14 @@
</span>
#ifdef LISP_FEATURE_SB_THREAD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -150,7 +150,7 @@ index d6ffafd9b..a1cd0b33d 100644
</span> #endif
#if defined(LISP_FEATURE_FREEBSD) || defined(LISP_FEATURE_DRAGONFLY)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -28,7 +34,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -30,7 +36,11 @@
</span> * almost every line of code. It would be nice to find some way to
* factor out the commonality better; failing that, it might be best
* just to split this generic-BSD code into one variant for each BSD.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -163,7 +163,7 @@ index d6ffafd9b..a1cd0b33d 100644
</span>
#ifdef LISP_FEATURE_NETBSD
#define _REG_eax _REG_EAX
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -80,7 +90,7 @@ os_context_fp_addr(os_context_t *context)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -82,7 +92,7 @@ os_context_fp_addr(os_context_t *context)
</span> return (int *)CONTEXT_ADDR_FROM_STEM(ebp);
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -172,7 +172,7 @@ index d6ffafd9b..a1cd0b33d 100644
</span> int *
os_context_sp_addr(os_context_t *context)
{
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -107,6 +117,11 @@ os_flush_icache(os_vm_address_t address, os_vm_size_t length)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -109,6 +119,11 @@ os_flush_icache(os_vm_address_t address, os_vm_size_t length)
</span> {
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -184,7 +184,7 @@ index d6ffafd9b..a1cd0b33d 100644
</span> #ifdef LISP_FEATURE_SB_THREAD
void set_data_desc_size(struct segment_descriptor* desc, unsigned long size)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -121,6 +136,9 @@ void set_data_desc_addr(struct segment_descriptor* desc, void* addr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -123,6 +138,9 @@ void set_data_desc_addr(struct segment_descriptor* desc, void* addr)
</span> desc->sd_hibase = ((unsigned int)addr & 0xff000000) >> 24;
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -194,7 +194,7 @@ index d6ffafd9b..a1cd0b33d 100644
</span> void
arch_os_load_ldt(struct thread *thread)
{
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -184,6 +202,7 @@ int arch_os_thread_cleanup(struct thread *thread) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -187,6 +205,7 @@ int arch_os_thread_cleanup(struct thread *thread) {
</span> return 1; /* success */
}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1003-x86-Darwin-Remove-mach-exception-handler.patch b/lang/sbcl/files/1003-x86-Darwin-Remove-mach-exception-handler.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index b3c09839c18..224def218d3 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1003-x86-Darwin-Remove-mach-exception-handler.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1003-x86-Darwin-Remove-mach-exception-handler.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 7a1036b614df5e896caa41d105c52b3e37623554 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 9689b5101a687c1f624adcb2fc57c86aaba09854 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 23:32:13 +0200
Subject: [PATCH] x86/Darwin: Remove mach-exception-handler
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch b/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index b116046f94e..75b8727bb6f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1004-Darwin-use-libc-nanosleep-before-10.6-and-on-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,14 +1,15 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From b5069d3f04ddf8e04af502cb50a12be85c8df50b Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From ccdf10be2c4f3b64b56b1e7cd3013e901c994a8f Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sun, 11 Jun 2023 17:38:19 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 13 Jun 2023 23:04:30 +0200
</span> Subject: [PATCH] Darwin: use libc nanosleep before 10.6 and on PPC
See: https://github.com/sbcl/sbcl/commit/6d28b641b659b2be6ad7b329ae09cb592c1162a1
---
make-config.sh | 8 +++++---
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ make-target-2-load.lisp | 2 ++
</span> src/runtime/darwin-os.c | 4 ++++
src/runtime/wrap.c | 2 +-
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 3 files changed, 10 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 4 files changed, 12 insertions(+), 4 deletions(-)
</span>
diff --git make-config.sh make-config.sh
index fde800457..eb673a302 100755
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -30,6 +31,19 @@ index fde800457..eb673a302 100755
</span> if (( 8 < $darwin_version_major )); then
printf ' :inode64' >> $ltf
fi
<span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git make-target-2-load.lisp make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0a10c6f67..c3a71bfed 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -55,6 +55,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; The final batch of symbols is strictly for C. The LISP_FEATURE_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; prefix on the corresponding #define is unfortunate.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ :GCC-TLS :USE-SYS-MMAP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ;;; Enforce using of libc nanosleep on Darwin.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ :USE-DARWIN-NANOSLEEP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; only for 'src/runtime/wrap.h'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ :OS-PROVIDES-BLKSIZE-T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; only for src/runtime/run-program.c
</span> diff --git src/runtime/darwin-os.c src/runtime/darwin-os.c
index 6a1b29247..22acca519 100644
--- src/runtime/darwin-os.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch b/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 7e26a77ecaa..9fe6be0d845 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1005-Darwin-recovery-support-non-dispatch-semaphores.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,16 +1,17 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 705e06b5ce9ac5cc76e2ef95afc5fd4366796dbd Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 08f927b1e63e0cb672ed49508059a3cb08774db5 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sun, 11 Jun 2023 17:46:04 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 13 Jun 2023 23:05:33 +0200
</span> Subject: [PATCH] Darwin: recovery support non dispatch semaphores
See: https://github.com/sbcl/sbcl/commit/160448fd0485daf69e81f9fe9eeb8515ed01db49
---
make-config.sh | 2 +-
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ make-target-2-load.lisp | 2 ++
</span> src/runtime/darwin-os.c | 56 ++++++++++++++++++++++++++++++++++++++++-
src/runtime/darwin-os.h | 6 ++++-
src/runtime/os-common.c | 2 +-
src/runtime/os.h | 2 +-
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 5 files changed, 63 insertions(+), 5 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 6 files changed, 65 insertions(+), 5 deletions(-)
</span>
diff --git make-config.sh make-config.sh
index eb673a302..58b1fc759 100755
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,6 +26,19 @@ index eb673a302..58b1fc759 100755
</span> fi
if [ $sbcl_arch = "x86-64" ]; then
if (( 8 < $darwin_version_major )); then
<span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git make-target-2-load.lisp make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c3a71bfed..629c701b6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ make-target-2-load.lisp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,6 +57,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ :GCC-TLS :USE-SYS-MMAP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;;; Enforce using of libc nanosleep on Darwin.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ :USE-DARWIN-NANOSLEEP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ ;;; Enforce using of posix semaphores on Darwin instead of dispatch.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ :USE-DARWIN-POSIX-SEMAPHORES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; only for 'src/runtime/wrap.h'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ :OS-PROVIDES-BLKSIZE-T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;; only for src/runtime/run-program.c
</span> diff --git src/runtime/darwin-os.c src/runtime/darwin-os.c
index 22acca519..182f01807 100644
--- src/runtime/darwin-os.c
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch b/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index f679ededba5..fabfe0c450e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1006-x86-Darwin-mask-out-O_LARGEFILE-in-fcntl.1-test.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 375c2b521dc522974d8262e771054b9c97f97144 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From b10732cf23a0616157f5b61961ceb3623552a06e Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:27:10 +0200
Subject: [PATCH] x86/Darwin: mask out O_LARGEFILE in fcntl.1 test
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch b/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index ec1e6dc24c0..da4c2a647ee 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1007-x86-Darwin-revert-OS_THREAD_STACK.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 1388f06cfd0711973a4b25ecc7611626cb34091e Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 8a6e0cedc0eb0a731de0e2ef453b2222610d1d66 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:29:33 +0200
Subject: [PATCH] x86/Darwin: revert OS_THREAD_STACK
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,10 +11,10 @@ See:
</span> 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git src/cold/shared.lisp src/cold/shared.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 695c168d6..ae707807e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4f62c6b93..683a93bb3 100644
</span> --- src/cold/shared.lisp
+++ src/cold/shared.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -308,7 +308,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -302,7 +302,7 @@
</span> (pushnew :immobile-code sb-xc:*features*))
(when (target-featurep :64-bit)
(push :compact-symbol sb-xc:*features*))
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch b/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 8fb8abc9a65..c7270ccb24b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1008-x86-Darwin-fix-build-by-old-preprocessor.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 038d3cf36b5cd2802c7129fc8308e2a384335186 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 64b9150c380a7bea5b335c726cf04fd938e2e3ac Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:30:39 +0200
Subject: [PATCH] x86/Darwin: fix build by old preprocessor
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch b/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 1bc43bb3c35..8bdb036a923 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1009-x86-Darwin-disable-failing-stat-mode-tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 61e2f494d6ab1c4b761f190d4ad727342be6ff0b Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 0ed40de50d2bbd0616fac2783d291ebae1d9ea67 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:31:20 +0200
Subject: [PATCH] x86/Darwin: disable failing stat-mode tests
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch b/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 095c6306772..d414b554d58 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1010-x86-Darwin-add-missed-OS_CONTEXT_PC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 2e27e5ce3b0db331cd22435b82e1b8e20d5b6ede Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 696a80bc5cb0dee30009cd8d7ee328200eca82b0 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:31:51 +0200
Subject: [PATCH] x86/Darwin: add missed OS_CONTEXT_PC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch b/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index da1c8ee16a9..5d1d9643735 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1011-x86-Darwin-fix-syntax-typos.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 1ec5a4469973fe59cbcb0f663616f4f189322533 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 004820f9723bbbd9837a799229275f9440b70677 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Tue, 6 Jun 2023 10:32:35 +0200
Subject: [PATCH] x86/Darwin: fix syntax typos
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch b/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index b975c3d70d3..eeb9a677e07 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1012-ppc-Darwin-Revert-Delete-support-for-and-darwin-ppc.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 320bbe69f03ef2765d7368c3c48655c12ea40eaa Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 60e00e7f1829411311e896706997bb912501975e Mon Sep 17 00:00:00 2001
</span> From: Sergey Fedorov <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:03:43 +0800
Subject: [PATCH] ppc/Darwin: Revert "Delete support for #+(and darwin ppc)"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,7 +7,7 @@ This reverts commit 217791a738a5960092e38106e9931c424cd4ee98.
</span> ---
src/code/alieneval.lisp | 2 +-
src/code/float-trap.lisp | 2 +
<span style='display:block; white-space:pre;background:#ffe0e0;'>- src/code/ppc-vm.lisp | 3 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/code/ppc-vm.lisp | 2 +-
</span> src/compiler/ppc/c-call.lisp | 282 +++++++++++++++++++++-
src/compiler/ppc/float.lisp | 65 +++++
src/compiler/ppc/parms.lisp | 3 +-
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,7 +23,7 @@ This reverts commit 217791a738a5960092e38106e9931c424cd4ee98.
</span> tests/float.pure.lisp | 2 +
tests/foreign-stack-alignment.impure.lisp | 3 +-
tests/test-funs.lisp | 2 +-
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 18 files changed, 773 insertions(+), 11 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 18 files changed, 772 insertions(+), 11 deletions(-)
</span> create mode 100644 src/runtime/Config.ppc-darwin
create mode 100644 src/runtime/ppc-darwin-os.c
create mode 100644 src/runtime/ppc-darwin-os.h
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,16 +55,15 @@ index 1a634d9f6..95355c0df 100644
</span> (values))
diff --git src/code/ppc-vm.lisp src/code/ppc-vm.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 4783c0d00..30ba89b09 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4783c0d00..06aed54fd 100644
</span> --- src/code/ppc-vm.lisp
+++ src/code/ppc-vm.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -46,7 +46,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -46,7 +46,7 @@
</span> ;;; Given a signal context, return the floating point modes word in
;;; the same format as returned by FLOATING-POINT-MODES.
;;;
-;;; FIXME: surely this must be accessible somewhere under *BSD?
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+;;; FIXME: surely this must be accessible somewhere under Darwin? Or
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+;;; under NetBSD?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++;;; FIXME: surely this must be accessible under some other operating systems?
</span> #+linux
(define-alien-routine ("os_context_fp_control" context-floating-point-modes)
(unsigned 32)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -591,7 +590,7 @@ index 000000000..b34a07236
</span> +# Nothing to do.
+after-grovel-headers:
diff --git src/runtime/monitor.c src/runtime/monitor.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index a768fe51e..1c9857db7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 28fa9aa70..486521c4d 100644
</span> --- src/runtime/monitor.c
+++ src/runtime/monitor.c
@@ -640,6 +640,10 @@ print_context(os_context_t *context)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -606,7 +605,7 @@ index a768fe51e..1c9857db7 100644
</span> printf("PC:\t\t 0x%08lx\n", (unsigned long)os_context_pc(context));
#endif
diff --git src/runtime/ppc-arch.c src/runtime/ppc-arch.c
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 757997f09..a7624c00c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9cb7c4369..d74d85648 100644
</span> --- src/runtime/ppc-arch.c
+++ src/runtime/ppc-arch.c
@@ -46,8 +46,10 @@
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch b/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 24053da2800..7c054917d31 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1013-ppc-Darwin-Config.ppc-follow-up-changes.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 73bf4a60ff3a14f8db807187cc8c007b06ac747b Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From bf2c0c8c92ba486ee96eaf35c566461a566324fa Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:29:05 +0800
Subject: [PATCH] ppc/Darwin: Config.ppc: follow up changes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch b/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 8ae49492e41..a5ba359c0ed 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1014-ppc-Darwin-ppc-assem.S-fix-wrong-assembler-code-chun.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 6fa5bd61f50e19adc00d134ac7399c70868367d1 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 3f88a7fadbb1300bfd547ac028f5ade73a5d3814 Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:30:34 +0800
Subject: [PATCH] ppc/Darwin: ppc-assem.S: fix wrong assembler code chunk
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch b/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 6daf3762360..a4a46d12589 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1015-ppc-Darwin-Misc-fixes-for-PPC.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 555c637c4ecece8ed3e6c68a483c7798cad82aa6 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 87237363de6eea4990ce60c99622a430546819a3 Mon Sep 17 00:00:00 2001
</span> From: Sergey Fedorov <vital.had@gmail.com>
Date: Mon, 5 Jun 2023 22:51:40 +0800
Subject: [PATCH] ppc/Darwin: Misc fixes for PPC
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch b/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 33602bcec1d..a4dbbb1f37b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1016-ppc-Darwin-ppc-assem-a-minor-fix-to-assembler-syntax.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From fa1e6470b89657f515506b4b07e65fe9c7f3da50 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 051d46a18a7a0d08c39d7fefdd0b02a1d2705635 Mon Sep 17 00:00:00 2001
</span> From: barracuda156 <vital.had@gmail.com>
Date: Tue, 6 Jun 2023 16:37:08 +0800
Subject: [PATCH] ppc/Darwin: ppc-assem: a minor fix to assembler syntax
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch b/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index fe6238d5583..78fe6f76e65 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1017-Fix-building-by-lisp-without-endian-features.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 5bcc9c806ac0a8cb61030774b13944f4adc0859c Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 95716f150819432bcdae7b21b875a78478bac218 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Thu, 8 Jun 2023 20:43:29 +0200
Subject: [PATCH] Fix building by lisp without endian features
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch b/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index c9397ba6002..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1018-Darwin-implement-os_tsd_get_direct-for-macOS-before-.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,85 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 39b3e6c56f6b3bb7687a2d3552dc20f279d7da22 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: "Kirill A. Korinsky" <kirill@korins.ky>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Sat, 10 Jun 2023 00:28:06 +0200
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Darwin: implement `os_tsd_get_direct` for macOS before 10.13
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-macOS / Darwin can be run not only x86_64, arm64 and arm64. The old
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-logic uses arm64 way on everything else that leads to illegal
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-instruction on runtime.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Here I've bring support for i386, ppc and ppc64, and added
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-compatimibilty for macOS before 10.13
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Regression was introduced at 4ce2310cc5d9db835423168cac0d28ed8caff3eb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/runtime/thread.c | 41 +++++++++++++++++++++++++++++++----------
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 1 file changed, 31 insertions(+), 10 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git src/runtime/thread.c src/runtime/thread.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index d0f9f2dd6..79f215ac4 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/runtime/thread.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/runtime/thread.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -214,29 +214,50 @@ int sb_GetTID()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return getthrid();
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #elif defined __APPLE__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--// follows is what the apple pthreads implementation does...
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#define __TSD_MACH_THREAD_SELF 3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#if defined(__x86_64__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// based on:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// - os/tsd.h from 10.13 and 10.9;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// - pthread_machdep.h from 10.5.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef __LP64__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define _PTHREAD_TSD_OFFSET 0x60
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define _PTHREAD_TSD_OFFSET 0x48
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- __attribute__((always_inline)) static inline uintptr_t _os_tsd_get_direct(unsigned long slot) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if defined(__i386__) || defined(__x86_64__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uintptr_t ret;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- __asm__ volatile ("mov %%gs:%1, %0" : "=r" (ret) : "m" (*(void **)(slot * sizeof(void *))));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return ret;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#else // __x86_64__
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--__attribute__((always_inline)) static inline uintptr_t _os_tsd_get_direct(unsigned long slot) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#elif defined(__arm__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uintptr_t *base;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#if defined(__arm__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- __asm__("mrc p15, 0, %0, c13, c0, 3\n"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- "bic %0, %0, #0x3\n" : "=r" (base));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return base[slot];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #elif defined(__arm64__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ uintptr_t *base;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- __asm__ ("mrs %0, TPIDRRO_EL0" : "=r" (base));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return base[slot];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#elif defined(__ppc__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ void **__pthread_tsd;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ __asm__ volatile("mfspr %0, 259" : "=r" (__pthread_tsd));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return __pthread_tsd[slot + (_PTHREAD_TSD_OFFSET / sizeof(void *))];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#elif defined(__ppc64__)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ register void **__pthread_tsd __asm__ ("r13");
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return __pthread_tsd[slot + (_PTHREAD_TSD_OFFSET / sizeof(void *))];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#else // something else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#error no pthread_getspecific_direct nor _os_tsd_get_direct implementation for this arch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- uint32_t sb_GetTID(void) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- // actually a 32-bit id; truncation is harmless
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-- return (uint32_t)_os_tsd_get_direct(__TSD_MACH_THREAD_SELF);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 101300
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return (uint32_t)_os_tsd_get_direct(0); // __TSD_THREAD_SELF or _PTHREAD_TSD_SLOT_PTHREAD_SELF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return (uint32_t)_os_tsd_get_direct(3); // __TSD_MACH_THREAD_SELF
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #define sb_GetTID() 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.41.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/sbcl/files/1019-ppc-Darwin-fix-threads-support.patch b/lang/sbcl/files/1018-ppc-Darwin-fix-threads-support.patch
</span>similarity index 95%
rename from lang/sbcl/files/1019-ppc-Darwin-fix-threads-support.patch
rename to lang/sbcl/files/1018-ppc-Darwin-fix-threads-support.patch
<span style='display:block; white-space:pre;color:#808080;'>index a771f8f3fb6..a35874c6c3a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/sbcl/files/1019-ppc-Darwin-fix-threads-support.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/sbcl/files/1018-ppc-Darwin-fix-threads-support.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 6998e9a125e6778330ac7cd4a6d6a0a2ef54ce05 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From fb4f79e18df14d95881f43c6c3470427c4eafa20 Mon Sep 17 00:00:00 2001
</span> From: "Kirill A. Korinsky" <kirill@korins.ky>
Date: Sun, 11 Jun 2023 12:14:51 +0200
Subject: [PATCH] ppc/Darwin: fix threads support
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -11,10 +11,10 @@ Subject: [PATCH] ppc/Darwin: fix threads support
</span> 4 files changed, 16 insertions(+), 8 deletions(-)
diff --git src/cold/shared.lisp src/cold/shared.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index ae707807e..8c2af3973 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 683a93bb3..c8128cea0 100644
</span> --- src/cold/shared.lisp
+++ src/cold/shared.lisp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -308,7 +308,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -302,7 +302,7 @@
</span> (pushnew :immobile-code sb-xc:*features*))
(when (target-featurep :64-bit)
(push :compact-symbol sb-xc:*features*))
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,7 +24,7 @@ index ae707807e..8c2af3973 100644
</span> (when (target-featurep '(:and :x86 :int4-breakpoints))
;; 0xCE is a perfectly good 32-bit instruction,
diff --git src/runtime/arch.h src/runtime/arch.h
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 26f7f2269..5bb8efe46 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ea1dc0a2e..ef7530c8c 100644
</span> --- src/runtime/arch.h
+++ src/runtime/arch.h
@@ -41,6 +41,10 @@ extern int arch_os_thread_init(struct thread *thread);
</pre><pre style='margin:0'>
</pre>