<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/cd7255f4be41fe4d864c8d72f0a77d843838d14c">https://github.com/macports/macports-ports/commit/cd7255f4be41fe4d864c8d72f0a77d843838d14c</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 cd7255f4be4 gcc12: Add upstream Darwin patch, restores arm support
</span>cd7255f4be4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit cd7255f4be41fe4d864c8d72f0a77d843838d14c
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sun Jul 10 13:18:11 2022 +0100

<span style='display:block; white-space:pre;color:#404040;'>    gcc12: Add upstream Darwin patch, restores arm support
</span>---
 lang/gcc12/Portfile                  |    26 +-
 lang/gcc12/files/gcc-12.1.0-arm.diff | 13924 +++++++++++++++++++++++++++++++++
 2 files changed, 13935 insertions(+), 15 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc12/Portfile b/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8b0c0907fdb..09654d3d9b8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc12/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -23,8 +23,8 @@ long_description    {*}${description}, including front ends for \
</span>                     C, C++, Objective-C, Objective-C++ and Fortran.
 
 version             12.1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-subport             libgcc12 { revision 0 }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport             libgcc12 { revision 1 }
</span> 
 checksums           rmd160  6cdb114103541230492bbc6093585cb10e5e5ea6 \
                     sha256  62fd634889f31c02b64af2c468f064b47ad1ca78411c45abe6ac4b5f8dd19c7b \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -109,11 +109,8 @@ configure.args      --enable-languages=[join ${gcc_configure_langs} ","] \
</span>                     --with-ld=${prefix}/bin/ld \
                     --with-ar=${prefix}/bin/ar \
                     --with-bugurl=https://trac.macports.org/newticket \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --enable-host-shared
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${os.arch} eq "arm"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-append --with-darwin-extra-rpath=${prefix}/lib/libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --enable-host-shared \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --with-darwin-extra-rpath=${prefix}/lib/libgcc
</span> 
 # see https://lists.macports.org/pipermail/macports-dev/2017-August/036209.html
 # --disable-tls does not limit functionality
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -155,6 +152,13 @@ configure.env-append \
</span>                     OTOOL=${prefix}/bin/otool \
                     OTOOL64=${prefix}/bin/otool
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Branch from the Darwin maintainer of GCC, with a few generic fixes and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Apple Silicon support, located at https://github.com/iains/gcc-darwin-arm64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Borrowed from homebrew https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/gcc@12.rb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.pre_args      -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   gcc-12.1.0-arm.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> pre-configure {
 
     # Set package info
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -221,14 +225,6 @@ if { ${os.platform} eq "darwin" && ${os.major} < 10 } {
</span>         return -code error "incompatible OS X version"
     }
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if { ${os.platform} eq "darwin" && ${os.arch} eq "arm" } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    known_fail  yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    pre-fetch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_error "${name} ${version} is not supported on Darwin ${os.major} ${os.arch}."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_error "On ${os.arch}, until support is available in released versions, please use gcc-devel instead."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        return -code error "incompatible OS X version"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span> 
 # gcc cannot build if libunwind-headers is active
 conflicts_build-append libunwind-headers
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc12/files/gcc-12.1.0-arm.diff b/lang/gcc12/files/gcc-12.1.0-arm.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..7a50abb7675
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc12/files/gcc-12.1.0-arm.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13924 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/Makefile.def b/Makefile.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 72d58549645..25b8563a808 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Makefile.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Makefile.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -47,7 +47,8 @@ host_modules= { module= fixincludes; bootstrap=true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_modules= { module= flex; no_check_cross= true; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_modules= { module= gas; bootstrap=true; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_modules= { module= gcc; bootstrap=true; 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          extra_make_flags="$(EXTRA_GCC_FLAGS)"; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          extra_make_flags="$(EXTRA_GCC_FLAGS)";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          extra_configure_flags='--enable-pie-tools=@enable_pie_tools@'; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_modules= { module= gmp; lib_path=.libs; bootstrap=true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           // Work around in-tree gmp configure bug with missing flex.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           extra_configure_flags='--disable-shared LEX="touch lex.yy.c"';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/Makefile.in b/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 593495e1650..807c5947895 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -112,6 +112,9 @@ GCC_SHLIB_SUBDIR = @GCC_SHLIB_SUBDIR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If the build should make suitable code for shared host resources.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_shared = @host_shared@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# If we should build compilers and supporting tools as PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools = @enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Build programs are put under this directory.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BUILD_SUBDIR = @build_subdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # This is set by the configure script to the arguments to use when configuring
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12012,7 +12015,7 @@ configure-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $$s/$$module_srcdir/configure \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --srcdir=$${topdir}/$$module_srcdir \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    --target=${target_alias}  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --target=${target_alias} --enable-pie-tools=@enable_pie_tools@ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     || exit 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12047,7 +12050,8 @@ configure-stage1-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGE1_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGE1_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stage2-gcc maybe-configure-stage2-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12080,7 +12084,8 @@ configure-stage2-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGE2_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGE2_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stage3-gcc maybe-configure-stage3-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12113,7 +12118,8 @@ configure-stage3-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGE3_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGE3_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stage4-gcc maybe-configure-stage4-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12146,7 +12152,8 @@ configure-stage4-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGE4_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGE4_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stageprofile-gcc maybe-configure-stageprofile-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12179,7 +12186,8 @@ configure-stageprofile-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGEprofile_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGEprofile_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stagetrain-gcc maybe-configure-stagetrain-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12212,7 +12220,8 @@ configure-stagetrain-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGEtrain_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGEtrain_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stagefeedback-gcc maybe-configure-stagefeedback-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12245,7 +12254,8 @@ configure-stagefeedback-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGEfeedback_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGEfeedback_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stageautoprofile-gcc maybe-configure-stageautoprofile-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12278,7 +12288,8 @@ configure-stageautoprofile-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGEautoprofile_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGEautoprofile_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PHONY: configure-stageautofeedback-gcc maybe-configure-stageautofeedback-gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12311,7 +12322,8 @@ configure-stageautofeedback-gcc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --target=${target_alias} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --with-build-libsubdir=$(HOST_SUBDIR) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(STAGEautofeedback_CONFIGURE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(STAGEautofeedback_CONFIGURE_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    --enable-pie-tools=@enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @endif gcc-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/Makefile.tpl b/Makefile.tpl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ef58fac2b9a..925da105c18 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/Makefile.tpl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/Makefile.tpl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -115,6 +115,9 @@ GCC_SHLIB_SUBDIR = @GCC_SHLIB_SUBDIR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If the build should make suitable code for shared host resources.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_shared = @host_shared@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# If we should build compilers and supporting tools as PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools = @enable_pie_tools@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Build programs are put under this directory.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BUILD_SUBDIR = @build_subdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # This is set by the configure script to the arguments to use when configuring
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/config/mh-darwin b/config/mh-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b72835ae953..bb4112773c9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/config/mh-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/config/mh-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11,7 +11,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # non-bootstrapped compiler), later stages will be built by GCC which supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the required flags.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# We cannot use mdynamic-no-pic when building shared host resources.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# We cannot use mdynamic-no-pic when building shared host resources, or for PIE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# tool executables, which also enables host-shared.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ifeq (${host_shared},no)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BOOTSTRAP_TOOL_CAN_USE_MDYNAMIC_NO_PIC := $(shell \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/configure b/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5dcaab14ae9..c690bbec82b 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -685,6 +685,7 @@ get_gcc_base_ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extra_host_zlib_configure_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extra_host_libiberty_configure_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ stage1_languages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extra_linker_plugin_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extra_linker_plugin_configure_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -830,6 +831,7 @@ enable_lto
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_linker_plugin_configure_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_linker_plugin_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_host_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_stage1_languages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_objc_gc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_target_bdw_gc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1558,6 +1560,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           additional flags for configuring and building linker
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           plugins [none]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-host-shared    build host code as shared libraries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-pie-tools      build Position Independent Executables for the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          compilers and other tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-stage1-languages[=all]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           choose additional languages to build during stage1.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           Mostly useful for compiler development
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8410,6 +8414,20 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin2* | *-darwin1[56789]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # For these versions, we default to using embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" != "xno"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # For these versions, we only use embedded rpaths on demand.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # GCC GRAPHITE dependency isl.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8663,6 +8681,42 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Checked early because it can affect host make fragments.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_pie_tools+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_pie_tools; enable_pie_tools=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   aarch64-*-darwin1[1-9]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     if test x$enable_pie_tools != xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       echo configure.ac: warning: aarch64-darwin must use PIE, pie-tools setting ignored. 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_pie_tools=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       host_shared=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     fi ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # PIE is the default for macOS 10.7+ so reflect that in the configure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # However, we build 32b toolchains mdynamic-no-pic by default which is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # not compatible with PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x86_64-*-darwin1[1-9]* | *-*-darwin2*) enable_pie_tools=yes ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *) enable_pie_tools=no ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test x$enable_pie_tools = xyes && test x$host_shared != xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo configure.ac: warning: for Darwin PIE requires PIC code, switching host-shared on 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      host_shared=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # By default, C and C++ are the only stage 1 languages.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ stage1_languages=,c,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/configure.ac b/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 85977482aee..72bd20fda66 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1827,6 +1827,20 @@ AC_ARG_WITH(boot-ldflags,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  if test "$poststage1_libs" = ""; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    poststage1_ldflags="-static-libstdc++ -static-libgcc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  fi])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin2* | *-darwin1[[56789]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # For these versions, we default to using embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" != "xno"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # For these versions, we only use embedded rpaths on demand.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      poststage1_ldflags="$poststage1_ldflags -nodefaultrpaths"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(poststage1_ldflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # GCC GRAPHITE dependency isl.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1931,7 +1945,41 @@ AC_ARG_ENABLE(host-shared,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   x86_64-*-darwin* | aarch64-*-darwin*) host_shared=yes ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   *) host_shared=no ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  esac])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Checked early because it can affect host make fragments.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_ARG_ENABLE(pie-tools,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[AS_HELP_STRING([--enable-pie-tools],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [build Position Independent Executables for the compilers and other tools])],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[enable_pie_tools=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   aarch64-*-darwin1[[1-9]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     if test x$enable_pie_tools != xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       echo configure.ac: warning: aarch64-darwin must use PIE, pie-tools setting ignored. 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_pie_tools=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       host_shared=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     fi ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ esac],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # PIE is the default for macOS 10.7+ so reflect that in the configure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # However, we build 32b toolchains mdynamic-no-pic by default which is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # not compatible with PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x86_64-*-darwin1[[1-9]]* | *-*-darwin2*) enable_pie_tools=yes ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *) enable_pie_tools=no ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ esac])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case $target in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test x$enable_pie_tools = xyes && test x$host_shared != xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo configure.ac: warning: for Darwin PIE requires PIC code, switching host-shared on 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      host_shared=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(host_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([enable_pie_tools])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # By default, C and C++ are the only stage 1 languages.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ stage1_languages=,c,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/fixincludes/configure b/fixincludes/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6e2d67b655b..b3bca666a4d 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/fixincludes/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/fixincludes/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2644,7 +2644,7 @@ ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # _LT_DARWIN_LINKER_FEATURES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # --------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Checks for linker and compiler features on darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Checks for linker and compiler features on Darwin / macOS / iOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # _LT_SYS_MODULE_PATH_AIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/Makefile.in b/gcc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 31ff95500c9..255a10c2ce8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -270,11 +270,15 @@ COMPILER += $(CET_HOST_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NO_PIE_CFLAGS = @NO_PIE_CFLAGS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NO_PIE_FLAG = @NO_PIE_FLAG@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# We don't want to compile the compilers with -fPIE, it make PCH fail.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ifneq (@enable_pie_tools@,yes)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Build and link the compilers and tools without PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ COMPILER += $(NO_PIE_CFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Link with -no-pie since we compile the compiler with -fno-PIE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LINKER += $(NO_PIE_FLAG)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# FIXME these need to be configured.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++COMPILER += -fPIE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LINKER += -pie
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Like LINKER, but use a mutex for serializing front end links.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ifeq (@DO_LINK_MUTEX@,true)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -407,6 +411,7 @@ ifeq ($(enable_plugin),yes)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_host_shared = @enable_host_shared@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_default_pie = @enable_default_pie@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_as_accelerator = @enable_as_accelerator@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1153,6 +1158,8 @@ LANG_MAKEFRAGS = @all_lang_makefrags@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Used by gcc/jit/Make-lang.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LD_VERSION_SCRIPT_OPTION = @ld_version_script_option@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LD_SONAME_OPTION = @ld_soname_option@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@DARWIN_RPATH = @rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_FALSE@DARWIN_RPATH = ${libdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Flags to pass to recursive makes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # CC is set by configure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1942,9 +1949,12 @@ cs-tconfig.h: Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(SHELL) $(srcdir)/mkconfig.sh tconfig.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cs-tm.h: Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  TARGET_CPU_DEFAULT="$(target_cpu_default)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  HEADERS="$(tm_include_list)" DEFINES="$(tm_defines)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(SHELL) $(srcdir)/mkconfig.sh tm.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_FALSE@    TARGET_CPU_DEFAULT="$(target_cpu_default)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_FALSE@    HEADERS="$(tm_include_list)" DEFINES="$(tm_defines)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_FALSE@    $(SHELL) $(srcdir)/mkconfig.sh tm.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@     TARGET_CPU_DEFAULT="$(target_cpu_default)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@     HEADERS="$(tm_include_list)" DEFINES="$(tm_defines) DARWIN_AT_RPATH=1" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@     $(SHELL) $(srcdir)/mkconfig.sh tm.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cs-tm_p.h: Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   TARGET_CPU_DEFAULT="" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4116,6 +4126,9 @@ site.exp: ./config.status Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     echo "set COMPAT_OPTIONS \"$(COMPAT_OPTIONS)\"" >> ./site.tmp; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else true; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  @if test "x@enable_darwin_at_rpath@" = "xyes" ; then \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    echo "set ENABLE_DARWIN_AT_RPATH 1" >> ./site.tmp; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @echo "## All variables above are generated by configure. Do Not Edit ##" >> ./site.tmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @cat ./site.tmp > site.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @cat site.bak | sed \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/aclocal.m4 b/gcc/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6be36df5190..126e09bbcd1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,6 +12,56 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # PARTICULAR PURPOSE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_CONDITIONAL                                            -*- Autoconf -*-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 1997-2017 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is free software; the Free Software Foundation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# gives unlimited permission to copy and/or distribute it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# with or without modifications, as long as this notice is preserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_CONDITIONAL(NAME, SHELL-CONDITION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# -------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Define a conditional.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([AM_CONDITIONAL],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[AC_PREREQ([2.52])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([$1_TRUE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([$1_FALSE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_AM_SUBST_NOTMAKE([$1_TRUE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_AM_SUBST_NOTMAKE([$1_FALSE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++m4_define([_AM_COND_VALUE_$1], [$2])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if $2; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CONFIG_COMMANDS_PRE(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AC_MSG_ERROR([[conditional "$1" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally.]])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi])])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 2006-2017 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is free software; the Free Software Foundation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# gives unlimited permission to copy and/or distribute it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# with or without modifications, as long as this notice is preserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# _AM_SUBST_NOTMAKE(VARIABLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# ---------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This macro is traced by Automake.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([_AM_SUBST_NOTMAKE])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_SUBST_NOTMAKE(VARIABLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# --------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Public sister of _AM_SUBST_NOTMAKE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../libtool.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../ltoptions.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../ltsugar.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1e9801a8b96..89c42073b60 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/ada/gcc-interface/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/ada/gcc-interface/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -796,13 +796,16 @@ gnatlib-shared-darwin:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(SO_OPTS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -Wl,-install_name,@rpath/libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          $(MISCLIB)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          -nodefaultrpaths -Wl,-rpath,@loader_path/,-rpath,@loader_path/.. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          -Wl,-rpath,@loader_path/../../../../ $(MISCLIB)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cd $(RTSDIR); `echo "$(GCC_FOR_TARGET)" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 | sed -e 's,\./xgcc,../../xgcc,' -e 's,-B\./,-B../../,'` -dynamiclib $(PICFLAG_FOR_TARGET) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -o libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(GNATRTL_TASKING_OBJS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(SO_OPTS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -Wl,-install_name,@rpath/libgnarl$(hyphen)$(LIBRARY_VERSION)$(soext) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          -nodefaultrpaths -Wl,-rpath,@loader_path/,-rpath,@loader_path/.. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          -Wl,-rpath,@loader_path/../../../../ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(THREADSLIB) -Wl,libgnat$(hyphen)$(LIBRARY_VERSION)$(soext)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cd $(RTSDIR); $(LN_S) libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           libgnat$(soext)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/builtins.def b/gcc/builtins.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 005976f34e9..e2cd65eed7b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/builtins.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/builtins.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -950,6 +950,8 @@ DEF_BUILTIN_STUB (BUILT_IN_ADJUST_TRAMPOLINE, "__builtin_adjust_trampoline")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEF_BUILTIN_STUB (BUILT_IN_INIT_DESCRIPTOR, "__builtin_init_descriptor")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEF_BUILTIN_STUB (BUILT_IN_ADJUST_DESCRIPTOR, "__builtin_adjust_descriptor")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEF_BUILTIN_STUB (BUILT_IN_NONLOCAL_GOTO, "__builtin_nonlocal_goto")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DEF_BUILTIN_STUB (BUILT_IN_NESTED_PTR_CREATED, "__builtin_nested_func_ptr_created")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DEF_BUILTIN_STUB (BUILT_IN_NESTED_PTR_DELETED, "__builtin_nested_func_ptr_deleted")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implementing __builtin_setjmp.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEF_BUILTIN_STUB (BUILT_IN_SETJMP_SETUP, "__builtin_setjmp_setup")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/calls.cc b/gcc/calls.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4d0bc45be28..208648a7439 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/calls.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/calls.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1355,7 +1355,8 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    with those made by function.cc.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* See if this argument should be passed by invisible reference.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      function_arg_info arg (type, argpos < n_named_args);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      function_arg_info arg (type, argpos < n_named_args,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       argpos == n_named_args - 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (pass_by_reference (args_so_far_pnt, arg))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     const bool callee_copies
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1528,6 +1529,7 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        reg_parm_stack_space,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        args[i].pass_on_stack ? 0 : args[i].partial,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       args_so_far,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        fndecl, args_size, &args[i].locate);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef BLOCK_REG_PADDING
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4215,6 +4217,7 @@ emit_library_call_value_1 (int retval, rtx orgfun, rtx value,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      argvec[count].reg != 0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      reg_parm_stack_space, 0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                     args_so_far,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      NULL_TREE, &args_size, &argvec[count].locate);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (argvec[count].reg == 0 || argvec[count].partial != 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4306,6 +4309,7 @@ emit_library_call_value_1 (int retval, rtx orgfun, rtx value,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          argvec[count].reg != 0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          reg_parm_stack_space, argvec[count].partial,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                         args_so_far,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          NULL_TREE, &args_size, &argvec[count].locate);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     args_size.constant += argvec[count].locate.size.constant;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     gcc_assert (!argvec[count].locate.size.var);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/calls.h b/gcc/calls.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fd7836e481d..a2a4f85e23e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/calls.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/calls.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -35,24 +35,43 @@ class function_arg_info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   function_arg_info ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    : type (NULL_TREE), mode (VOIDmode), named (false),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (NULL_TREE), mode (VOIDmode), named (false), last_named (false),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Initialize an argument of mode MODE, either before or after promotion.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   function_arg_info (machine_mode mode, bool named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    : type (NULL_TREE), mode (mode), named (named), pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (NULL_TREE), mode (mode), named (named), last_named (false),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  function_arg_info (machine_mode mode, bool named, bool last_named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (NULL_TREE), mode (mode), named (named), last_named (last_named),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Initialize an unpromoted argument of type TYPE.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   function_arg_info (tree type, bool named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    : type (type), mode (TYPE_MODE (type)), named (named),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (type), mode (TYPE_MODE (type)), named (named), last_named (false),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Initialize an unpromoted argument of type TYPE.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  function_arg_info (tree type, bool named, bool last_named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (type), mode (TYPE_MODE (type)), named (named),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      last_named (last_named), pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Initialize an argument with explicit properties.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   function_arg_info (tree type, machine_mode mode, bool named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    : type (type), mode (mode), named (named), pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (type), mode (mode), named (named), last_named (false),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Initialize an argument with explicit properties.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  function_arg_info (tree type, machine_mode mode, bool named, bool last_named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : type (type), mode (mode), named (named), last_named (last_named),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pass_by_reference (false)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Return true if the gimple-level type is an aggregate.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -105,6 +124,9 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      "...").  See also TARGET_STRICT_ARGUMENT_NAMING.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int named : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* True if this is the last named argument. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned int last_named : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* True if we have decided to pass the argument by reference, in which case
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      the function_arg_info describes a pointer to the original argument.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int pass_by_reference : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/common.opt b/gcc/common.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8a0dafc522d..7feb4635656 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/common.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/common.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2173,6 +2173,10 @@ foffload-abi=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Common Joined RejectNegative Enum(offload_abi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -foffload-abi=[lp64|ilp32]        Set the ABI to use in an offload compiler.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foff-stack-trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Common RejectNegative Var(flag_off_stack_trampolines) Init(OFF_STACK_TRAMPOLINES_INIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Generate trampolines in executable memory rather than executable stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Enum
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Name(offload_abi) Type(enum offload_abi) UnknownError(unknown offload ABI %qs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2733,6 +2737,10 @@ fstack-usage
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Common RejectNegative Var(flag_stack_usage)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Output stack usage information on a per-function basis.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fstack-use-cumulative-args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Common RejectNegative Var(flag_stack_use_cumulative_args) Init(STACK_USE_CUMULATIVE_ARGS_INIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Use cumulative args-based stack layout hooks.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fstrength-reduce
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Common Ignore
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Does nothing.  Preserved for backward compatibility.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2801,7 +2809,7 @@ Common Var(flag_tracer) Optimization
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Perform superblock formation via tail duplication.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ftrampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-Common Var(flag_trampolines) Init(0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Common Var(flag_trampolines) Init(OFF_STACK_TRAMPOLINES_INIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ For targets that normally need trampolines for nested functions, always
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ generate them instead of using descriptors.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config.gcc b/gcc/config.gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c5064dd3766..1562a7bea4b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config.gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config.gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1086,6 +1086,23 @@ case ${target} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Defaults that need fixing.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case ${target} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64*-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines STACK_USE_CUMULATIVE_ARGS_INIT=1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines OFF_STACK_TRAMPOLINES_INIT=1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines STACK_USE_CUMULATIVE_ARGS_INIT=0"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Currently, we do this for macOS 11 and above.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines OFF_STACK_TRAMPOLINES_INIT=1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines STACK_USE_CUMULATIVE_ARGS_INIT=0"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="$tm_defines OFF_STACK_TRAMPOLINES_INIT=0"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case ${target} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="${tm_file} dbxelf.h elfos.h newlib-stdint.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1124,6 +1141,11 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-*-rtems*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   done
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64-*-darwin* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_file="${tm_file} aarch64/aarch64-errata.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-darwin"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tm_defines="${tm_defines} TARGET_DEFAULT_ASYNC_UNWIND_TABLES=1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64*-*-freebsd*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-errata.h aarch64/aarch64-freebsd.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config.in b/gcc/config.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 64c27c9cfac..5cd26cac57a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,6 +49,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Specify a runpath directory, additional to those provided by the compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DARWIN_ADD_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Should add an extra runpath directory */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DARWIN_DO_EXTRA_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to enable the use of a default assembler. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef DEFAULT_ASSEMBLER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -224,6 +237,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define if you build Position Independent Executables for the compilers and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   other tools. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef ENABLE_PIE_TOOLS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to enable plugin support. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef ENABLE_PLUGIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2208,6 +2228,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define which stat syscall is able to handle 64bit indodes. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef HOST_STAT_FOR_64BIT_INODES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define as const if the declaration of iconv() needs const. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef USED_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef ICONV_CONST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64-builtins.cc b/gcc/config/aarch64/aarch64-builtins.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c21476d7ae9..8485cf0a3ee 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64-builtins.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64-builtins.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -613,6 +613,10 @@ enum aarch64_builtins
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   AARCH64_LS64_BUILTIN_ST64B,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   AARCH64_LS64_BUILTIN_ST64BV,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   AARCH64_LS64_BUILTIN_ST64BV0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* OS-specific */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AARCH64_BUILTIN_CFSTRING,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AARCH64_BUILTIN_HUGE_VALQ,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AARCH64_BUILTIN_INFQ,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   AARCH64_BUILTIN_MAX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -732,6 +736,9 @@ tree aarch64_fp16_ptr_type_node = NULL_TREE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tree aarch64_bf16_type_node = NULL_TREE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tree aarch64_bf16_ptr_type_node = NULL_TREE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Pointer to __float128 on Mach-O, where the 128b float is not long double.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++tree aarch64_float128_ptr_type_node = NULL_TREE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Wrapper around add_builtin_function.  NAME is the name of the built-in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    function, TYPE is the function type, CODE is the function subcode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    (relative to AARCH64_BUILTIN_GENERAL), and ATTRS is the function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1474,6 +1481,40 @@ aarch64_init_bf16_types (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_bf16_ptr_type_node = build_pointer_type (aarch64_bf16_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Initialize the backend REAL_TYPE type supporting __float128 on Mach-O,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   as well as the related built-ins.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_init_float128_types (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tree ftype, fndecl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Populate the float128 node if it is not already done so that the FEs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     know it is available.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (float128_type_node == NULL_TREE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      float128_type_node = make_node (REAL_TYPE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      TYPE_PRECISION (float128_type_node) = 128;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      SET_TYPE_MODE (float128_type_node, TFmode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      layout_type (float128_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  lang_hooks.types.register_builtin_type (float128_type_node, "__float128");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_float128_ptr_type_node = build_pointer_type (float128_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ftype = build_function_type_list (float128_type_node, NULL_TREE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fndecl = aarch64_general_add_builtin ("__builtin_huge_valq", ftype,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  AARCH64_BUILTIN_HUGE_VALQ);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  TREE_READONLY (fndecl) = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_builtin_decls[AARCH64_BUILTIN_HUGE_VALQ] = fndecl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fndecl = aarch64_general_add_builtin ("__builtin_infq", ftype,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  AARCH64_BUILTIN_INFQ);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  TREE_READONLY (fndecl) = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_builtin_decls[AARCH64_BUILTIN_INFQ] = fndecl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Pointer authentication builtins that will become NOP on legacy platform.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Currently, these builtins are for internal use only (libgcc EH unwinder).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1731,8 +1772,9 @@ aarch64_general_init_builtins (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_init_fpsr_fpcr_builtins ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_init_fp16_types ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_init_bf16_types ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    aarch64_init_float128_types ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     aarch64_simd_switcher simd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1765,6 +1807,14 @@ aarch64_general_init_builtins (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     aarch64_init_memtag_builtins ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_init_subtarget_builtins (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef SUBTARGET_INIT_BUILTINS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SUBTARGET_INIT_BUILTINS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement TARGET_BUILTIN_DECL for the AARCH64_BUILTIN_GENERAL group.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tree
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_general_builtin_decl (unsigned code, bool)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2730,6 +2780,15 @@ aarch64_general_fold_builtin (unsigned int fcode, tree type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (aarch64_fold_builtin_lane_check (args[0], args[1], args[2]))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return void_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      case AARCH64_BUILTIN_HUGE_VALQ:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      case AARCH64_BUILTIN_INFQ:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gcc_assert (n_args == 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    REAL_VALUE_TYPE inf;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    real_inf (&inf);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return build_real (type, inf);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64-c.cc b/gcc/config/aarch64/aarch64-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 767ee0c763c..55ffdbd2f4d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -369,4 +369,8 @@ aarch64_register_pragmas (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   targetm.check_builtin_call = aarch64_check_builtin_call;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   c_register_pragma ("GCC", "aarch64", aarch64_pragma_aarch64);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef REGISTER_SUBTARGET_PRAGMAS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  REGISTER_SUBTARGET_PRAGMAS ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64-protos.h b/gcc/config/aarch64/aarch64-protos.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2ac781dff4a..dd03d90a4f3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64-protos.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64-protos.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -108,6 +108,14 @@ enum aarch64_symbol_type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SYMBOL_TLSLE24,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SYMBOL_TLSLE32,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SYMBOL_TLSLE48,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_SMALL_ABS,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_SMALL_PCR,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_SMALL_GOT,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_SMALL_TLS,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_LARGE_ABS,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_LARGE_PCR,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_LARGE_GOT,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SYMBOL_MO_LARGE_TLS,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SYMBOL_FORCE_TO_MEM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,6 +771,7 @@ void aarch64_post_cfi_startproc (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ poly_int64 aarch64_initial_elimination_offset (unsigned, unsigned);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int aarch64_get_condition_code (rtx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool aarch64_address_valid_for_prefetch_p (rtx, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bool aarch64_address_valid_for_unscaled_prefetch_p (rtx, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool aarch64_bitmask_imm (HOST_WIDE_INT val, machine_mode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned HOST_WIDE_INT aarch64_and_split_imm1 (HOST_WIDE_INT val_in);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned HOST_WIDE_INT aarch64_and_split_imm2 (HOST_WIDE_INT val_in);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -914,6 +923,7 @@ void aarch64_expand_vector_init (rtx, rtx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_sve_expand_vector_init (rtx, rtx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_init_cumulative_args (CUMULATIVE_ARGS *, const_tree, rtx,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              const_tree, unsigned, bool = false);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void aarch64_init_cumulative_incoming_args (CUMULATIVE_ARGS *, const_tree, rtx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_init_expanders (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_init_simd_builtins (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_emit_call_insn (rtx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -988,6 +998,7 @@ void aarch64_override_options_internal (struct gcc_options *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char *aarch64_general_mangle_builtin_type (const_tree);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void aarch64_general_init_builtins (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void aarch64_init_subtarget_builtins (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tree aarch64_general_fold_builtin (unsigned int, tree, unsigned int, tree *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gimple *aarch64_general_gimple_fold_builtin (unsigned int, gcall *,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                        gimple_stmt_iterator *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f650abbc4ce..5bbd138e765 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -292,8 +292,10 @@ static bool aarch64_vfp_is_call_or_return_candidate (machine_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                const_tree,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                machine_mode *, int *,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                bool *, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void aarch64_elf_asm_constructor (rtx, int) ATTRIBUTE_UNUSED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void aarch64_elf_asm_destructor (rtx, int) ATTRIBUTE_UNUSED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void aarch64_override_options_after_change (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static bool aarch64_vector_mode_supported_p (machine_mode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int aarch64_address_cost (rtx, machine_mode, addr_space_t, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2757,6 +2759,9 @@ static const struct attribute_spec aarch64_attribute_table[] =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "Advanced SIMD type", 1, 1, false, true,  false, true,  NULL, NULL },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "SVE type",           3, 3, false, true,  false, true,  NULL, NULL },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "SVE sizeless type",  0, 0, false, true,  false, true,  NULL, NULL },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef SUBTARGET_ATTRIBUTE_TABLE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SUBTARGET_ATTRIBUTE_TABLE,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { NULL,                 0, 0, false, false, false, false, NULL, NULL }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3973,7 +3978,7 @@ aarch64_hard_regno_mode_ok (unsigned regno, machine_mode mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (known_le (GET_MODE_SIZE (mode), 8))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (known_le (GET_MODE_SIZE (mode), 16))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  return (regno & 1) == 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return (regno & 1) == 0 || TARGET_MACHO; /* darwinpcs D.4 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (FP_REGNUM_P (regno))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4019,8 +4024,10 @@ static bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_takes_arguments_in_sve_regs_p (const_tree fntype)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CUMULATIVE_ARGS args_so_far_v;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* This does not apply to variadic functions, so all the (currently
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     uncounted) arguments must be named.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_init_cumulative_args (&args_so_far_v, NULL_TREE, NULL_RTX,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                          NULL_TREE, 0, true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          NULL_TREE, -1, true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cumulative_args_t args_so_far = pack_cumulative_args (&args_so_far_v);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for (tree chain = TYPE_ARG_TYPES (fntype);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4505,6 +4512,7 @@ aarch64_load_symref_appropriately (rtx dest, rtx imm,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   switch (type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case SYMBOL_SMALL_ABSOLUTE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case SYMBOL_MO_SMALL_PCR:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* In ILP32, the mode of dest can be either SImode or DImode.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rtx tmp_reg = dest;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4515,6 +4523,21 @@ aarch64_load_symref_appropriately (rtx dest, rtx imm,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (can_create_pseudo_p ())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     tmp_reg = gen_reg_rtx (mode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      rtx sym, off;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      split_const (imm, &sym, &off);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Negative offsets don't work, whether by intention is TBD.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (INTVAL (off) < 0 || INTVAL (off) > 8 * 1024 * 1024)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          emit_move_insn (tmp_reg, gen_rtx_HIGH (mode, sym));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          emit_insn (gen_add_losym (dest, tmp_reg, sym));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          /* FIXME: add the SI option if/when we support ilp32.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          emit_insn (gen_adddi3 (dest, dest, off));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     /* else small enough positive offset is OK.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   emit_move_insn (tmp_reg, gen_rtx_HIGH (mode, copy_rtx (imm)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   emit_insn (gen_add_losym (dest, tmp_reg, imm));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4598,6 +4621,7 @@ aarch64_load_symref_appropriately (rtx dest, rtx imm,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case SYMBOL_MO_SMALL_GOT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case SYMBOL_SMALL_GOT_4G:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       emit_insn (gen_rtx_SET (dest, imm));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6659,6 +6683,7 @@ aarch64_expand_mov_immediate (rtx dest, rtx imm)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_TLSIE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_GOT_28K:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_GOT_4G:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case SYMBOL_MO_SMALL_GOT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TINY_GOT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TINY_TLSIE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (const_offset != 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6672,6 +6697,7 @@ aarch64_expand_mov_immediate (rtx dest, rtx imm)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* FALLTHRU */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_ABSOLUTE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case SYMBOL_MO_SMALL_PCR:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TINY_ABSOLUTE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TLSLE12:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TLSLE24:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7251,6 +7277,7 @@ aarch64_return_in_memory (const_tree type, const_tree fndecl ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gcc_unreachable ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_vfp_is_call_candidate (cumulative_args_t pcum_v, machine_mode mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                          const_tree type, int *nregs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7260,6 +7287,7 @@ aarch64_vfp_is_call_candidate (cumulative_args_t pcum_v, machine_mode mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                             &pcum->aapcs_vfp_rmode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                             nregs, NULL, pcum->silent_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Given MODE and TYPE of a function argument, return the alignment in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    bits.  The idea is to suppress any stronger alignment requested by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7343,6 +7371,13 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pcum->aapcs_arg_processed = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Set suitable defaults for queries.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_boundary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  = aarch64_function_arg_alignment (mode, type, &abi_break);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pure_scalable_type_info pst_info;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (type && pst_info.analyze_registers (type))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7399,13 +7434,29 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* No frontends can create types with variable-sized modes, so we
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        shouldn't be asked to pass or return them.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     size = GET_MODE_SIZE (mode).to_constant ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Since we can pack things on the stack, we need the unrounded size.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_stack_bytes = size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   size = ROUND_UP (size, UNITS_PER_WORD);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   allocate_ncrn = (type) ? !(FLOAT_TYPE_P (type)) : !FLOAT_MODE_P (mode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool is_ha = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   allocate_nvrn = aarch64_vfp_is_call_candidate (pcum_v,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                            mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                            type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                            &nregs);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* We care if the value is a homogenous aggregate when laying out the stack,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     so use this call directly.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  allocate_nvrn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    = aarch64_vfp_is_call_or_return_candidate (mode, type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                         &pcum->aapcs_vfp_rmode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                         &nregs, &is_ha,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                         pcum->silent_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gcc_assert (!sve_p || !allocate_nvrn);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* allocate_ncrn may be false-positive, but allocate_nvrn is quite reliable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7420,7 +7471,13 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (!pcum->silent_p && !TARGET_FLOAT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_err_no_fpadvsimd (mode);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (nvrn + nregs <= NUM_FP_ARG_REGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    && !arg.named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->aapcs_nextnvrn = NUM_FP_ARG_REGS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    goto on_stack;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (nvrn + nregs <= NUM_FP_ARG_REGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     pcum->aapcs_nextnvrn = nvrn + nregs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!aarch64_composite_type_p (type, mode))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7450,6 +7507,7 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         pcum->aapcs_reg = par;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_stack_bytes = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7466,10 +7524,18 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* C6 - C9.  though the sign and zero extension semantics are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      handled elsewhere.  This is the case where the argument fits
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      entirely general registers.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (allocate_ncrn && (ncrn + nregs <= NUM_ARG_REGS))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       gcc_assert (nregs == 0 || nregs == 1 || nregs == 2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    && !arg.named)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->aapcs_nextncrn = NUM_ARG_REGS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    goto on_stack;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* C.8 if the argument has an alignment of 16 then the NGRN is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    rounded up to the next even number.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (nregs == 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7479,7 +7545,9 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        alignment nregs should be > 2 and therefore it should be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        passed by reference rather than value.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     && (aarch64_function_arg_alignment (mode, type, &abi_break)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        == 16 * BITS_PER_UNIT))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        == 16 * BITS_PER_UNIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Darwin PCS deletes rule C.8.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    && !TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (abi_break && warn_psabi && currently_expanding_gimple_stmt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       inform (input_location, "parameter passing for argument of type "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7525,8 +7593,8 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     pcum->aapcs_reg = par;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_nextncrn = ncrn + nregs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_stack_bytes = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7536,10 +7604,87 @@ aarch64_layout_arg (cumulative_args_t pcum_v, const function_arg_info &arg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* The argument is passed on stack; record the needed number of words for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      this argument and align the total size if necessary.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ on_stack:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  pcum->aapcs_stack_words = size / UNITS_PER_WORD;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if (aarch64_function_arg_alignment (mode, type, &abi_break)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      == 16 * BITS_PER_UNIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned int align = aarch64_function_arg_alignment (mode, type, &abi_break);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Darwin does not round up the allocation for smaller entities to 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   bytes.  It only requires the natural alignment for these.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   but we don't do this for:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    * unnamed parms in variadic functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    * complex types
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    * unions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    * aggregates (except for homogeneous ones which are handles as the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enclosed type).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   each entry starts a new slot.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  16 byte entities are naturally aligned on the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  There was no darwinpcs for GCC 9, so neither the implementation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  change nor the warning should fire here (i.e. we do not need to check
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if 16byte entities alter the stack size).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (arg.named == pcum->named_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!pcum->named_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || TREE_CODE (type) == COMPLEX_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || (TREE_CODE (type) == RECORD_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        && !is_ha && !SCALAR_FLOAT_MODE_P (pcum->aapcs_vfp_rmode))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || TREE_CODE (type) == UNION_TYPE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->aapcs_stack_words = size / UNITS_PER_WORD;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_sub_word_offset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_sub_word_pos = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_arg_boundary = MAX (align, PARM_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (!pcum->named_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Updated sub-word offset aligned for the new object.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   We are looking for the case that the new object will fit after some
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   existing object(s) in the same stack slot.  In that case, we do not
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   need to add any more stack space for it.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      int new_off
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  = ROUND_UP (pcum->darwinpcs_sub_word_pos, align / BITS_PER_UNIT);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (new_off >= UNITS_PER_WORD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* That exceeds a stack slot, start a new one.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_sub_word_offset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    pcum->darwinpcs_sub_word_pos = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    new_off = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* This is the end of the new object.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      int new_pos = new_off + pcum->darwinpcs_stack_bytes;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (pcum->darwinpcs_sub_word_pos == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* New stack slot, just allocate one or more words, and note where
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    the next arg will start.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->aapcs_stack_words = size / UNITS_PER_WORD;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (new_pos <= UNITS_PER_WORD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Old stack slot, object starts at new_off and goes to new_pos, we do
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     not add any stack space.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_sub_word_offset = new_off;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_sub_word_pos = new_pos;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_boundary = align;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (pcum->last_named_p && new_pos > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Round the last named arg to the start of the next stack slot.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (new_pos <= 4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else if (new_pos <= 6)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = 4 * BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else if (pcum->darwinpcs_sub_word_pos <= 7)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = 2 * BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* size was already rounded up to PARM_BOUNDARY.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->aapcs_stack_words = size / UNITS_PER_WORD;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (align == 16 * BITS_PER_UNIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       int new_size = ROUND_UP (pcum->aapcs_stack_size, 16 / UNITS_PER_WORD);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (pcum->aapcs_stack_size != new_size)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7592,7 +7737,28 @@ aarch64_init_cumulative_args (CUMULATIVE_ARGS *pcum,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pcum->aapcs_arg_processed = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pcum->aapcs_stack_words = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pcum->aapcs_stack_size = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_stack_bytes = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_sub_word_offset = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_sub_word_pos = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_arg_boundary = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_arg_padding = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* If we have been invoked for incoming args, then n_named will have been
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     set to -1, but we should have a function decl - so pick up the named
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     count from that.  If that fails, and we end up with -1, this effectively
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     corresponds to assuming that there is an arbitrary number of named
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     args.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_n_named = n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (n_named == (unsigned)-1 && fndecl)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tree fnt = TREE_TYPE (fndecl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (fnt && TYPE_ARG_TYPES (fnt))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_n_named = list_length (TYPE_ARG_TYPES (fnt));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->darwinpcs_n_args_processed = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->named_p = pcum->darwinpcs_n_named != 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->last_named_p = pcum->darwinpcs_n_named == 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   pcum->silent_p = silent_p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pcum->aapcs_vfp_rmode = VOIDmode;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!silent_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       && !TARGET_FLOAT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7631,8 +7797,10 @@ aarch64_function_arg_advance (cumulative_args_t pcum_v,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       || pcum->pcs_variant == ARM_PCS_SVE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       aarch64_layout_arg (pcum_v, arg);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      gcc_assert ((pcum->aapcs_reg != NULL_RTX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            != (pcum->aapcs_stack_words != 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_n_args_processed++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      gcc_assert (TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            || (pcum->aapcs_reg != NULL_RTX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                != (pcum->aapcs_stack_words != 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_arg_processed = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_ncrn = pcum->aapcs_nextncrn;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_nvrn = pcum->aapcs_nextnvrn;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7640,6 +7808,12 @@ aarch64_function_arg_advance (cumulative_args_t pcum_v,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_stack_size += pcum->aapcs_stack_words;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_stack_words = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       pcum->aapcs_reg = NULL_RTX;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_boundary = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->darwinpcs_arg_padding = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->named_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        = pcum->darwinpcs_n_args_processed < pcum->darwinpcs_n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      pcum->last_named_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        = pcum->darwinpcs_n_args_processed + 1 == pcum->darwinpcs_n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7650,12 +7824,15 @@ aarch64_function_arg_regno_p (unsigned regno)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     || (FP_REGNUM_P (regno) && regno < V0_REGNUM + NUM_FP_ARG_REGS));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* Implement FUNCTION_ARG_BOUNDARY.  Every parameter gets at least
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   PARM_BOUNDARY bits of alignment, but will be given anything up
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   to STACK_BOUNDARY bits if the type requires it.  This makes sure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   that both before and after the layout of each argument, the Next
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   Stacked Argument Address (NSAA) will have a minimum alignment of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   8 bytes.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Implement FUNCTION_ARG_BOUNDARY.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   For AAPCS64, Every parameter gets at least PARM_BOUNDARY bits of 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   alignment, but will be given anything up to STACK_BOUNDARY bits 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   if the type requires it.  This makes sure that both before and after
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the layout of each argument, the Next Stacked Argument Address (NSAA)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   will have a minimum alignment of 8 bytes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   For darwinpcs, this is only called to lower va_arg entries which are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   always aligned as for AAPCS64.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_function_arg_boundary (machine_mode mode, const_tree type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7663,6 +7840,71 @@ aarch64_function_arg_boundary (machine_mode mode, const_tree type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int abi_break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int alignment = aarch64_function_arg_alignment (mode, type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                      &abi_break);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* This can only work for unnamed args.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  machine_mode comp_mode = VOIDmode;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int nregs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool is_ha;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_vfp_is_call_or_return_candidate (mode, type, &comp_mode, &nregs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     &is_ha, /*silent*/true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TREE_CODE (type) == COMPLEX_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      || (TREE_CODE (type) == RECORD_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    && !is_ha && !SCALAR_FLOAT_MODE_P (comp_mode))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      || TREE_CODE (type) == UNION_TYPE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return MIN (MAX (alignment, PARM_BOUNDARY), STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return MIN (alignment, STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  alignment = MIN (MAX (alignment, PARM_BOUNDARY), STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (abi_break & warn_psabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      abi_break = MIN (MAX (abi_break, PARM_BOUNDARY), STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (alignment != abi_break && !TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  inform (input_location, "parameter passing for argument of type "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          "%qT changed in GCC 9.1", type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return alignment;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* For Darwin, we want to use the arg boundary computed when laying out the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   function arg, to cope with items packed on the stack and the different
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   rules applied to unnamed parms.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_function_arg_boundary_ca (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            const_tree type ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            cumulative_args_t ca ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned int abi_break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned int alignment = aarch64_function_arg_alignment (mode, type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                     &abi_break);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CUMULATIVE_ARGS *pcum = get_cumulative_args (ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (pcum->aapcs_arg_processed);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool named_p = pcum->darwinpcs_n_args_processed < pcum->darwinpcs_n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (named_p == pcum->named_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  machine_mode comp_mode = VOIDmode;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int nregs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool is_ha;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_vfp_is_call_or_return_candidate (mode, type, &comp_mode, &nregs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     &is_ha, /*silent*/true);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool no_pack = (TREE_CODE (type) == COMPLEX_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      || (TREE_CODE (type) == RECORD_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    && !is_ha && !SCALAR_FLOAT_MODE_P (comp_mode))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      || TREE_CODE (type) == UNION_TYPE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool in_regs = (pcum->aapcs_reg != NULL_RTX);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if ((named_p && !no_pack) || in_regs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ; /* Leave the alignment as natural.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    alignment = MAX (alignment, PARM_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (alignment == pcum->darwinpcs_arg_boundary);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return MIN (alignment, STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   alignment = MIN (MAX (alignment, PARM_BOUNDARY), STACK_BOUNDARY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (abi_break & warn_psabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7673,6 +7915,44 @@ aarch64_function_arg_boundary (machine_mode mode, const_tree type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return alignment;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Implement TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA for darwinpcs which allows
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   non-standard passing of byte-aligned items [D.2].  This is done by pulling
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the values out of the cumulative args struct.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_function_arg_round_boundary_ca (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  const_tree type ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  cumulative_args_t ca)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CUMULATIVE_ARGS *pcum = get_cumulative_args (ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (pcum->aapcs_arg_processed);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool named_p = pcum->darwinpcs_n_args_processed < pcum->darwinpcs_n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (named_p == pcum->named_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool last_named_p = pcum->darwinpcs_n_args_processed + 1 == pcum->darwinpcs_n_named;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (last_named_p == pcum->last_named_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned boundary = BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (last_named_p && pcum->darwinpcs_sub_word_pos > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Round the last named arg to the start of the next stack slot.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (pcum->darwinpcs_sub_word_pos <= 4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  boundary = PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (pcum->darwinpcs_sub_word_pos <= 6)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  boundary = 4 * BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (pcum->darwinpcs_sub_word_pos <= 7)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  boundary = 2 * BITS_PER_UNIT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else if (named_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Named args are naturally aligned, but with no rounding.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* un-named args are rounded to fill slots.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    boundary = PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gcc_checking_assert (boundary == pcum->darwinpcs_arg_padding);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return boundary;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement TARGET_GET_RAW_RESULT_MODE and TARGET_GET_RAW_ARG_MODE.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10848,6 +11128,7 @@ aarch64_classify_address (struct aarch64_address_info *info,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* load literal: pc-relative constant pool entry.  Only supported
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          for SI mode or larger.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       info->type = ADDRESS_SYMBOLIC;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      info->offset = NULL_RTX;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (!load_store_pair_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     && GET_MODE_SIZE (mode).is_constant (&const_size)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10855,6 +11136,7 @@ aarch64_classify_address (struct aarch64_address_info *info,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     poly_int64 offset;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rtx sym = strip_offset_and_salt (x, &offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return ((LABEL_REF_P (sym)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              || (SYMBOL_REF_P (sym)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  && CONSTANT_POOL_ADDRESS_P (sym)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10872,10 +11154,13 @@ aarch64_classify_address (struct aarch64_address_info *info,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     poly_int64 offset;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     HOST_WIDE_INT const_offset;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rtx sym = strip_offset_and_salt (info->offset, &offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (SYMBOL_REF_P (sym)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         && offset.is_constant (&const_offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         && (aarch64_classify_symbol (sym, const_offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            == SYMBOL_SMALL_ABSOLUTE))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              == SYMBOL_SMALL_ABSOLUTE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            || aarch64_classify_symbol (sym, const_offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                == SYMBOL_MO_SMALL_PCR))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         /* The symbol and offset must be aligned to the access size.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         unsigned int align;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10925,6 +11210,55 @@ aarch64_address_valid_for_prefetch_p (rtx x, bool strict_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!res)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* For ELF targets using GAS, we emit prfm unconditionally; GAS will alter
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     the instruction to pick the prfum form where possible (i.e. when the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     offset is in the range -256..255) and fall back to prfm otherwise.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     We can reject cases where the offset exceeds the range usable by both
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     insns [-256..32760], or for offsets > 255 when the value is not divisible
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     by 8.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     For Mach-O (Darwin) where the assembler uses the LLVM back end, that does
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     not yet do the substitution, so we must reject all prfum cases.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (addr.offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      HOST_WIDE_INT offs = INTVAL (addr.offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (offs < -256) /* Out of range for both prfum and prfm.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (offs > 32760) /* Out of range for prfm.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (offs & 0x07) /* We cannot use prfm.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (offs > 255) /* Out of range for prfum.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TARGET_MACHO && offs < 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* ... except writeback forms.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return addr.type != ADDRESS_REG_WB;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Return true if the address X is valid for a PRFUM instruction.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   STRICT_P is true if we should do strict checking with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   aarch64_classify_address.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_address_valid_for_unscaled_prefetch_p (rtx x, bool strict_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct aarch64_address_info addr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* PRFUM accepts the same addresses as DImode, but constrained to a range
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     -256..255.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool res = aarch64_classify_address (&addr, x, DImode, strict_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (!res)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (addr.offset && ((INTVAL (addr.offset) > 255)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 || (INTVAL (addr.offset) < -256)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* ... except writeback forms.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return addr.type != ADDRESS_REG_WB;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11609,6 +11943,144 @@ sizetochar (int size)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++output_macho_postfix_expr (FILE *file, rtx x, const char *postfix)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  char buf[256];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ restart:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  switch (GET_CODE (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case PC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      putc ('.', file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case SYMBOL_REF:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (SYMBOL_REF_DECL (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  assemble_external (SYMBOL_REF_DECL (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      assemble_name (file, XSTR (x, 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, "@%s", postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case LABEL_REF:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      x = label_ref_label (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Fall through.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CODE_LABEL:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ASM_GENERATE_INTERNAL_LABEL (buf, "L", CODE_LABEL_NUMBER (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      assemble_name (file, buf);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, "@%s", postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CONST_INT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, HOST_WIDE_INT_PRINT_DEC, INTVAL (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CONST:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* This used to output parentheses around the expression,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   but that does not work on the 386 (either ATT or BSD assembler).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_macho_postfix_expr (file, XEXP (x, 0), postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CONST_WIDE_INT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* We do not know the mode here so we have to use a round about
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   way to build a wide-int to get it printed properly.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  wide_int w = wide_int::from_array (&CONST_WIDE_INT_ELT (x, 0),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     CONST_WIDE_INT_NUNITS (x),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     CONST_WIDE_INT_NUNITS (x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     * HOST_BITS_PER_WIDE_INT,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                     false);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  print_decs (w, file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CONST_DOUBLE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (CONST_DOUBLE_AS_INT_P (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* We can use %d if the number is one word and positive.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (CONST_DOUBLE_HIGH (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, HOST_WIDE_INT_PRINT_DOUBLE_HEX,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               (unsigned HOST_WIDE_INT) CONST_DOUBLE_HIGH (x),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               (unsigned HOST_WIDE_INT) CONST_DOUBLE_LOW (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else if (CONST_DOUBLE_LOW (x) < 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, HOST_WIDE_INT_PRINT_HEX,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               (unsigned HOST_WIDE_INT) CONST_DOUBLE_LOW (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, HOST_WIDE_INT_PRINT_DEC, CONST_DOUBLE_LOW (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* We can't handle floating point constants;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     PRINT_OPERAND must handle them.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  output_operand_lossage ("floating constant misused");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case CONST_FIXED:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, HOST_WIDE_INT_PRINT_DEC, CONST_FIXED_VALUE_LOW (x));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case PLUS:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Some assemblers need integer constants to appear last (eg masm).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (CONST_INT_P (XEXP (x, 0)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (file, XEXP (x, 1), postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (INTVAL (XEXP (x, 0)) >= 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, "+");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_addr_const (file, XEXP (x, 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (file, XEXP (x, 0), postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (!CONST_INT_P (XEXP (x, 1))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        || INTVAL (XEXP (x, 1)) >= 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, "+");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_addr_const (file, XEXP (x, 1));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case MINUS:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Avoid outputting things like x-x or x+5-x,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   since some assemblers can't handle that.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      x = simplify_subtraction (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (GET_CODE (x) != MINUS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  goto restart;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_macho_postfix_expr (file, XEXP (x, 0), postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf (file, "-");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if ((CONST_INT_P (XEXP (x, 1)) && INTVAL (XEXP (x, 1)) >= 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || GET_CODE (XEXP (x, 1)) == PC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || GET_CODE (XEXP (x, 1)) == SYMBOL_REF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  output_addr_const (file, XEXP (x, 1));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fputs (targetm.asm_out.open_paren, file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_addr_const (file, XEXP (x, 1));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fputs (targetm.asm_out.close_paren, file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ZERO_EXTEND:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case SIGN_EXTEND:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case SUBREG:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case TRUNCATE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_addr_const (file, XEXP (x, 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case  UNSPEC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (XINT (x, 1) == UNSPEC_SALT_ADDR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (file, XVECEXP (x, 0, 0), postfix);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* FALLTHROUGH */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (targetm.asm_out.output_addr_const_extra (file, x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_operand_lossage ("invalid expression as operand");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Print operand X to file F in a target specific manner according to CODE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    The acceptable formatting commands given by CODE are:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      'c':         An integer or symbol address without a preceding #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11677,6 +12149,12 @@ aarch64_print_operand (FILE *f, rtx x, int code)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case 'K':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_macho_postfix_expr (f, x, "PAGEOFF");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case 'O':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      output_macho_postfix_expr (f, x, "GOTPAGEOFF");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case 'e':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   x = unwrap_const_vec_duplicate (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12000,7 +12478,7 @@ aarch64_print_operand (FILE *f, rtx x, int code)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case 'A':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (GET_CODE (x) == HIGH)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   x = XEXP (x, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       switch (aarch64_classify_symbolic_expression (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_GOT_4G:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12031,9 +12509,29 @@ aarch64_print_operand (FILE *f, rtx x, int code)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       output_addr_const (asm_out_file, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  // FIXME update classify symbolic expression to handle macho.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      switch (aarch64_classify_symbolic_expression (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case SYMBOL_MO_SMALL_PCR:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (asm_out_file, x, "PAGE");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//          asm_fprintf (asm_out_file, "@PAGE;mopcr");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case SYMBOL_MO_SMALL_GOT:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (asm_out_file, x, "GOTPAGE");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//          asm_fprintf (asm_out_file, "@GOTPAGE;mosg");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    output_macho_postfix_expr (asm_out_file, x, "BLEAH");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//          asm_fprintf (asm_out_file, "@BLEAH");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case 'L':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       switch (aarch64_classify_symbolic_expression (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_SMALL_GOT_4G:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12071,10 +12569,12 @@ aarch64_print_operand (FILE *f, rtx x, int code)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       output_addr_const (asm_out_file, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case 'G':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       switch (aarch64_classify_symbolic_expression (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case SYMBOL_TLSLE24:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12083,6 +12583,7 @@ aarch64_print_operand (FILE *f, rtx x, int code)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       output_addr_const (asm_out_file, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12232,8 +12733,14 @@ aarch64_print_address_internal (FILE *f, machine_mode mode, rtx x,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       case ADDRESS_LO_SUM:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  asm_fprintf (f, "[%s, #", reg_names [REGNO (addr.base)]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  output_macho_postfix_expr (f, addr.offset, "PAGEOFF");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//        output_addr_const (f, addr.offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   asm_fprintf (f, "[%s, #:lo12:", reg_names [REGNO (addr.base)]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   output_addr_const (f, addr.offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   asm_fprintf (f, "]");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12703,6 +13210,8 @@ aarch64_asm_output_labelref (FILE* f, const char *name)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   asm_fprintf (f, "%U%s", name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_elf_asm_constructor (rtx symbol, int priority)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12742,6 +13251,7 @@ aarch64_elf_asm_destructor (rtx symbol, int priority)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       assemble_aligned_integer (POINTER_BYTES, symbol);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const char*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_output_casesi (rtx *operands)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15048,15 +15558,17 @@ aarch64_init_builtins ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_general_init_builtins ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_sve::init_builtins ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef SUBTARGET_INIT_BUILTINS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  SUBTARGET_INIT_BUILTINS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64_init_subtarget_builtins ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement TARGET_FOLD_BUILTIN.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static tree
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_fold_builtin (tree fndecl, int nargs, tree *args, bool)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef SUBTARGET_FOLD_BUILTIN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tree res = SUBTARGET_FOLD_BUILTIN (fndecl, nargs, args, false))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return res;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int code = DECL_MD_FUNCTION_CODE (fndecl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned int subcode = code >> AARCH64_BUILTIN_SHIFT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tree type = TREE_TYPE (TREE_TYPE (fndecl));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18330,10 +18842,14 @@ initialize_aarch64_code_model (struct gcc_options *opts)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case AARCH64_CMODEL_LARGE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (opts->x_flag_pic)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* We need to implement fPIC here (arm64_32 also accepts the large
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     model).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (opts->x_flag_pic)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sorry ("code model %qs with %<-f%s%>", "large",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+          opts->x_flag_pic > 1 ? "PIC" : "pic");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (opts->x_aarch64_abi == AARCH64_ABI_ILP32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (opts->x_aarch64_abi == AARCH64_ABI_ILP32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sorry ("code model %qs not supported in ilp32 mode", "large");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case AARCH64_CMODEL_TINY_PIC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19256,7 +19772,9 @@ aarch64_classify_symbol (rtx x, HOST_WIDE_INT offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL_SPIC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL_PIC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return SYMBOL_SMALL_ABSOLUTE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           ? SYMBOL_MO_SMALL_PCR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           : SYMBOL_SMALL_ABSOLUTE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     gcc_unreachable ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19292,10 +19810,22 @@ aarch64_classify_symbol (rtx x, HOST_WIDE_INT offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return SYMBOL_TINY_ABSOLUTE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL_SPIC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL_PIC:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_SMALL:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* Constant pool addresses are always TU-local and PC-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           relative.  We indirect common, external and weak
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           symbols (but weak only if not hidden).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if (!CONSTANT_POOL_ADDRESS_P (x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            && (MACHO_SYMBOL_MUST_INDIRECT_P (x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                || !aarch64_symbol_binds_local_p (x)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          return SYMBOL_MO_SMALL_GOT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if ((flag_pic || SYMBOL_REF_WEAK (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         && !aarch64_symbol_binds_local_p (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return aarch64_cmodel == AARCH64_CMODEL_SMALL_SPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19307,7 +19837,8 @@ aarch64_classify_symbol (rtx x, HOST_WIDE_INT offset)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           || offset_within_block_p (x, offset)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return SYMBOL_FORCE_TO_MEM;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return SYMBOL_SMALL_ABSOLUTE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return TARGET_MACHO ? SYMBOL_MO_SMALL_PCR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                        : SYMBOL_SMALL_ABSOLUTE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case AARCH64_CMODEL_LARGE:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* This is alright even in PIC code as the constant
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19437,7 +19968,10 @@ static GTY(()) tree va_list_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      void *__vr_top;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      int   __gr_offs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      int   __vr_offs;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   };  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  darwinpcs uses 'char *' for the va_list (in common with other platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ports).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static tree
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_build_builtin_va_list (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19445,6 +19979,13 @@ aarch64_build_builtin_va_list (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tree va_list_name;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tree f_stack, f_grtop, f_vrtop, f_groff, f_vroff;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* darwinpcs uses a simple char * for this.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      va_list_type = build_pointer_type (char_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return va_list_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Create the type.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   va_list_type = lang_hooks.types.make_type (RECORD_TYPE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Give it the required name.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19516,6 +20057,13 @@ aarch64_expand_builtin_va_start (tree valist, rtx nextarg ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int vr_save_area_size = cfun->va_list_fpr_size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int vr_offset;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* darwinpcs uses the default, char * va_list impl.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      std_expand_builtin_va_start (valist, nextarg);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cum = &crtl->args.info;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (cfun->va_list_gpr_size)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     gr_save_area_size = MIN ((NUM_ARG_REGS - cum->aapcs_ncrn) * UNITS_PER_WORD,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19606,6 +20154,9 @@ aarch64_gimplify_va_arg_expr (tree valist, tree type, gimple_seq *pre_p,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   HOST_WIDE_INT size, rsize, adjust, align;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tree t, u, cond1, cond2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return std_gimplify_va_arg_expr (valist, type, pre_p, post_p);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   indirect_p = pass_va_arg_by_reference (type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (indirect_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     type = build_pointer_type (type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19790,8 +20341,18 @@ aarch64_gimplify_va_arg_expr (tree valist, tree type, gimple_seq *pre_p,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     field_ptr_t = double_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case E_TFmode:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    field_t = long_double_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    field_ptr_t = long_double_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* Darwin has __float128, and long double is the same as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           double.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        field_t = float128_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        field_ptr_t = aarch64_float128_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        field_t = long_double_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        field_ptr_t = long_double_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case E_HFmode:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     field_t = aarch64_fp16_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19862,6 +20423,9 @@ aarch64_setup_incoming_varargs (cumulative_args_t cum_v,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int gr_saved = cfun->va_list_gpr_size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int vr_saved = cfun->va_list_fpr_size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return default_setup_incoming_varargs (cum_v, arg, pretend_size, no_rtl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* The caller has advanced CUM up to, but not beyond, the last named
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      argument.  Advance a local copy of CUM past the last "real" named
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      argument, to find out how many registers are left over.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20689,6 +21253,12 @@ aarch64_autovectorize_vector_modes (vector_modes *modes, bool)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_mangle_type (const_tree type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* The darwinpcs ABI documents say that "__va_list" has to be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     mangled as char *.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      && lang_hooks.types_compatible_p (CONST_CAST_TREE (type), va_list_type))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return "Pc";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* The AArch64 ABI documents say that "__va_list" has to be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      mangled as if it is in the "std" namespace.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (lang_hooks.types_compatible_p (CONST_CAST_TREE (type), va_list_type))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20703,6 +21273,10 @@ aarch64_mangle_type (const_tree type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return "Dh";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* TFmode is __float128 for Darwin. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO && TYPE_MODE (type) == TFmode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return "g";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Mangle AArch64-specific internal types.  TYPE_NAME is non-NULL_TREE for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      builtin types.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (TYPE_NAME (type) != NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -21393,7 +21967,8 @@ aarch64_mov_operand_p (rtx x, machine_mode mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* GOT accesses are valid moves.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (SYMBOL_REF_P (x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      && aarch64_classify_symbolic_expression (x) == SYMBOL_SMALL_GOT_4G)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      && (aarch64_classify_symbolic_expression (x) == SYMBOL_SMALL_GOT_4G
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    || aarch64_classify_symbolic_expression (x) == SYMBOL_MO_SMALL_GOT))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (SYMBOL_REF_P (x) && mode == DImode && CONSTANT_ADDRESS_P (x))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22553,7 +23128,9 @@ aarch64_declare_function_name (FILE *stream, const char* name,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_asm_output_variant_pcs (stream, fndecl, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Don't forget the type directive for ELF.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_OUTPUT_TYPE_DIRECTIVE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ASM_OUTPUT_TYPE_DIRECTIVE (stream, name, "function");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ASM_OUTPUT_LABEL (stream, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfun->machine->label_is_assembled = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22588,12 +23165,17 @@ aarch64_print_patchable_function_entry (FILE *file,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement ASM_OUTPUT_DEF_FROM_DECLS.  Output .variant_pcs for aliases.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-aarch64_asm_output_alias (FILE *stream, const tree decl, const tree target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64_asm_output_alias (FILE *stream, const tree decl,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    const tree target ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *name = XSTR (XEXP (DECL_RTL (decl), 0), 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_OUTPUT_DEF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *value = IDENTIFIER_POINTER (target);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aarch64_asm_output_variant_pcs (stream, decl, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_OUTPUT_DEF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ASM_OUTPUT_DEF (stream, name, value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement ASM_OUTPUT_EXTERNAL.  Output .variant_pcs for undefined
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23211,6 +23793,16 @@ aarch64_output_simd_mov_immediate (rtx const_vector, unsigned width,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gcc_assert (CONST_INT_P (info.u.mov.value));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned HOST_WIDE_INT value = UINTVAL (info.u.mov.value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* We have signed chars which can result in a sign-extended 8bit value
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     which is then emitted as an unsigned hex value, and the LLVM back end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     assembler rejects that as being too big.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO && (known_eq (GET_MODE_BITSIZE (info.elt_mode), 8)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      unsigned HOST_WIDE_INT mask = (1U << GET_MODE_BITSIZE (info.elt_mode))-1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      value &= mask;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (which == AARCH64_CHECK_MOV)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23219,16 +23811,16 @@ aarch64_output_simd_mov_immediate (rtx const_vector, unsigned width,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             ? "msl" : "lsl");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (lane_count == 1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   snprintf (templ, sizeof (templ), "%s\t%%d0, " HOST_WIDE_INT_PRINT_HEX,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            mnemonic, UINTVAL (info.u.mov.value));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            mnemonic, value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else if (info.u.mov.shift)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   snprintf (templ, sizeof (templ), "%s\t%%0.%d%c, "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             HOST_WIDE_INT_PRINT_HEX ", %s %d", mnemonic, lane_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            element_char, UINTVAL (info.u.mov.value), shift_op,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            element_char, value, shift_op,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             info.u.mov.shift);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   snprintf (templ, sizeof (templ), "%s\t%%0.%d%c, "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             HOST_WIDE_INT_PRINT_HEX, mnemonic, lane_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            element_char, UINTVAL (info.u.mov.value));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            element_char, value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23237,12 +23829,12 @@ aarch64_output_simd_mov_immediate (rtx const_vector, unsigned width,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (info.u.mov.shift)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   snprintf (templ, sizeof (templ), "%s\t%%0.%d%c, #"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             HOST_WIDE_INT_PRINT_DEC ", %s #%d", mnemonic, lane_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            element_char, UINTVAL (info.u.mov.value), "lsl",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            element_char, value, "lsl",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             info.u.mov.shift);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   snprintf (templ, sizeof (templ), "%s\t%%0.%d%c, #"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             HOST_WIDE_INT_PRINT_DEC, mnemonic, lane_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            element_char, UINTVAL (info.u.mov.value));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            element_char, value);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return templ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26353,12 +26945,12 @@ aarch64_libgcc_floating_mode_supported_p (scalar_float_mode mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Implement TARGET_SCALAR_MODE_SUPPORTED_P - return TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   if MODE is HFmode, and punt to the generic implementation otherwise.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   if MODE is HFmode, or TFmode on Mach-O, and punt to the generic implementation otherwise.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64_scalar_mode_supported_p (scalar_mode mode)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  return (mode == HFmode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return (mode == HFmode || (mode == TFmode && TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ? true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     : default_scalar_mode_supported_p (mode));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27116,19 +27708,37 @@ aarch64_sls_emit_shared_blr_thunks (FILE *out_file)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   continue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       const char *name = indirect_symbol_names[regnum];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      switch_to_section (get_named_section (decl, NULL, 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* If the target uses a unique section for this switch to it.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (DECL_SECTION_NAME (decl))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  switch_to_section (get_named_section (decl, NULL, 0));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  switch_to_section (text_section);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ASM_OUTPUT_ALIGN (out_file, 2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      targetm.asm_out.globalize_label (out_file, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  targetm.asm_out.globalize_label (out_file, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_OUTPUT_TYPE_DIRECTIVE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ASM_OUTPUT_TYPE_DIRECTIVE (out_file, name, "function");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_WEAKEN_DECL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (DECL_WEAK (decl))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ASM_WEAKEN_DECL (out_file, decl, name, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      targetm.asm_out.globalize_decl_name (out_file, decl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* Only emits if the compiler is configured for an assembler that can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    handle visibility directives.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       targetm.asm_out.assemble_visibility (decl, VISIBILITY_HIDDEN);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      ASM_OUTPUT_TYPE_DIRECTIVE (out_file, name, "function");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ASM_OUTPUT_LABEL (out_file, name);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       aarch64_sls_emit_function_stub (out_file, regnum);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* Use the most conservative target to ensure it can always be used by any
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    function in the translation unit.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       asm_fprintf (out_file, "\tdsb\tsy\n\tisb\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef ASM_DECLARE_FUNCTION_SIZE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ASM_DECLARE_FUNCTION_SIZE (out_file, name, decl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27321,6 +27931,15 @@ aarch64_run_selftests (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_ASM_ALIGNED_SI_OP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_ASM_ALIGNED_SI_OP "\t.word\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_UNALIGNED_HI_OP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_UNALIGNED_HI_OP "\t.short\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_UNALIGNED_SI_OP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_UNALIGNED_SI_OP "\t.long\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_UNALIGNED_DI_OP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_UNALIGNED_DI_OP "\t.quad\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_ASM_CAN_OUTPUT_MI_THUNK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_ASM_CAN_OUTPUT_MI_THUNK \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hook_bool_const_tree_hwi_hwi_const_tree_true
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27407,6 +28026,12 @@ aarch64_run_selftests (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_FUNCTION_ARG_BOUNDARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_FUNCTION_ARG_BOUNDARY aarch64_function_arg_boundary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_FUNCTION_ARG_BOUNDARY_CA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_FUNCTION_ARG_BOUNDARY_CA aarch64_function_arg_boundary_ca
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef  TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA aarch64_function_arg_round_boundary_ca
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_FUNCTION_ARG_PADDING
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_FUNCTION_ARG_PADDING aarch64_function_arg_padding
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27734,7 +28359,7 @@ aarch64_libgcc_floating_mode_supported_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* The architecture reserves bits 0 and 1 so use bit 2 for descriptors.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_CUSTOM_FUNCTION_DESCRIPTORS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define TARGET_CUSTOM_FUNCTION_DESCRIPTORS 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_CUSTOM_FUNCTION_DESCRIPTORS AARCH64_CUSTOM_FUNCTION_TEST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_HARD_REGNO_NREGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_HARD_REGNO_NREGS aarch64_hard_regno_nregs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 359b6e8561f..db5fe441b36 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,6 +58,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_SIMD (!TARGET_GENERAL_REGS_ONLY && AARCH64_ISA_SIMD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_FLOAT (!TARGET_GENERAL_REGS_ONLY && AARCH64_ISA_FP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* If this is non-zero then generated code of the object format, ABI and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   assembler syntax used by Darwin (Mach-O) platforms.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_MACHO              0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define UNITS_PER_WORD            8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define UNITS_PER_VREG            16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -135,6 +139,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Heap alignment (same as BIGGEST_ALIGNMENT and STACK_BOUNDARY).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define MALLOC_ABI_ALIGNMENT  128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We will and with this value to test if a custom function descriptor needs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   a static chain.  The function boundary must the adjusted so that the bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   this represents is no longer part of the address.  0 Disables the custom
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   function descriptors.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define AARCH64_CUSTOM_FUNCTION_TEST 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Defined by the ABI */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define WCHAR_TYPE "unsigned int"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define WCHAR_TYPE_SIZE                   32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1025,6 +1035,24 @@ typedef struct
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              aapcs_reg == NULL_RTX.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int aapcs_stack_size;           /* The total size (in words, per 8 byte) of the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              stack arg area so far.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* In the darwinpcs, items smaller than one word are packed onto the stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     naturally aligned.  Unnamed parameters passed in a variadic call are,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     however, aligned the same way as the AAPCS64.  This means that we need to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     pad the last named arg to the next parm boundary (and hence notice when
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     we are processing that arg).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int darwinpcs_stack_bytes;      /* If the argument is passed on the stack, this
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                             the byte-size.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int darwinpcs_sub_word_offset;/* This is the offset of this arg within a word
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                             when placing smaller items for darwinpcs.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int darwinpcs_sub_word_pos;     /* The next byte available within the word for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                             darwinpcs.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned darwinpcs_arg_boundary; /* The computed argument boundary.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned darwinpcs_arg_padding; /* The computed argument padding.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned darwinpcs_n_named;     /* Number of named arguments.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned darwinpcs_n_args_processed; /* Processed so far.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool named_p;                   /* Is this arg named? */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool last_named_p;              /* Is this the last named arg? */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool silent_p;          /* True if we should act silently, rather than
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                              raise an error for invalid calls.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } CUMULATIVE_ARGS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1309,8 +1337,13 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ASM_CPU_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    MCPU_TO_MARCH_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef SUBTARGET_EXTRA_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_EXTRA_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define EXTRA_SPECS                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  { "asm_cpu_spec",             ASM_CPU_SPEC }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "asm_cpu_spec",             ASM_CPU_SPEC },                 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SUBTARGET_EXTRA_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ASM_OUTPUT_POOL_EPILOGUE  aarch64_asm_output_pool_epilogue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1324,6 +1357,10 @@ extern GTY(()) tree aarch64_fp16_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern GTY(()) tree aarch64_bf16_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern GTY(()) tree aarch64_bf16_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* A pointer to the user-visible __float128 (on Mach-O).  Defined in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   aarch64-builtins.c.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern GTY(()) tree aarch64_float128_ptr_type_node;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* The generic unwind code in libgcc does not initialize the frame pointer.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    So in order to unwind a function using a frame pointer, the very first
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    function that is unwound must save the frame pointer.  That way the frame
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f5c635938ad..dc0ec3e6389 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -303,6 +303,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UNSPEC_TAG_SPACE              ; Translate address to MTE tag address space.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UNSPEC_LD1RO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     UNSPEC_SALT_ADDR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    UNSPEC_MACHOPIC_OFFSET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_c_enum "unspecv" [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -849,6 +850,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [(set_attr "type" "load_4")]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(define_insn "prefetch_unscaled"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [(prefetch (match_operand:DI 0 "aarch64_unscaled_prefetch_operand" "Du")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            (match_operand:QI 1 "const_int_operand" "")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            (match_operand:QI 2 "const_int_operand" ""))]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const char * pftype[2][4] =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {"prfum\\tPLDL1STRM, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPLDL3KEEP, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPLDL2KEEP, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPLDL1KEEP, %0"},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {"prfum\\tPSTL1STRM, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPSTL3KEEP, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPSTL2KEEP, %0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "prfum\\tPSTL1KEEP, %0"},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    int locality = INTVAL (operands[2]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gcc_assert (IN_RANGE (locality, 0, 3));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* PRFUM accepts the same addresses as a 64-bit LDR so wrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       the address into a DImode MEM so that aarch64_print_operand knows
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       how to print it.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    operands[0] = gen_rtx_MEM (DImode, operands[0]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return pftype[INTVAL(operands[1])][locality];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [(set_attr "type" "load_4")]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_insn "trap"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [(trap_if (const_int 1) (const_int 8))]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1286,7 +1318,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ldr\\t%s0, %1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    str\\t%w1, %0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    str\\t%s1, %0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   adrp\\t%x0, %A1\;ldr\\t%w0, [%x0, %L1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   * return TARGET_MACHO ? \"adrp\\t%x0, %A1\;ldr\\t%w0, [%x0, %O1]\" : \"adrp\\t%x0, %A1\;ldr\\t%w0, [%x0, %L1]\";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    adr\\t%x0, %c1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    adrp\\t%x0, %A1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    fmov\\t%s0, %w1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1325,7 +1357,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ldr\\t%d0, %1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    str\\t%x1, %0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    str\\t%d1, %0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   * return TARGET_ILP32 ? \"adrp\\t%0, %A1\;ldr\\t%w0, [%0, %L1]\" : \"adrp\\t%0, %A1\;ldr\\t%0, [%0, %L1]\";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   * return TARGET_ILP32 ? (TARGET_MACHO ? \"adrp\\t%0, %A1\;ldr\\t%w0, [%0, %O1]\" : \"adrp\\t%0, %A1\;ldr\\t%w0, [%0, %L1]\") : (TARGET_MACHO ? \"adrp\\t%0, %A1\;ldr\\t%0, [%0, %O1]\" : \"adrp\\t%0, %A1\;ldr\\t%0, [%0, %L1]\");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    adr\\t%x0, %c1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    adrp\\t%x0, %A1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    fmov\\t%d0, %x1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6850,7 +6882,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (lo_sum:P (match_operand:P 1 "register_operand" "r")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             (match_operand 2 "aarch64_valid_symref" "S")))]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  "add\\t%<w>0, %<w>1, :lo12:%c2"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { return TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ? "add\\t%<w>0, %<w>1, %K2;momd"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : "add\\t%<w>0, %<w>1, :lo12:%c2";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [(set_attr "type" "alu_imm")]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 92220b26ee2..15ec719ca2d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/aarch64.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/aarch64.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -152,6 +152,13 @@ Enum(aarch64_abi) String(ilp32) Value(AARCH64_ABI_ILP32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ EnumValue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Enum(aarch64_abi) String(lp64) Value(AARCH64_ABI_LP64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++EnumValue
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Enum(aarch64_abi) String(darwinpcs) Value(AARCH64_ABI_LP64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++m64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Target RejectNegative Alias(mabi=, darwinpcs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++On Darwin for compatibility with other platform variants.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ mpc-relative-literal-loads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Target Save Var(pcrelative_literal_loads) Init(2) Save
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PC relative literal loads.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/constraints.md b/gcc/config/aarch64/constraints.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ee7587cca16..cb73a2daae8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/constraints.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/constraints.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -158,7 +158,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    A constraint that matches a small GOT access."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (and (match_code "const,symbol_ref")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        (match_test "aarch64_classify_symbolic_expression (op)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-               == SYMBOL_SMALL_GOT_4G")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               == SYMBOL_SMALL_GOT_4G
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              || aarch64_classify_symbolic_expression (op)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               == SYMBOL_MO_SMALL_GOT")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_constraint "Uss"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "@internal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -490,6 +492,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  An address valid for a prefetch instruction."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  (match_test "aarch64_address_valid_for_prefetch_p (op, true)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(define_address_constraint "Du"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "@internal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ An address valid for a prefetch instruction with an unscaled offset."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ (match_test "aarch64_address_valid_for_unscaled_prefetch_p (op, true)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_constraint "vgb"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "@internal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    A constraint that matches an immediate offset valid for SVE LD1B
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/darwin.h b/gcc/config/aarch64/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..2a855c11efa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,280 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Target definitions for Arm64/Aarch64 running on macOS/iOS.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Copyright The GNU Toolchain Authors.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Contributed by Iain Sandoe.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++This file is part of GCC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++GCC is free software; you can redistribute it and/or modify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++it under the terms of the GNU General Public License as published by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++the Free Software Foundation; either version 3, or (at your option)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++GCC is distributed in the hope that it will be useful,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++but WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++GNU General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++You should have received a copy of the GNU General Public License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++<http://www.gnu.org/licenses/>.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Enable Mach-O bits in generic Aarch64 code.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_MACHO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_MACHO 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_ARM64 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* FIXME FIXME FIXME - these are mostly guesses right now.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* FIXME: this is only used in generic code in darwin.c.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_64BIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_64BIT 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef  PTRDIFF_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define PTRDIFF_TYPE "long int"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* NOTE that arm64_32 is a valid thing and corresponds to darwinpcs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   and TARGET_ILP32, but we are not implementing that for now.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_OS_CPP_BUILTINS()          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  do {                                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    builtin_define ("__LITTLE_ENDIAN__");       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    builtin_define ("__arm64");                 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    builtin_define ("__arm64__");               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    darwin_cpp_builtins (pfile);          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } while (0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* In Darwin's arm64 ABI, chars are signed, for consistency with other Darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   architectures.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DEFAULT_SIGNED_CHAR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DEFAULT_SIGNED_CHAR 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef LONG_DOUBLE_TYPE_SIZE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define LONG_DOUBLE_TYPE_SIZE     64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Disable custom function descriptors on Darwin, it breaks ABI.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef AARCH64_CUSTOM_FUNCTION_TEST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define AARCH64_CUSTOM_FUNCTION_TEST 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Non-PIE executables are forbidden by the aarch64-darwin security model;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   remove the option from link-lines since they just produce a warning from
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   ld64 and are then ignored anyway.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DARWIN_NOPIE_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_NOPIE_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++" %<no-pie %<fno-pie %<fno-PIE "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Hack alert - we want the exported cas etc.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef LIB_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define LIB_SPEC "%{!static:-lSystem} -lgcc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Force the default endianness and ABI flags onto the command line
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   in order to make the other specs easier to write.  Match clang in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   silently ignoring mdynamic-no-pic */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DRIVER_SELF_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DRIVER_SELF_SPECS \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{mbig-endian:%eDarwin platforms do not support big-endian arm64}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{!mlittle-endian:-mlittle-endian} " \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{mabi=ilp32:%eSorry, support for Darwin ilp32 arm64 is not implemented} " \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{!mabi=*:-mabi=lp64} " \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++" %<mdynamic-no-pic* " \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  MCPU_MTUNE_NATIVE_SPECS \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SUBTARGET_DRIVER_SELF_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We want -fPIC by default, unless we're using -static to compile for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the kernel or some such.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef CC1_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define CC1_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{!mkernel:%{!static:-fPIC}} " DARWIN_CC1_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef ASM_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_SPEC "-arch %(darwin_arch) "\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ASM_OPTIONS " %{static} " ASM_MMACOSX_VERSION_MIN_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef ENDFILE_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ENDFILE_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  " " TM_DESTRUCTOR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* The arch is known as 'arm64' by the system tools.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_ARCH_SPEC "arm64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef SUBTARGET_EXTRA_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_EXTRA_SPECS                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  DARWIN_EXTRA_SPECS                                              \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "darwin_arch", DARWIN_ARCH_SPEC },                          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "darwin_crt2", "" },                                      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "darwin_subarch", DARWIN_ARCH_SPEC },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_FILE_END
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_FILE_END darwin_file_end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* For now, we do not give global entities any extra alignment
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   TODO: determine if we should for some optimisation level.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DATA_ALIGNMENT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DATA_ALIGNMENT(EXP, ALIGN)                        \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AARCH64_EXPAND_ALIGNMENT (false, EXP, ALIGN)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Darwin binds locally for PIC code (the default) without which
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   we lose many in-lineing opportunities.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_BINDS_LOCAL_P
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_BINDS_LOCAL_P darwin_binds_local_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define the syntax of pseudo-ops, labels and comments.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_GAS_MAX_SKIP_P2ALIGN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Support for -falign-* switches.  Use .p2align to ensure that code
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   sections are padded with NOP instructions, rather than zeros.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE, LOG, MAX_SKIP)            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  do                                                              \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {                                                             \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if ((LOG) != 0)                                             \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {                                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if ((MAX_SKIP) == 0)                                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf ((FILE), "\t.p2align %d\n", (int) (LOG)); \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else                                                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fprintf ((FILE), "\t.p2align %d,,%d\n",           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               (int) (LOG), (int) (MAX_SKIP));            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }                                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } while (0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* HAVE_GAS_MAX_SKIP_P2ALIGN */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* String containing the assembler's comment-starter.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_COMMENT_START ";"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define the syntax of pseudo-ops, labels and comments.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define LPREFIX "L"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Assembler pseudos to introduce constants of various size.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_BYTE "\t.byte\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_SHORT "\t.word\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_LONG "\t.long\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_QUAD "\t.quad\t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* darwinpcs reserves X18.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef FIXED_REGISTERS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define FIXED_REGISTERS                                   \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {                                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,     /* R0 - R7 */           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,     /* R8 - R15 */          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 1, 0,   0, 0, 0, 0,     /* R16 - R23 */         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 1, 0, 1,     /* R24 - R30, SP */     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* V0 - V7 */           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* V8 - V15 */            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* V16 - V23 */         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* V24 - V31 */         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    1, 1, 1, 1,                   /* SFP, AP, CC, VG */   \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* P0 - P7 */           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    0, 0, 0, 0,   0, 0, 0, 0,   /* P8 - P15 */          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    1, 1                  /* FFR and FFRT */      \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Although we cannot use executable stack, we still need to assign
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   a static chain regnum.  At the moment using R16 (IP0) is available.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef STATIC_CHAIN_REGNUM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define STATIC_CHAIN_REGNUM       R16_REGNUM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_ENCODE_SECTION_INFO  darwin_encode_section_info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX(FILE, ENCODING, SIZE, ADDR, DONE) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_64BIT)                                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {                                                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if ((SIZE) == 4 && ((ENCODING) & 0x70) == DW_EH_PE_pcrel)               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {                                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fputs (ASM_LONG, FILE);                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    assemble_name (FILE, XSTR (ADDR, 0));                         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fputs ("@GOT-.", FILE);                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    goto DONE;                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }                                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }                                                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else                                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {                                                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (ENCODING == ASM_PREFERRED_EH_DATA_FORMAT (2, 1))                \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {                                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gcc_unreachable (); /* no 32b support yet.*/                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /*darwin_non_lazy_pcrel (FILE, ADDR);*/                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    goto DONE;                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }                                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Darwin x86 assemblers support the .ident directive.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_OUTPUT_IDENT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_OUTPUT_IDENT default_asm_output_ident_directive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Darwin has experimental support for section anchors on aarch64*; it is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   not enabled by default (the -fsection-anchors is required).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_ASM_OUTPUT_ANCHOR 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_ASM_OUTPUT_ANCHOR darwin_asm_output_anchor
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_USE_ANCHORS_FOR_SYMBOL_P
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_USE_ANCHORS_FOR_SYMBOL_P darwin_use_anchors_for_symbol_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef DARWIN_SECTION_ANCHORS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_SECTION_ANCHORS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Pull in the stuff common to all Darwin-based platforms.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define C_COMMON_OVERRIDE_OPTIONS                         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  do {                                                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    SUBTARGET_C_COMMON_OVERRIDE_OPTIONS;                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } while (0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We do not have a definition for a tiny (or large) code model so
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   far.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   Section anchors are (probably) not useful with ld64 atom model so
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   default them off - this can be overridden by the user at present.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   mdynamic-no-pic is silently ignored by clang (and not applicable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   to this port).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef SUBTARGET_OVERRIDE_OPTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_OVERRIDE_OPTIONS                                        \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  do {                                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (global_options.x_aarch64_cmodel_var == AARCH64_CMODEL_TINY)       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      sorry ("code model %qs is not supported on Darwin platforms",     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       "tiny");                                                 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (!global_options_set.x_flag_section_anchors)                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      flag_section_anchors = 0;                                           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    target_flags &= ~MASK_MACHO_DYNAMIC_NO_PIC;                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } while (0);                                                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  SUBSUBTARGET_OVERRIDE_OPTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef  SUBTARGET_INIT_BUILTINS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_INIT_BUILTINS                                           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  do {                                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    aarch64_builtin_decls[AARCH64_BUILTIN_CFSTRING]                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      = darwin_init_cfstring_builtins ((AARCH64_BUILTIN_CFSTRING << AARCH64_BUILTIN_SHIFT) | AARCH64_BUILTIN_GENERAL); \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } while(0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Darwin on Arm64 uses dwarf-2.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef DARWIN_PREFER_DWARF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# undef PREFERRED_DEBUGGING_TYPE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef REGISTER_SUBTARGET_PRAGMAS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define REGISTER_SUBTARGET_PRAGMAS() DARWIN_REGISTER_TARGET_PRAGMAS()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef TARGET_SET_DEFAULT_TYPE_ATTRIBUTES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_SET_DEFAULT_TYPE_ATTRIBUTES darwin_set_default_type_attributes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* FIXME:  CHECK Define the shadow offset for asan.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef SUBTARGET_SHADOW_OFFSET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SUBTARGET_SHADOW_OFFSET (HOST_WIDE_INT_1 << 44)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* First available SYMBOL flag bit for use by subtargets.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define SYMBOL_FLAG_SUBT_DEP (SYMBOL_FLAG_MACH_DEP)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef ASM_OUTPUT_DEF_FROM_DECLS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef CLEAR_INSN_CACHE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define CLEAR_INSN_CACHE(beg, end)                                \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extern void sys_icache_invalidate(void *start, size_t len);     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  sys_icache_invalidate ((beg), (size_t)((end)-(beg)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/falkor-tag-collision-avoidance.cc b/gcc/config/aarch64/falkor-tag-collision-avoidance.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5f198290568..610838049e5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/falkor-tag-collision-avoidance.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/falkor-tag-collision-avoidance.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -740,7 +740,7 @@ dump_insn_list (const rtx &t, const insn_info_list_t &insn_info,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           void *unused ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gcc_assert (dump_file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  fprintf (dump_file, "Tag 0x%lx ::\n", INTVAL (t));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fprintf (dump_file, "Tag 0x%lx ::\n", (long unsigned int)INTVAL (t));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for (unsigned i = 0; i < insn_info.length (); i++)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     dump_insn_slim (dump_file, insn_info[i]->insn);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/predicates.md b/gcc/config/aarch64/predicates.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c308015ac2c..cd88f93ca2d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/aarch64/predicates.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/predicates.md
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -261,9 +261,24 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_predicate "aarch64_prefetch_operand"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (match_test "aarch64_address_valid_for_prefetch_p (op, false)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(define_predicate "aarch64_unscaled_prefetch_operand"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (match_test "aarch64_address_valid_for_unscaled_prefetch_p (op, false)"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (define_predicate "aarch64_valid_symref"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (match_code "const, symbol_ref, label_ref")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (TARGET_MACHO)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      rtx x = op;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      rtx offset;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      split_const (x, &x, &offset);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (GET_CODE (x) == CONST)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x = XEXP (x, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (GET_CODE (x) == UNSPEC && XINT (x, 1) == UNSPEC_SALT_ADDR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x = XVECEXP (x, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (SYMBOL_REF_P (x) && INTVAL (offset) < 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return (aarch64_classify_symbolic_expression (op)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     != SYMBOL_FORCE_TO_MEM);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ })
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/aarch64/t-aarch64-darwin b/gcc/config/aarch64/t-aarch64-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..a8bfcffad78
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/aarch64/t-aarch64-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,25 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Machine description for AArch64 architecture.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  Copyright (C) 2020 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  This file is part of GCC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  GCC is free software; you can redistribute it and/or modify it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  under the terms of the GNU General Public License as published by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  the Free Software Foundation; either version 3, or (at your option)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  GCC is distributed in the hope that it will be useful, but
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  You should have received a copy of the GNU General Public License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  <http://www.gnu.org/licenses/>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIB1ASMSRC   = aarch64/lib1funcs.asm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIB1ASMFUNCS = _aarch64_sync_cache_range
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# FIXME - figure out what multilib provisions we should make for 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# a) arm64e
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# b) arm64_32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/darwin-c.cc b/gcc/config/darwin-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3770857aa42..923434da5b1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/darwin-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/darwin-c.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -691,7 +691,8 @@ macosx_version_as_macro (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!version_array)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     goto fail;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if (version_array[MAJOR] < 10 || version_array[MAJOR] > 12)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* System tools accept up to 99 as a major version.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (version_array[MAJOR] < 10 || version_array[MAJOR] > 99)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     goto fail;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (version_array[MAJOR] == 10 && version_array[MINOR] < 10)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/darwin-driver.cc b/gcc/config/darwin-driver.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 30e0e64f280..6df85f57bb4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/darwin-driver.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/darwin-driver.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -160,19 +160,13 @@ darwin_find_version_from_kernel (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     goto parse_failed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Darwin20 sees a transition to macOS 11.  In this, it seems that the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     mapping to macOS minor version is now shifted to the kernel minor
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     version - 1 (at least for the initial releases).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     mapping to macOS minor version and patch level is now always 0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     (at least for macOS 11 and 12).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (major_vers >= 20)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      int minor_vers = *version_p++ - '0';
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (ISDIGIT (*version_p))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  minor_vers = minor_vers * 10 + (*version_p++ - '0');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (*version_p++ != '.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  goto parse_failed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (minor_vers > 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  minor_vers -= 1; /* Kernel 20.3 => macOS 11.2.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      /* It's not yet clear whether patch level will be considered.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      asprintf (&new_flag, "%d.%02d.00", major_vers - 9, minor_vers);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* Apple clang doesn't include the minor version or the patch level
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   in the object file, nor does it pass it to ld  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      asprintf (&new_flag, "%d.00.00", major_vers - 9);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (major_vers - 4 <= 4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* On 10.4 and earlier, the old linker is used which does not
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -274,14 +268,21 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seenX86_64 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seenPPC = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seenPPC64 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool seenArm64 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seenM32 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seenM64 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool appendM32 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool appendM64 = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *vers_string = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seen_version_min = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool seen_sysroot_p = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool noexport_p = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef RPATH_SETS_NODEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool seen_rpath_p = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool seen_nodefaultrpaths_p = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   for (i = 1; i < *decoded_options_count; i++)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -302,6 +303,12 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       seenPPC = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     else if (!strcmp ((*decoded_options)[i].arg, "ppc64"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       seenPPC64 = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else if (!strcmp ((*decoded_options)[i].arg, "arm64"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      seenArm64 = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ; /* We accept the option, but don't need to act on it.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       error ("this compiler does not support %qs",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              (*decoded_options)[i].arg);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -315,7 +322,7 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --i;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     --*decoded_options_count; 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case OPT_m32:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     seenM32 = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -323,6 +330,7 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case OPT_m64:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     seenM64 = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case OPT_mmacosx_version_min_:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     seen_version_min = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -355,8 +363,16 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     gcc_checking_assert ((*decoded_options)[i].arg);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (startswith ((*decoded_options)[i].arg, "-exported_symbol"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       noexport_p = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef RPATH_SETS_NODEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else if (strncmp ((*decoded_options)[i].arg, "-rpath", 6) == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      seen_rpath_p = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef RPATH_SETS_NODEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case OPT_nodefaultrpaths:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    seen_nodefaultrpaths_p = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   default:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -372,6 +388,9 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (seenPPC || seenPPC64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     warning (0, "this compiler does not support PowerPC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else if (seenArm64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    warning (0, "this compiler does not support Arm64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (seenX86)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (seenX86_64 || seenM64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -395,6 +414,9 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (seenX86 || seenX86_64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     warning (0, "this compiler does not support x86"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else if (seenArm64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    warning (0, "this compiler does not support Arm64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (seenPPC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (seenPPC64 || seenM64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -414,12 +436,20 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (! seenM64) /* Add -m64 if the User didn't. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   appendM64 = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (seenPPC || seenPPC64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    warning (0, "this compiler does not support PowerPC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (seenX86 || seenX86_64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    warning (0, "this compiler does not support x86"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          " (%<-arch%> option ignored)");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* If there is nothing else on the command line, do not add sysroot etc.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (*decoded_options_count <= 1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (appendM32 || appendM64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ++*decoded_options_count;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -429,6 +459,7 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       generate_option (appendM32 ? OPT_m32 : OPT_m64, NULL, 1, CL_DRIVER,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  &(*decoded_options)[*decoded_options_count - 1]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (!seen_sysroot_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -496,4 +527,16 @@ darwin_driver_init (unsigned int *decoded_options_count,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       generate_option (OPT_nodefaultexport, NULL, 1, CL_DRIVER,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  &(*decoded_options)[*decoded_options_count - 1]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef RPATH_SETS_NODEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (seen_rpath_p && !seen_nodefaultrpaths_p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ++*decoded_options_count;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      *decoded_options = XRESIZEVEC (struct cl_decoded_option,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                               *decoded_options,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                               *decoded_options_count);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      generate_option (OPT_nodefaultrpaths, NULL, 1, CL_DRIVER,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 &(*decoded_options)[*decoded_options_count - 1]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/darwin.cc b/gcc/config/darwin.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f065a13d73d..7cd684c6abe 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/darwin.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/darwin.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -118,7 +118,7 @@ static bool ld_init_term_start_labels = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ section * darwin_sections[NUM_DARWIN_SECTIONS];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* While we transition to using in-tests instead of ifdef'd code.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if !HAVE_lo_sum
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !HAVE_lo_sum || DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define gen_macho_high(m,a,b) (a)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define gen_macho_low(m,a,b,c) (a)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1052,6 +1052,7 @@ machopic_legitimize_pic_address (rtx orig, machine_mode mode, rtx reg)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return pic_ref;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Callbacks to output the stub or non-lazy pointers.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Each works on the item in *SLOT,if it has been used.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    DATA is the FILE* for assembly output.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1207,6 +1208,7 @@ machopic_finish (FILE *out_file)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   machopic_indirections->traverse_noresize
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     <FILE *, machopic_output_indirection> (out_file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ machopic_operand_p (rtx op)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1936,6 +1938,8 @@ darwin_label_is_anonymous_local_objc_name (const char *name)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (startswith ((const char *)p, "ClassMethods"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else if (startswith ((const char *)p, "ClassProtocols"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (startswith ((const char *)p, "Instance"))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (p[8] == 'I' || p[8] == 'M')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2238,6 +2242,8 @@ darwin_emit_except_table_label (FILE *file)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ rtx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ darwin_make_eh_symbol_indirect (rtx orig, bool ARG_UNUSED (pubvis))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (DARWIN_ARM64)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return orig;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (DARWIN_PPC == 0 && TARGET_64BIT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return orig;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3058,7 +3064,12 @@ darwin_file_end (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       fprintf (asm_out_file, "\t.long\t0\n\t.long\t%u\n", flags);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if !DARWIN_ARM64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   machopic_finish (asm_out_file);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  gcc_checking_assert (!machopic_indirections);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (flag_apple_kext)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* These sections are only used for kernel code.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3682bd2b2c5..13ba6e61474 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -42,6 +42,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DARWIN_X86 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DARWIN_PPC 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_ARM64 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define OBJECT_FORMAT_MACHO 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -143,10 +144,7 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Right now there's no mechanism to split up the "variable portion" (%*) of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    the matched spec string, so where we have some driver specs that take 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    or 3 arguments, these cannot be processed here, but are deferred until the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   LINK_SPEC, where they are copied verbatim.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   We have a "safe" version of the MacOS version string, that's been sanity-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   checked and truncated to minor version.  If the 'tiny' (3rd) portion of the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   value is not significant, it's better to use this in version-compare().  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   LINK_SPEC, where they are copied verbatim.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef SUBTARGET_DRIVER_SELF_SPECS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SUBTARGET_DRIVER_SELF_SPECS                                       \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -220,13 +218,8 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%{image_base*:-Xlinker -image_base -Xlinker %*} %<image_base*",   \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%{init*:-Xlinker -init -Xlinker %*} %<init*",                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%{multi_module:-Xlinker -multi_module} %<multi_module",           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  "%{multiply_defined*:-Xlinker -multiply_defined -Xlinker %*; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     :%{shared-libgcc: \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       %:version-compare(< 10.5 asm_macosx_version_min= -Xlinker) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       %:version-compare(< 10.5 asm_macosx_version_min= -multiply_defined) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       %:version-compare(< 10.5 asm_macosx_version_min= -Xlinker) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       %:version-compare(< 10.5 asm_macosx_version_min= suppress)}} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     %<multiply_defined*",                                                \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "%{multiply_defined*:-Xlinker -multiply_defined -Xlinker %*} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     %<multiply_defined* ",                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%{multiplydefinedunused*:\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      -Xlinker -multiply_defined_unused -Xlinker %*} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      %<multiplydefinedunused* ",                                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -304,6 +297,31 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DARWIN_CC1_SPEC                                                   \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%<dynamic %<dynamiclib %<force_cpusubtype_ALL "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* When we are using embedded runpaths DARWIN_AT_RPATH is set. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_RPATH_LINK \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{!r:%{!nostdlib:%{!nodefaultrpaths:%(darwin_rpaths)}}}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_SHARED_LIBGCC "-lgcc_s.1.1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_RPATH_LINK ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_SHARED_LIBGCC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%:version-compare(!> 10.11 mmacosx-version-min= -lgcc_s.1.1) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ %:version-compare(>= 10.11 mmacosx-version-min= -lemutls_w) "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We might elect to add a path even when this compiler does not use embedded
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   run paths, so that we can use libraries from an alternate compiler that is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   using embedded runpaths.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if DARWIN_DO_EXTRA_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_EXTRA_RPATH \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"%{!r:%{!nostdlib:%{!nodefaultrpaths:\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    %:version-compare(>= 10.5 mmacosx-version-min= -rpath) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    %:version-compare(>= 10.5 mmacosx-version-min= " DARWIN_ADD_RPATH ") \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }}}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define DARWIN_EXTRA_RPATH ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SUBSUBTARGET_OVERRIDE_OPTIONS                                     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   do {                                                                    \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin_override_options ();                                           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -395,7 +413,9 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     DARWIN_NOPIE_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     DARWIN_RDYNAMIC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     DARWIN_NOCOMPACT_UNWIND \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    "}}}}}}} %<pie %<no-pie %<rdynamic %<X %<rpath "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    DARWIN_EXTRA_RPATH \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    DARWIN_RPATH_LINK \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    "}}}}}}} %<pie %<no-pie %<rdynamic %<X %<rpath %<nodefaultrpaths "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Spec that controls whether the debug linker is run automatically for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    a link step.  This needs to be done if there is a source file on the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -458,6 +478,9 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    %{!force_cpusubtype_ALL:-arch %(darwin_subarch)} "\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    LINK_SYSROOT_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%{mmacosx-version-min=*:-macosx_version_min %*} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   %{!multiply_defined*:%{shared-libgcc: \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     %:version-compare(< 10.5 mmacosx-version-min= -multiply_defined) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     %:version-compare(< 10.5 mmacosx-version-min= suppress) }} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    %{sectalign*} %{sectcreate*} %{sectobjectsymbols*}  %{sectorder*} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    %{segaddr*} %{segcreate*} %{segprot*} "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -470,34 +493,19 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    This is because,in general, we need to unwind through system libraries that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    are linked with the shared unwinder in libunwind (or libgcc_s for 10.4/5).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   For -static-libgcc: < 10.6, use the unwinder in libgcc_eh (and find
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   the emultls impl. there too).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   For -static-libgcc: >= 10.6, the unwinder *still* comes from libSystem and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   we find the emutls impl from lemutls_w. In either case, the builtins etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   are linked from -lgcc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   When we have specified shared-libgcc or any case that might require
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   exceptions, we pull the libgcc content (including emulated tls) from
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   -lgcc_s.1 in GCC and the unwinder from /usr/lib/libgcc_s.1 for < 10.6 and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   libSystem for >= 10.6 respectively.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   Otherwise, we just link the emutls/builtins from convenience libs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   If we need exceptions, prior to 10.3.9, then we have to link the static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   eh lib, since there's no shared version on the system.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   In all cases, libgcc_s.1 will be installed with the compiler, or any app
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   built using it, so we can link the builtins and emutls shared on all.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    We have to work around that DYLD_XXXX are disabled in macOS 10.11+ which
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    means that any bootstrap trying to use a shared libgcc with a bumped SO-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    name will fail.  This means that we do not accept shared libgcc for these
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   versions, unless we have embedded run paths enabled, in which case the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   compiler will add the appropriate path to find the library.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   For -static-libgcc: < 10.6, use the unwinder in libgcc_eh (and find
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the emultls impl. there too).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    For -static-libgcc: >= 10.6, the unwinder *still* comes from libSystem and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    we find the emutls impl from lemutls_w. In either case, the builtins etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    are linked from -lgcc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+->
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Otherwise, we just link the shared version of gcc_s.1.1 and pick up
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    exceptions:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      * Prior to 10.3.9, then we have to link the static eh lib, since there
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -507,6 +515,10 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    In all cases, libgcc_s.1.1 will be installed with the compiler, or any app
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    built using it, so we can link the builtins and emutls shared on all.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   On most Darwin systems (other than Arm64) we will also install a legacy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   support libgcc_s.1.dylib to support executables linked with libgcc_ext by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   earlier GCC versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef REAL_LIBGCC_SPEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define REAL_LIBGCC_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -514,8 +526,7 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     %:version-compare(!> 10.6 mmacosx-version-min= -lgcc_eh)             \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     %:version-compare(>= 10.6 mmacosx-version-min= -lemutls_w);                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    shared-libgcc|fexceptions|fobjc-exceptions|fgnu-runtime:                 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    %:version-compare(!> 10.11 mmacosx-version-min= -lgcc_s.1.1)         \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    %:version-compare(>= 10.11 mmacosx-version-min= -lemutls_w)                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   " DARWIN_SHARED_LIBGCC "                                               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     %:version-compare(!> 10.3.9 mmacosx-version-min= -lgcc_eh)           \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     %:version-compare(>< 10.3.9 10.5 mmacosx-version-min= -lgcc_s.10.4)   \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     %:version-compare(>< 10.5 10.6 mmacosx-version-min= -lgcc_s.10.5);        \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -550,7 +561,8 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "darwin_crt2", DARWIN_CRT2_SPEC },                                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "darwin_crt3", DARWIN_CRT3_SPEC },                                  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { "darwin_dylib1", DARWIN_DYLIB1_SPEC },                              \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  { "darwin_bundle1", DARWIN_BUNDLE1_SPEC },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "darwin_bundle1", DARWIN_BUNDLE1_SPEC },                            \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { "darwin_rpaths", DARWIN_RPATH_SPEC },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define DARWIN_CRT1_SPEC                                          \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "%:version-compare(!> 10.5 mmacosx-version-min= -lcrt1.o)               \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -576,6 +588,17 @@ extern GTY(()) int darwin_ms_struct;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "%{!static:%:version-compare(< 10.6 mmacosx-version-min= -lbundle1.o)     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      %{fgnu-tm: -lcrttms.o}}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* A default rpath, that picks up dependent libraries installed in the same 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   director as one being loaded.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_RPATH_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "%:version-compare(>= 10.5 mmacosx-version-min= -rpath) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   %:version-compare(>= 10.5 mmacosx-version-min= @loader_path) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   %P "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_RPATH_SPEC ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef HAVE_AS_MMACOSX_VERSION_MIN_OPTION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Emit macosx version (but only major).  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ASM_MMACOSX_VERSION_MIN_SPEC \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/darwin.opt b/gcc/config/darwin.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index cc7d14c2e4d..b1cb8464d57 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/darwin.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/darwin.opt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -237,6 +237,10 @@ nodefaultexport
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Driver RejectNegative
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Do not add a default symbol exports to modules or dynamic libraries.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++nodefaultrpaths
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Driver RejectNegative
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Do not add default run paths (for the compiler library directories) to executables, modules or dynamic libraries.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ nofixprebinding
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Driver RejectNegative
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (Obsolete after 10.3.9) Set MH_NOPREFIXBINDING, in an executable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a55f6b2b874..36a32867281 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/i386/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/i386/darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -308,3 +308,10 @@ along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define CLEAR_INSN_CACHE(beg, end)                                \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extern void sys_icache_invalidate(void *start, size_t len);     \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   sys_icache_invalidate ((beg), (size_t)((end)-(beg)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Disable custom function descriptors for Darwin when we have off-stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   trampolines.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef X86_CUSTOM_FUNCTION_TEST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define X86_CUSTOM_FUNCTION_TEST \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (!flag_off_stack_trampolines && !flag_trampolines) ? 1 : 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/i386/i386.cc b/gcc/config/i386/i386.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b16df5b183e..7e035598025 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/i386/i386.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/i386/i386.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24726,7 +24726,7 @@ ix86_libgcc_floating_mode_supported_p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_HARD_REGNO_SCRATCH_OK ix86_hard_regno_scratch_ok
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_CUSTOM_FUNCTION_DESCRIPTORS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define TARGET_CUSTOM_FUNCTION_DESCRIPTORS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TARGET_CUSTOM_FUNCTION_DESCRIPTORS X86_CUSTOM_FUNCTION_TEST
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef TARGET_ADDR_SPACE_ZERO_ADDRESS_VALID
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_ADDR_SPACE_ZERO_ADDRESS_VALID ix86_addr_space_zero_address_valid
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 363082ba47b..5f56d7abf65 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/config/i386/i386.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/config/i386/i386.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -746,6 +746,12 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Minimum allocation boundary for the code of a function.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define FUNCTION_BOUNDARY 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We will and with this value to test if a custom function descriptor needs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   a static chain.  The function boundary must the adjusted so that the bit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   this represents is no longer part of the address.  0 Disables the custom
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   function descriptors.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define X86_CUSTOM_FUNCTION_TEST 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* C++ stores the virtual bit in the lowest bit of function pointers.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define TARGET_PTRMEMFUNC_VBIT_LOCATION ptrmemfunc_vbit_in_pfn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/configure b/gcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5ce0557719a..81b9abf31a1 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -634,6 +634,7 @@ LIBOBJS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CET_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NO_PIE_FLAG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NO_PIE_CFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_default_pie
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PICFLAG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_host_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -740,6 +741,8 @@ ORIGINAL_PLUGIN_LD_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gcc_cv_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ORIGINAL_AS_FOR_TARGET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gcc_cv_as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ objdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1000,6 +1003,8 @@ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++with_darwin_extra_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_gold
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_plugin_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1030,6 +1035,7 @@ with_linker_hash_style
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_diagnostics_color
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_diagnostics_urls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_default_pie
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_pie_tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_cet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_s390_excess_float_precision
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1733,6 +1739,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-ld[=ARG]       build ld [ARG={default,yes,no}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-gold[=ARG]     build gold [ARG={default,yes,no}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-gnu-indirect-function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1790,6 +1798,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libquadmath-support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           disable libquadmath support for Fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-default-pie    enable Position Independent Executable as default
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-pie-tools      build Position Independent Executables for the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          compilers and other tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-cet            enable Intel CET in host libraries [default=auto]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-s390-excess-float-precision
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           on s390 targets, evaluate float with double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1850,6 +1860,9 @@ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-pic              try to use only PIC/non-PIC objects [default=use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           both]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --with-darwin-extra-rpath=[ARG]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          Specify a runpath directory, additional to those
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          provided by the compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-plugin-ld=[ARG]  specify the plugin linker
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-glibc-version=M.N
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           assume GCC used with glibc version M.N or later
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17867,6 +17880,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17884,10 +17938,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19673,7 +19736,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 19676 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 19739 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19779,7 +19842,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 19782 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 19845 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20655,6 +20718,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20672,12 +20776,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23028,6 +23145,35 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_DO_EXTRA_RPATH=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --with-darwin-extra-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${with_darwin_extra_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  withval=$with_darwin_extra_rpath; if test x"$withval" != x; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   DARWIN_ADD_RPATH="$withval"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   DARWIN_DO_EXTRA_RPATH=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cat >>confdefs.h <<_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_DO_EXTRA_RPATH $DARWIN_DO_EXTRA_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cat >>confdefs.h <<_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define DARWIN_ADD_RPATH "$DARWIN_ADD_RPATH"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Identify the assembler which will work hand-in-glove with the newly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # built GCC, so that we can examine its features.  This is the assembler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # which will be driven by the driver program.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -32429,6 +32575,22 @@ $as_echo "#define ENABLE_DEFAULT_PIE 1" >>confdefs.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given; this is passed automatically
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# from the top level where it has already been validated.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_pie_tools+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_pie_tools; enable_pie_tools=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_pie_tools=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test x$enable_pie_tools = xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "#define ENABLE_PIE_TOOLS 1" >>confdefs.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check if -fno-PIE works.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fno-PIE option" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo_n "checking for -fno-PIE option... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -32966,6 +33128,10 @@ LTLIBOBJS=$ac_ltlibobjs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/configure.ac b/gcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 23bee7010a3..44f78a5b180 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2559,6 +2559,21 @@ AC_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(objdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_fast_install)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_DO_EXTRA_RPATH=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_ARG_WITH(darwin-extra-rpath,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[AS_HELP_STRING(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [[--with-darwin-extra-rpath=[ARG]]],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   [Specify a runpath directory, additional to those provided by the compiler])],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[if test x"$withval" != x; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   DARWIN_ADD_RPATH="$withval"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   DARWIN_DO_EXTRA_RPATH=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fi])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFINE_UNQUOTED(DARWIN_DO_EXTRA_RPATH, $DARWIN_DO_EXTRA_RPATH,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [Should add an extra runpath directory])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFINE_UNQUOTED(DARWIN_ADD_RPATH, "$DARWIN_ADD_RPATH",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [Specify a runpath directory, additional to those provided by the compiler])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Identify the assembler which will work hand-in-glove with the newly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # built GCC, so that we can examine its features.  This is the assembler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # which will be driven by the driver program.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7646,6 +7661,19 @@ if test x$enable_default_pie = xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST([enable_default_pie])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-pie-tools was given; this is passed automatically
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# from the top level where it has already been validated.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_ARG_ENABLE(pie-tools,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[AS_HELP_STRING([--enable-pie-tools],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [build Position Independent Executables for the compilers and other tools])],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[enable_pie_tools=$enableval],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[enable_pie_tools=no])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test x$enable_pie_tools = xyes ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AC_DEFINE(ENABLE_PIE_TOOLS, 1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      [Define if you build Position Independent Executables for the compilers and other tools.])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([enable_pie_tools])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check if -fno-PIE works.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CACHE_CHECK([for -fno-PIE option],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [gcc_cv_c_no_fpie],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/cp/g++spec.cc b/gcc/cp/g++spec.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8174d652776..2e1e06e6ac9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/cp/g++spec.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/cp/g++spec.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -222,7 +222,12 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case OPT_static_libstdc__:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     library = library >= 0 ? 2 : library;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_LD_STATIC_DYNAMIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Remove -static-libstdc++ from the command only if target supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       LD_STATIC_DYNAMIC.  When not supported, it is left in so that a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       back-end target can use outfile substitution.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     args[i] |= SKIPOPT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case OPT_stdlib_:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/cumulative-args.h b/gcc/cumulative-args.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..b60928e37f9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/cumulative-args.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef GCC_CUMULATIVE_ARGS_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define GCC_CUMULATIVE_ARGS_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if CHECKING_P
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct cumulative_args_t { void *magic; void *p; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else /* !CHECKING_P */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* When using a GCC build compiler, we could use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   __attribute__((transparent_union)) to get cumulative_args_t function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   arguments passed like scalars where the ABI would mandate a less
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   efficient way of argument passing otherwise.  However, that would come
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   at the cost of less type-safe !CHECKING_P compilation.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++union cumulative_args_t { void *p; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* !CHECKING_P */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif /* GCC_CUMULATIVE_ARGS_H */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 07b440190c3..61f61085dd1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/doc/invoke.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/doc/invoke.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -670,6 +670,7 @@ Objective-C and Objective-C++ Dialects}.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @gccoptlist{-fcall-saved-@var{reg}  -fcall-used-@var{reg} @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -ffixed-@var{reg}  -fexceptions @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fnon-call-exceptions  -fdelete-dead-exceptions  -funwind-tables @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++-foff-stack-trampolines @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fasynchronous-unwind-tables @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fno-gnu-unique @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -finhibit-size-directive  -fcommon  -fno-ident @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -680,6 +681,7 @@ Objective-C and Objective-C++ Dialects}.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fverbose-asm  -fpack-struct[=@var{n}]  @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fleading-underscore  -ftls-model=@var{model} @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fstack-reuse=@var{reuse_level} @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++-fstack-use-cumulative-args @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -ftrampolines  -ftrapv  -fwrapv @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fvisibility=@r{[}default@r{|}internal@r{|}hidden@r{|}protected@r{]} @gol
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -fstrict-volatile-bitfields  -fsync-libcalls}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17071,6 +17073,17 @@ the behavior of older compilers in which temporaries' stack space is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ not reused, the aggressive stack reuse can lead to runtime errors. This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option is used to control the temporary stack reuse optimization.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@item -fstack-use-cumulative-args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@opindex fstack_use_cumulative_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++This option instructs the compiler to use the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{cumulative_args_t}-based stack layout target hooks,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_BOUNDARY_CA} and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA}. If a given target does
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++not define these hooks, the default behaviour is to fallback to using
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++the standard non-@code{_CA} variants instead. Certain targets (such as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AArch64 Darwin) require using the more advanced @code{_CA}-based
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++hooks: For these targets this option should be enabled by default.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @item -ftrapv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @opindex ftrapv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This option generates traps for signed overflow on addition, subtraction,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17129,6 +17142,19 @@ instructions.  It does not allow exceptions to be thrown from
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arbitrary signal handlers such as @code{SIGALRM}.  This enables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @option{-fexceptions}.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@item -foff-stack-trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@opindex foff-stack-trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Certain platforms (such as the Apple M1) do not permit an executable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++stack. Generate calls to @code{__builtin_nested_func_ptr_created} and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{__builtin_nested_func_ptr_deleted} in order to allocate and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++deallocate trampoline space on the executable heap. Please note that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++these functions are implemented in libgcc, and will not be compiled in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++unless you provide @option{--enable-off-stack-trampolines} when
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++building gcc.  @emph{PLEASE NOTE}: The trampolines are @emph{not}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++guaranteed to be correctly deallocated if you @code{setjmp},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++instantiate nested functions, and then @code{longjmp} back to a state
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++prior to having allocated those nested functions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @item -fdelete-dead-exceptions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @opindex fdelete-dead-exceptions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Consider that instructions that may throw exceptions but don't otherwise
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c5006afc00d..366360612e3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/doc/tm.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/doc/tm.texi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4322,6 +4322,16 @@ with the specified mode and type.  The default hook returns
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @code{PARM_BOUNDARY} for all arguments.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @end deftypefn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@deftypefn {Target Hook} {unsigned int} TARGET_FUNCTION_ARG_BOUNDARY_CA (machine_mode @var{mode}, const_tree @var{type}, cumulative_args_t @var{ca})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++This is the @code{cumulative_args_t}-based version of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_BOUNDARY}. Define this hook if you need more
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fine-grained control over argument alignment, e.g. depending on whether
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++it is a named argument or not, or any other criteria that you choose to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++place in the @var{ca} structure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++The default hook will call @code{TARGET_FUNCTION_ARG_BOUNDARY}.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@end deftypefn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @deftypefn {Target Hook} {unsigned int} TARGET_FUNCTION_ARG_ROUND_BOUNDARY (machine_mode @var{mode}, const_tree @var{type})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Normally, the size of an argument is rounded up to @code{PARM_BOUNDARY},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ which is the default value for this hook.  You can define this hook to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4329,6 +4339,16 @@ return a different value if an argument size must be rounded to a larger
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ value.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @end deftypefn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@deftypefn {Target Hook} {unsigned int} TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA (machine_mode @var{mode}, const_tree @var{type}, cumulative_args_t @var{ca})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++This is the @code{cumulative_args_t}-based version of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_ROUND_BOUNDARY}. Define this hook if you need more
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fine-grained control over argument size rounding, e.g. depending on whether
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++it is a named argument or not, or any other criteria that you choose to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++place in the @var{ca} structure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++The default hook will call @code{TARGET_FUNCTION_ARG_ROUND_BOUNDARY}.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@end deftypefn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @defmac FUNCTION_ARG_REGNO_P (@var{regno})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ A C expression that is nonzero if @var{regno} is the number of a hard
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ register in which function arguments are sometimes passed.  This does
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f869ddd5e5b..2c9f0f0bf14 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/doc/tm.texi.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/doc/tm.texi.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3330,8 +3330,12 @@ required.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @hook TARGET_FUNCTION_ARG_BOUNDARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@hook TARGET_FUNCTION_ARG_BOUNDARY_CA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @hook TARGET_FUNCTION_ARG_ROUND_BOUNDARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@hook TARGET_FUNCTION_ARG_ROUND_BOUNDARY_CA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @defmac FUNCTION_ARG_REGNO_P (@var{regno})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ A C expression that is nonzero if @var{regno} is the number of a hard
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ register in which function arguments are sometimes passed.  This does
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/function.cc b/gcc/function.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ad0096a43ef..e5044a60741 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/function.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/function.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2445,7 +2445,10 @@ assign_parm_find_data_types (struct assign_parm_data_all *all, tree parm,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (DECL_CHAIN (parm))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     data->arg.named = 1;  /* Not the last non-variadic parm. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (targetm.calls.strict_argument_naming (all->args_so_far))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    data->arg.named = 1;  /* Only variadic ones are unnamed.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      data->arg.named = 1;  /* Only variadic ones are unnamed.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      data->arg.last_named = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     data->arg.named = 0;  /* Treat as variadic.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2502,6 +2505,7 @@ assign_parms_setup_varargs (struct assign_parm_data_all *all,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   function_arg_info last_named_arg = data->arg;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   last_named_arg.named = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  last_named_arg.last_named = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   targetm.calls.setup_incoming_varargs (all->args_so_far, last_named_arg,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                   &varargs_pretend_bytes, no_rtl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2610,7 +2614,9 @@ assign_parm_find_entry_rtl (struct assign_parm_data_all *all,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   locate_and_pad_parm (data->arg.mode, data->arg.type, in_regs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  all->reg_parm_stack_space,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                 entry_parm ? data->partial : 0, current_function_decl,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 entry_parm ? data->partial : 0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 all->args_so_far,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                 current_function_decl,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                  &all->stack_args_size, &data->locate);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Update parm_stack_boundary if this parameter is passed in the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3924,7 +3930,8 @@ gimplify_parameters (gimple_seq *cleanup)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (data.arg.pass_by_reference)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     tree type = TREE_TYPE (data.arg.type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    function_arg_info orig_arg (type, data.arg.named);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    function_arg_info orig_arg (type, data.arg.named,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                data.arg.last_named);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (reference_callee_copied (&all.args_so_far_v, orig_arg))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         tree local, t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4027,6 +4034,7 @@ gimplify_parameters (gimple_seq *cleanup)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ locate_and_pad_parm (machine_mode passed_mode, tree type, int in_regs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                int reg_parm_stack_space, int partial,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               cumulative_args_t ca,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                tree fndecl ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                struct args_size *initial_offset_ptr,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                struct locate_and_pad_arg_data *locate)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4064,9 +4072,23 @@ locate_and_pad_parm (machine_mode passed_mode, tree type, int in_regs,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ? arg_size_in_bytes (type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         : size_int (GET_MODE_SIZE (passed_mode)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   where_pad = targetm.calls.function_arg_padding (passed_mode, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  boundary = targetm.calls.function_arg_boundary (passed_mode, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  round_boundary = targetm.calls.function_arg_round_boundary (passed_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                        type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (flag_stack_use_cumulative_args)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      boundary = targetm.calls.function_arg_boundary_ca (passed_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                   type,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                   ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      round_boundary = targetm.calls.function_arg_round_boundary_ca
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (passed_mode, type, ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      boundary = targetm.calls.function_arg_boundary (passed_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      round_boundary = targetm.calls.function_arg_round_boundary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  (passed_mode, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   locate->where_pad = where_pad;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Alignment can't exceed MAX_SUPPORTED_STACK_ALIGNMENT.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/function.h b/gcc/function.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 098613766be..009a9dc1c44 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/function.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/function.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20,6 +20,7 @@ along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef GCC_FUNCTION_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define GCC_FUNCTION_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "cumulative-args.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Stack of pending (incomplete) sequences saved by `start_sequence'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Each element describes one pending sequence.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -661,6 +662,7 @@ extern int aggregate_value_p (const_tree, const_tree);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern bool use_register_for_decl (const_tree);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern gimple_seq gimplify_parameters (gimple_seq *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void locate_and_pad_parm (machine_mode, tree, int, int, int,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                           cumulative_args_t,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            tree, struct args_size *,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            struct locate_and_pad_arg_data *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void generate_setjmp_warnings (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/gcc.cc b/gcc/gcc.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bb07cc244e3..a16c1e4372b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/gcc.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/gcc.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -572,6 +572,7 @@ or with constant text in a single argument.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  %l     process LINK_SPEC as a spec.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  %L     process LIB_SPEC as a spec.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  %M     Output multilib_os_dir.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ %P       Output a RUNPATH_OPTION for each directory in startfile_prefixes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  %G     process LIBGCC_SPEC as a spec.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  %R     Output the concatenation of target_system_root and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         target_sysroot_suffix.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1191,6 +1192,10 @@ proper position among the other output files.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define SYSROOT_HEADERS_SUFFIX_SPEC ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef RUNPATH_OPTION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define RUNPATH_OPTION "-rpath"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char *asm_debug = ASM_DEBUG_SPEC;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char *asm_debug_option = ASM_DEBUG_OPTION_SPEC;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char *cpp_spec = CPP_SPEC;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -5895,6 +5900,7 @@ struct spec_path_info {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   size_t append_len;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool omit_relative;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool separate_options;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bool realpaths;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -5904,6 +5910,16 @@ spec_path (char *path, void *data)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   size_t len = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   char save = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* The path must exist; we want to resolve it to the realpath so that this
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     can be embedded as a runpath.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (info->realpaths)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     path = lrealpath (path);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* However, if we failed to resolve it - perhaps because there was a bogus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     -B option on the command line, then punt on this entry.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (!path)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (info->omit_relative && !IS_ABSOLUTE_PATH (path))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6135,6 +6151,22 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         info.omit_relative = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         info.separate_options = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.realpaths = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        for_each_path (&startfile_prefixes, true, 0, spec_path, &info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case 'P':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        struct spec_path_info info;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.option = RUNPATH_OPTION;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.append_len = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.omit_relative = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.separate_options = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* We want to embed the actual paths that have the libraries.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.realpaths = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         for_each_path (&startfile_prefixes, true, 0, spec_path, &info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6461,6 +6493,7 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         info.append_len = strlen (info.append);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         info.omit_relative = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         info.separate_options = true;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        info.realpaths = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         for_each_path (&include_prefixes, false, info.append_len,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        spec_path, &info);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 79e296d4a66..a9caa0467ba 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/ginclude/stddef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/ginclude/stddef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -427,9 +427,8 @@ typedef struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* _Float128 is defined as a basic type, so max_align_t must be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      sufficiently aligned for it.  This code must work in C++, so we
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      use __float128 here; that is only available on some
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     architectures, but only on i386 is extra alignment needed for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-     __float128.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#ifdef __i386__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     architectures.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__i386__) || (__APPLE__ && __aarch64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   __float128 __max_align_f128 __attribute__((__aligned__(__alignof(__float128))));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } max_align_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/jit/Make-lang.in b/gcc/jit/Make-lang.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6e10abfd0ac..d1771071c49 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/jit/Make-lang.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/jit/Make-lang.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -59,7 +59,7 @@ LIBGCCJIT_AGE = 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBGCCJIT_BASENAME = libgccjit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBGCCJIT_SONAME = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  ${libdir}/$(LIBGCCJIT_BASENAME).$(LIBGCCJIT_VERSION_NUM).dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(DARWIN_RPATH)/$(LIBGCCJIT_BASENAME).$(LIBGCCJIT_VERSION_NUM).dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBGCCJIT_FILENAME = $(LIBGCCJIT_BASENAME).$(LIBGCCJIT_VERSION_NUM).dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBGCCJIT_LINKER_NAME = $(LIBGCCJIT_BASENAME).dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/objc/objc-next-runtime-abi-02.cc b/gcc/objc/objc-next-runtime-abi-02.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e50ca6e89f5..9ea63b189c7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/objc/objc-next-runtime-abi-02.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/objc/objc-next-runtime-abi-02.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1033,6 +1033,7 @@ next_runtime_abi_02_protocol_decl (tree p)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     decl = start_var_decl (objc_v2_protocol_template, buf);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   OBJCMETA (decl, objc_meta, meta_protocol);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  DECL_PRESERVE_P (decl) = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return decl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2115,8 +2116,8 @@ build_v2_classrefs_table (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     expr = convert (objc_class_type, build_fold_addr_expr (expr));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* The runtime wants this, even if it appears unused, so we must force the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   output.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      DECL_PRESERVE_P (decl) = 1; */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   output.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      DECL_PRESERVE_P (decl) = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       finish_var_decl (decl, expr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2318,6 +2319,7 @@ build_v2_protocol_list_address_table (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       expr = convert (objc_protocol_type, build_fold_addr_expr (ref->refdecl));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       OBJCMETA (decl, objc_meta, meta_label_protocollist);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       finish_var_decl (decl, expr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      DECL_PRESERVE_P (decl) = 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* TODO: delete the vec.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/target.def b/gcc/target.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d85adf36a39..5eb1fdce24e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/target.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/target.def
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4967,6 +4967,18 @@ with the specified mode and type.  The default hook returns\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  unsigned int, (machine_mode mode, const_tree type),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  default_function_arg_boundary)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DEFHOOK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(function_arg_boundary_ca,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "This is the @code{cumulative_args_t}-based version of\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_BOUNDARY}. Define this hook if you need more\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fine-grained control over argument alignment, e.g. depending on whether\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++it is a named argument or not, or any other criteria that you choose to\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++place in the @var{ca} structure.\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++The default hook will call @code{TARGET_FUNCTION_ARG_BOUNDARY}.",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ unsigned int, (machine_mode mode, const_tree type, cumulative_args_t ca),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ default_function_arg_boundary_ca)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEFHOOK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (function_arg_round_boundary,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  "Normally, the size of an argument is rounded up to @code{PARM_BOUNDARY},\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4976,6 +4988,18 @@ value.",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  unsigned int, (machine_mode mode, const_tree type),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  default_function_arg_round_boundary)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DEFHOOK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++(function_arg_round_boundary_ca,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "This is the @code{cumulative_args_t}-based version of\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@code{TARGET_FUNCTION_ARG_ROUND_BOUNDARY}. Define this hook if you need more\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fine-grained control over argument size rounding, e.g. depending on whether\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++it is a named argument or not, or any other criteria that you choose to\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++place in the @var{ca} structure.\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++\n\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++The default hook will call @code{TARGET_FUNCTION_ARG_ROUND_BOUNDARY}.",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ unsigned int, (machine_mode mode, const_tree type, cumulative_args_t ca),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ default_function_arg_round_boundary_ca)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Return the diagnostic message string if function without a prototype
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    is not allowed for this 'val' argument; NULL otherwise. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DEFHOOK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/target.h b/gcc/target.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d6fa6931499..40c3da87656 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/target.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/target.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -51,22 +51,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "insn-codes.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "tm.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "hard-reg-set.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if CHECKING_P
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-struct cumulative_args_t { void *magic; void *p; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#else /* !CHECKING_P */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* When using a GCC build compiler, we could use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   __attribute__((transparent_union)) to get cumulative_args_t function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   arguments passed like scalars where the ABI would mandate a less
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   efficient way of argument passing otherwise.  However, that would come
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   at the cost of less type-safe !CHECKING_P compilation.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-union cumulative_args_t { void *p; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif /* !CHECKING_P */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "cumulative-args.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Types of memory operation understood by the "by_pieces" infrastructure.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    Used by the TARGET_USE_BY_PIECES_INFRASTRUCTURE_P target hook and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/targhooks.cc b/gcc/targhooks.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 399d6f874dc..9d554adcb45 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/targhooks.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/targhooks.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -850,6 +850,14 @@ default_function_arg_boundary (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++default_function_arg_boundary_ca (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            const_tree type ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                            cumulative_args_t ca ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return default_function_arg_boundary (mode, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ default_function_arg_round_boundary (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                const_tree type ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -857,6 +865,14 @@ default_function_arg_round_boundary (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return PARM_BOUNDARY;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++unsigned int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++default_function_arg_round_boundary_ca (machine_mode mode ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  const_tree type ATTRIBUTE_UNUSED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                  cumulative_args_t ca ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return default_function_arg_round_boundary (mode, type);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ hook_void_bitmap (bitmap regs ATTRIBUTE_UNUSED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/targhooks.h b/gcc/targhooks.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ecce55ebe79..ba110ade58b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/targhooks.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/targhooks.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -154,6 +154,12 @@ extern unsigned int default_function_arg_boundary (machine_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                              const_tree);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern unsigned int default_function_arg_round_boundary (machine_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                    const_tree);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern unsigned int default_function_arg_boundary_ca (machine_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                const_tree,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                cumulative_args_t ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern unsigned int default_function_arg_round_boundary_ca (machine_mode,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                      const_tree,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                      cumulative_args_t ca);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern bool hook_bool_const_rtx_commutative_p (const_rtx, int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern rtx default_function_value (const_tree, const_tree, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern HARD_REG_SET default_zero_call_used_regs (HARD_REG_SET);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.dg/abi/aarch64_guard1.C b/gcc/testsuite/g++.dg/abi/aarch64_guard1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e2669a89fbf..52be32decc6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.dg/abi/aarch64_guard1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.dg/abi/aarch64_guard1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,5 +12,6 @@ int *foo ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return &x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-// { dg-final { scan-assembler _ZGVZ3foovE1x,8,8 } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler _ZGVZ3foovE1x,8,8 { target { ! *-*-darwin* } } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler __DATA,__bss,__ZGVZ3foovE1x,8,3 { target *-*-darwin* } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // { dg-final { scan-tree-dump "& 1" "original" } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.dg/abi/arm_va_list.C b/gcc/testsuite/g++.dg/abi/arm_va_list.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4f6f3a46da4..ff9fd8bcf0d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.dg/abi/arm_va_list.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.dg/abi/arm_va_list.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8,8 +8,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // #include <stdarg.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef __builtin_va_list va_list;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-// { dg-final { scan-assembler "\n_Z1fPSt9__va_list:" } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler "\n_Z1fPSt9__va_list:" { target { ! *-*-darwin* } } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler "\n__Z1fPPc:" { target *-*-darwin* } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void f(va_list*) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-// { dg-final { scan-assembler "\n_Z1gSt9__va_listS_:" } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler "\n_Z1gSt9__va_listS_:" { target { ! *-*-darwin* } } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// { dg-final { scan-assembler "\n__Z1gPcS_:" { target *-*-darwin* } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void g(va_list, va_list) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.dg/ext/arm-bf16/bf16-mangle-aarch64-1.C b/gcc/testsuite/g++.dg/ext/arm-bf16/bf16-mangle-aarch64-1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5426a1814b8..a017ce8ce5f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.dg/ext/arm-bf16/bf16-mangle-aarch64-1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.dg/ext/arm-bf16/bf16-mangle-aarch64-1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,12 +2,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Test mangling */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "\t.global\t_Z1fPu6__bf16" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {\t.globa?l[ \t]_?_Z1fPu6__bf16} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void f (__bf16 *x) { }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "\t.global\t_Z1gPu6__bf16S_" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {\t.globa?l[ \t]_?_Z1gPu6__bf16S_} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void g (__bf16 *x, __bf16 *y) { }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "\t.global\t_ZN1SIu6__bf16u6__bf16E1iE" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {\t.globa?l[ \t]_?_ZN1SIu6__bf16u6__bf16E1iE} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ template <typename T, typename U> struct S { static int i; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ template <> int S<__bf16, __bf16>::i = 3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.dg/torture/darwin-cfstring-3.C b/gcc/testsuite/g++.dg/torture/darwin-cfstring-3.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ee4b385b17f..eabb3b517a4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.dg/torture/darwin-cfstring-3.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.dg/torture/darwin-cfstring-3.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,5 +26,5 @@ void foo(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "\\.long\[ \\t\]+___CFConstantStringClassReference\n\[ \\t\]*\\.long\[ \\t\]+1992\n\[ \\t\]*\\.long\[ \\t\]+\[lL\]C.*\n\[ \\t\]*\\.long\[ \\t\]+4\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "\\.long\[ \\t\]+___CFConstantStringClassReference\n\[ \\t\]*\\.long\[ \\t\]+1992\n\[ \\t\]*\\.long\[ \\t\]+\[lL\]C.*\n\[ \\t\]*\\.long\[ \\t\]+10\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t4\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t10\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t4\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t10\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/no_unique_address_1.C b/gcc/testsuite/g++.target/aarch64/no_unique_address_1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5fc68ea5d6d..5faf915fa54 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/no_unique_address_1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/no_unique_address_1.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-std=c++11 -O -foptimize-sibling-calls -fpeephole2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" "" { target lp64 } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target { lp64 && { ! aarch64*-*-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct X { };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct Y { int : 0; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/no_unique_address_2.C b/gcc/testsuite/g++.target/aarch64/no_unique_address_2.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f0717133ccd..322ec127c79 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/no_unique_address_2.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/no_unique_address_2.C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-std=c++17 -O -foptimize-sibling-calls -fpeephole2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" "" { target lp64 } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target { lp64 && { ! aarch64*-*-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct X { };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ struct Y { int : 0; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/sve/aarch64-sve.exp b/gcc/testsuite/g++.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 03a6537a53e..d4c2052dc59 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib g++-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp b/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 38140413a97..559e1f37c68 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,11 @@ if { ![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib g++-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle.exp b/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d1887eb8087..c9fee945c52 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib g++-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp b/gcc/testsuite/g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 78e8ecae729..e22ef5f0876 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/g++.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,11 @@ if { ![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib g++-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/builtin-apply2.c b/gcc/testsuite/gcc.dg/builtin-apply2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0f350f4ac16..d1e70b3a3e5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/builtin-apply2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/builtin-apply2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,7 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target untyped_assembly } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Variadic funcs have all args on stack. Normal funcs have args in registers." { "avr-*-* nds32*-*-* amdgcn-*-*" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-skip-if "Variadic funcs use different argument passing from normal funcs." { "csky*-*-* riscv*-*-* or1k*-*-* msp430-*-* pru-*-* loongarch*-*-*" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Variadic funcs use different argument passing from normal funcs." { "csky*-*-* riscv*-*-* or1k*-*-* msp430-*-* pru-*-* loongarch*-*-* aarch64-apple-darwin*" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Variadic funcs use Base AAPCS.  Normal funcs use VFP variant." { arm*-*-* && arm_hf_eabi } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* PR target/12503 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/cwsc1.c b/gcc/testsuite/gcc.dg/cwsc1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e793e26116a..7d8b472bdf6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/cwsc1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/cwsc1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,7 +6,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__i386__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define CHAIN  "%ecx"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__aarch64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define CHAIN  "x18"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  define CHAIN  "x16"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  define CHAIN  "x18"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__alpha__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define CHAIN  "$1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__arm__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/darwin-segaddr.c b/gcc/testsuite/gcc.dg/darwin-segaddr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 526db77bd9c..fcc324b3031 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/darwin-segaddr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/darwin-segaddr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,7 +1,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Check that -segaddr gets through and works.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O0 -segaddr __TEST 0x200000 -fno-pie" { target { *-*-darwin* && { ! lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-options "-O0 -segaddr __TEST 0x110000000 -fno-pie" { target { *-*-darwin* && lp64 } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-O0 -segaddr __TEST 0x110000000 -fno-pie" { target { *-*-darwin[1456789]* && lp64 } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-O0 -segaddr __TEST 0x110000000 " { target { *-*-darwin2* && lp64 } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/pr26427.c b/gcc/testsuite/gcc.dg/pr26427.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index add13ca209e..2c09f28195d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/pr26427.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/pr26427.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-warning "this target does not support" "" {target *86*-*-darwin* } 0 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-warning "this target does not support" "" {target *86*-*-darwin* aarch64-*-darwin* } 0 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run { target { *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options { -fsection-anchors -O } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* PR target/26427 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/pubtypes-2.c b/gcc/testsuite/gcc.dg/pubtypes-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 116e3489bc0..b3d1231ad44 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/pubtypes-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/pubtypes-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,7 +2,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O0 -gdwarf-2 -dA" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Unmatchable assembly" { mmix-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "__debug_pubtypes" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler {long+[ \t]+0x14d+[ \t]+[#;]+[ \t]+Pub Info Length} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x14d+[ \t]+[#;]+[ \t]+Pub Info Length} { target { ! aarch64-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x163+[ \t]+[#;]+[ \t]+Pub Info Length} { target aarch64-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "used_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-not "unused_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/pubtypes-3.c b/gcc/testsuite/gcc.dg/pubtypes-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3fb3468fb00..950a9ba72fc 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/pubtypes-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/pubtypes-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,7 +2,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O0 -gdwarf-2 -dA" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Unmatchable assembly" { mmix-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "__debug_pubtypes" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler {long+[ \t]+0x14d+[ \t]+[#;]+[ \t]+Pub Info Length} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x14d+[ \t]+[#;]+[ \t]+Pub Info Length} { target { ! aarch64-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x163+[ \t]+[#;]+[ \t]+Pub Info Length} { target aarch64-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "used_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-not "unused_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-not "\"list_name_type\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/pubtypes-4.c b/gcc/testsuite/gcc.dg/pubtypes-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 83fba8dfabc..7250771587b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/pubtypes-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/pubtypes-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,7 +2,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O0 -gdwarf-2 -dA" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Unmatchable assembly" { mmix-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "__debug_pubtypes" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler {long+[ \t]+0x184+[ \t]+[#;]+[ \t]+Pub Info Length} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x184+[ \t]+[#;]+[ \t]+Pub Info Length} { target { ! aarch64-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {long+[ \t]+0x19a+[ \t]+[#;]+[ \t]+Pub Info Length} { target aarch64-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "used_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-not "unused_struct\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "\"list_name_type\\\\0\"+\[ \t\]+\[#;]+\[ \t\]+external name" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/rtl/aarch64/big-endian-cse-1.c b/gcc/testsuite/gcc.dg/rtl/aarch64/big-endian-cse-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1559a489f25..aa2da0cbca5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/rtl/aarch64/big-endian-cse-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/rtl/aarch64/big-endian-cse-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile { target aarch64*-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Darwin platforms do not support big-endian arm64" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target lp64 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O3 -mbig-endian" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/tls/pr78796.c b/gcc/testsuite/gcc.dg/tls/pr78796.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 038e5366e41..31e03dd419c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/tls/pr78796.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/tls/pr78796.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,7 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* PR target/78796 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-additional-options "-mcmodel=large" { target aarch64-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-mcmodel=large" { target { { aarch64-*-* } && { ! aarch64-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target tls_runtime } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options tls } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/torture/darwin-cfstring-3.c b/gcc/testsuite/gcc.dg/torture/darwin-cfstring-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ee4b385b17f..eabb3b517a4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/torture/darwin-cfstring-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/torture/darwin-cfstring-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,5 +26,5 @@ void foo(void) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "\\.long\[ \\t\]+___CFConstantStringClassReference\n\[ \\t\]*\\.long\[ \\t\]+1992\n\[ \\t\]*\\.long\[ \\t\]+\[lL\]C.*\n\[ \\t\]*\\.long\[ \\t\]+4\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler "\\.long\[ \\t\]+___CFConstantStringClassReference\n\[ \\t\]*\\.long\[ \\t\]+1992\n\[ \\t\]*\\.long\[ \\t\]+\[lL\]C.*\n\[ \\t\]*\\.long\[ \\t\]+10\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t4\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t10\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t4\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t10\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c b/gcc/testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 552ca1433f4..16643ceb198 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,7 +9,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* arm_hf_eabi: Variadic funcs use Base AAPCS.  Normal funcs use VFP variant.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    avr: Variadic funcs don't pass arguments in registers, while normal funcs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         do.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-skip-if "Variadic funcs use different argument passing from normal funcs" { arm_hf_eabi || { csky*-*-* avr-*-* riscv*-*-* or1k*-*-* msp430-*-* amdgcn-*-* pru-*-* loongarch*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Variadic funcs use different argument passing from normal funcs" { arm_hf_eabi || { csky*-*-* avr-*-* riscv*-*-* or1k*-*-* msp430-*-* amdgcn-*-* pru-*-* loongarch*-*-*  aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "Variadic funcs have all args on stack. Normal funcs have args in registers." { nds32*-*-* } { v850*-*-* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target untyped_assembly } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-2.c b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0224997f18a..3684cffdc64 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,9 +25,9 @@ f1 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -46,9 +46,9 @@ f2 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save \[148\] GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 8 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 1 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -62,10 +62,10 @@ f3 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and 1 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and 16 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and 16 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[1-9\]\[0-9\]* GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[1-9\]\[0-9\]* GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[1-9\]\[0-9\]* GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[1-9\]\[0-9\]* GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -81,9 +81,9 @@ f4 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -100,9 +100,9 @@ f5 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -121,9 +121,9 @@ f6 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|12|24) GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 24 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 3 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -139,9 +139,9 @@ f7 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -159,9 +159,9 @@ f8 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f8: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -177,9 +177,9 @@ f9 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f9: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -197,9 +197,9 @@ f10 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f10: va_list escapes 1, needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -218,9 +218,9 @@ f11 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save (3|12|24) GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save 24 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save 3 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f11: va_list escapes 0, needs to save (3|12|24) GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -239,9 +239,9 @@ f12 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save 0 GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save 24 GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save 0 GPR units and 3 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save 0 GPR units and 48 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save 0 GPR units and 48 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f12: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -260,9 +260,9 @@ f13 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save 0 GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save 24 GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save 0 GPR units and 3 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save 0 GPR units and 48 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save 0 GPR units and 48 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f13: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -281,9 +281,9 @@ f14 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save \[148\] GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save 24 GPR units and 3" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save 1 GPR units and 2 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save 8 GPR units and 32 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save 8 GPR units and 32 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f14: va_list escapes 0, needs to save \[1-9]\[0-9\]* GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ inline void __attribute__((always_inline))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -305,11 +305,11 @@ f15 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f15: va_list escapes 0, needs to save \[148\] GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f15: va_list escapes 0, needs to save \[148\] GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f15: va_list escapes 0, needs to save 1 GPR units and 2 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f15: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f15: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* We may be able to improve upon this after fixing PR66010/PR66013.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f15: va_list escapes 1, needs to save all GPR units and all FPR units" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump-not "f15: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump-not "f15: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump-not "f15: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump-not "f15: va_list escapes 0, needs to save 0 GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-4.c b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1a637d6efe4..77cdf384df4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27,9 +27,9 @@ f1 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f1: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -45,9 +45,9 @@ f2 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 0 GPR units and all FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 0 GPR units and all FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 0 GPR units and all FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save 0 GPR units and all FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f2: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes \[01\], needs to save all GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Here va_arg can be executed at most as many times as va_start.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -69,9 +69,9 @@ f3 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[148\] GPR units and 0 FPR units" "stdarg" { target { powerpc*-*-linux* && ilp32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 1 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -91,7 +91,7 @@ f4 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 0 GPR units and \[1-9\]\[0-9\]* FPR units" "stdarg" { target { powerpc*-*-linux* && { powerpc_fprs && ilp32 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 8 GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 0 GPR units and 1 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 0 GPR units and 16 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 0 GPR units and 16 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && ia32 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target ia64-*-* aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save \[148\] GPR units" "stdarg" { target { powerpc*-*-* && lp64 } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-5.c b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c8ad4fe320d..b0484f2f053 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.dg/tree-ssa/stdarg-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.dg/tree-ssa/stdarg-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,7 +25,8 @@ f1 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f1: va_list escapes 0, needs to save all GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ f2 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -39,7 +40,8 @@ f2 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and all FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f2: va_list escapes 0, needs to save all GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Here va_arg can be executed at most as many times as va_start.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,7 +60,8 @@ f3 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 0 GPR units and 0 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 32 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 1 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f3: va_list escapes 0, needs to save 8 GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ f4 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -77,7 +80,8 @@ f4 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 16 GPR units and 16 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 24 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 2 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 24 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f4: va_list escapes 0, needs to save 24 GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ f5 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -92,7 +96,8 @@ f5 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save 16 GPR units and 0 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save 32 GPR units and 1" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save (4|2) GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save 16 GPR units and 0 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save 16 GPR units and 0 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f5: va_list escapes 0, needs to save 16 GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ f6 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -107,7 +112,8 @@ f6 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 8 GPR units and 32 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 32 GPR units and 3" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save (3|2) GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 8 GPR units and 32 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 8 GPR units and 32 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f6: va_list escapes 0, needs to save 24 GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ f7 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -122,4 +128,5 @@ f7 (int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 0 GPR units and 64 FPR units" "stdarg" { target { { i?86-*-* x86_64-*-* } && { ! { ia32 || llp64 } } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 32 GPR units and 2" "stdarg" { target alpha*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 2 GPR units and 0 FPR units" "stdarg" { target s390*-*-linux* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 0 GPR units and 64 FPR units" "stdarg" { target aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 0 GPR units and 64 FPR units" "stdarg" { target { { aarch64*-*-* } && { ! aarch64-apple-darwin* } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-tree-dump "f7: va_list escapes 0, needs to save 32 GPR units" "stdarg" { target aarch64-apple-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/aapcs64/aapcs64.exp b/gcc/testsuite/gcc.target/aarch64/aapcs64/aapcs64.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3e652c483c7..34907929bda 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/aapcs64/aapcs64.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/aapcs64/aapcs64.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if { ![istarget aarch64*-*-*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # darwinpcs and mach-o will need different test mechanisms.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ torture-init
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set-torture-options $C_TORTURE_OPTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set additional_flags "-W -Wall -Wno-abi"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c42c7acbbe9..76917a6ff5b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_dup.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_get.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_get.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2193753ffbb..d29b222b032 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_get.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_get.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_reinterpret.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_reinterpret.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f5adf40c648..4e3a3d94416 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_reinterpret.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bf16_reinterpret.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-compile.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 47af7c494d9..a2f415f67b7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-nosimd.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-nosimd.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a914680937d..c6b2ef3e444 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-nosimd.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvt-nosimd.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,7 +2,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target aarch64_asm_bf16_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps -march=armv8.2-a+bf16+nosimd" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvtnq2-untied.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvtnq2-untied.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4b730e39d4e..fd2abadb457 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvtnq2-untied.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfcvtnq2-untied.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-1.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ad51507731b..e57053d2193 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ae0a953f7b4..9f5669a8974 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfdot-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3,7 +3,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-mbig-endian --save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9810e4ba374..315cabd464b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmlalbt-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmmla-compile.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmmla-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0aaa69f0037..ddc391b1332 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmmla-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/bfmmla-compile.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target aarch64_asm_bf16_ok }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_bf16_neon_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_bf16_neon } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "-DCHECK_ASM" { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ac4f821e771..978eac29815 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,8 +1,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do assemble { target { aarch64*-*-* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_v8_2a_i8mm_neon_hw } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_i8mm_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_i8mm }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 61c7c51f5ec..f84ed68e2f7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vdot-3-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3,7 +3,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target arm_v8_2a_i8mm_ok } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-add-options arm_v8_2a_i8mm }  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-mbig-endian -save-temps" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { check-function-bodies "**" "" {-O[^0]} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" {-O[^0]} { target { ! aarch64*-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <arm_neon.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/arm_align_max_pwr.c b/gcc/testsuite/gcc.target/aarch64/arm_align_max_pwr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ffa4d229922..38b9ef01eb7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/arm_align_max_pwr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/arm_align_max_pwr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,5 +19,7 @@ dummy ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times "zero\t4" 2 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "zero\t268435452" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "zero\t4" 2 { target { ! *-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler "zero\t268435452" { target { ! *-*-darwin*} }  } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times ".zerofill __DATA,__bss,_y,4,28" 1 { target { *-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times ".zerofill __DATA,__bss,_x,4,28" 1 { target { *-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/auto-init-2.c b/gcc/testsuite/gcc.target/aarch64/auto-init-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 375befd325b..3a0387a5952 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/auto-init-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/auto-init-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,11 +12,11 @@ enum E {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   N3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-extern void bar (char, short, int, enum E, long, long long, int *, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern void bar (unsigned char, short, int, enum E, long, long long, int *, bool);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  char temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned char temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   short temp2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   enum E temp4;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/auto-init-3.c b/gcc/testsuite/gcc.target/aarch64/auto-init-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7008f76b294..85a4e4daeb6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/auto-init-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/auto-init-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,13 +2,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-ftrivial-auto-var-init=zero -fdump-rtl-expand" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-long double result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE _Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE long double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-long double foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++TYPE result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++TYPE foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   float temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double temp2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  long double temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  TYPE temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   result = temp1 + temp2 + temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/auto-init-4.c b/gcc/testsuite/gcc.target/aarch64/auto-init-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 10197045b4c..0c6840ba224 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/auto-init-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/auto-init-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,13 +2,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O -ftrivial-auto-var-init=pattern -fdump-rtl-expand" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-long double result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE _Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE long double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-long double foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++TYPE result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++TYPE foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   float temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   double temp2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  long double temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  TYPE temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   result = temp1 + temp2 + temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/auto-init-5.c b/gcc/testsuite/gcc.target/aarch64/auto-init-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ac69ac3df82..0dda3c201d3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/auto-init-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/auto-init-5.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,14 +2,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-ftrivial-auto-var-init=zero" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE _Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE long double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-_Complex long double result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex TYPE result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-_Complex long double foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex TYPE foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _Complex float temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _Complex double temp2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  _Complex long double temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  _Complex TYPE temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   result = temp1 + temp2 + temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/auto-init-6.c b/gcc/testsuite/gcc.target/aarch64/auto-init-6.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0456c66f496..23323115a11 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/auto-init-6.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/auto-init-6.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,14 +2,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-ftrivial-auto-var-init=pattern" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE _Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define TYPE long double
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-_Complex long double result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex TYPE result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-_Complex long double foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex TYPE foo()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _Complex float temp1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _Complex double temp2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  _Complex long double temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  _Complex TYPE temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   result = temp1 + temp2 + temp3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/c-output-template-2.c b/gcc/testsuite/gcc.target/aarch64/c-output-template-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ced96d04542..86e4f5fa82c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/c-output-template-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/c-output-template-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,4 +6,4 @@ test (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     __asm__ ("@ %c0" : : "S" (test));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "@ test" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler "@ _?test" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/c-output-template-3.c b/gcc/testsuite/gcc.target/aarch64/c-output-template-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8bde4cbeb0c..4531a381518 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/c-output-template-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/c-output-template-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,4 +7,4 @@ test (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     __asm__ ("@ %c0" : : "S" (&test + 4));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "@ test\\+4" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler "@ _?test\\+4" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/c-output-template-4.c b/gcc/testsuite/gcc.target/aarch64/c-output-template-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c5a93915af1..800d52bfab8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/c-output-template-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/c-output-template-4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,4 +7,4 @@ test (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     __asm__ ("@ %c0" : : "S" (&test + 4));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "@ test\\+4" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler "@ _?test\\+4" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/cpymem-size.c b/gcc/testsuite/gcc.target/aarch64/cpymem-size.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4a6f2495d22..b8ef4745c6d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/cpymem-size.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/cpymem-size.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,7 +6,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ** cpy_127:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **      mov       (w|x)2, 127
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**      b memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**      b _?memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cpy_127 (char *out, char *in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,7 +17,7 @@ cpy_127 (char *out, char *in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ** cpy_128:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **      mov       (w|x)2, 128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**      b memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**      b _?memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cpy_128 (char *out, char *in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/aarch64-darwin.exp b/gcc/testsuite/gcc.target/aarch64/darwin/aarch64-darwin.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..b0b7f49aede
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/aarch64-darwin.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,46 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  Specific tests for the darwinpcs and codegen.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  Copyright (C) GNU Toolchain Authors
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  Contributed by Iain Sandoe
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  This file is part of GCC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  GCC is free software; you can redistribute it and/or modify it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  under the terms of the GNU General Public License as published by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  the Free Software Foundation; either version 3, or (at your option)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  GCC is distributed in the hope that it will be useful, but
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  You should have received a copy of the GNU General Public License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  <http://www.gnu.org/licenses/>.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# GCC testsuite that uses the `dg.exp' driver.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Exit immediately if this isn't aarch64-darwin.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { ![istarget aarch64*-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# If a testcase doesn't have special options, use these.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++global DEFAULT_CFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ![info exists DEFAULT_CFLAGS] then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set DEFAULT_CFLAGS " -ansi -pedantic-errors"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Initialize `dg'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++dg-init
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Main loop.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cCS\]]] \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "" $DEFAULT_CFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# All done.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++dg-finish
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/complex-in-regs.c b/gcc/testsuite/gcc.target/aarch64/darwin/complex-in-regs.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..974f02ca2ec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/complex-in-regs.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,103 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for complex and gnu initializers.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We use the sections anchors to make the code easier to match.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O -fsection-anchors -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex char
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cc_regs_fun (_Complex char r0, _Complex char r1, 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex char r2, _Complex char r3,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex char r4, _Complex char r5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex char r6, _Complex char r7);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_cc_regs_fun:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w7, \[x0\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w6, \[x0, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w5, \[x0, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w4, \[x0, 6\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w3, \[x0, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w2, \[x0, 10\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w1, \[x0, 12\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w0, \[x0, 14]\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _cc_regs_fun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex char
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_cc_regs_fun (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return cc_regs_fun ((_Complex char) (1 + 1i), (_Complex char) (2 + 2i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex char) (3 + 3i), (_Complex char) (4 + 4i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex char) (5 + 5i), (_Complex char) (6 + 6i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex char) (7 + 7i), (_Complex char) (8 + 8i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex short
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cs_regs_fun (_Complex short r0, _Complex short r1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex short r2, _Complex short r3,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex short r4, _Complex short r5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex short r6, _Complex short r7);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_cs_regs_fun:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w7, \[x0, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w6, \[x0, 20\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w5, \[x0, 24\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w4, \[x0, 28\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w3, \[x0, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w2, \[x0, 36\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w1, \[x0, 40\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w0, \[x0, 44\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _cs_regs_fun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex short
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_cs_regs_fun (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return cs_regs_fun ((_Complex short) (1 + 1i), (_Complex short) (2 + 2i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex short) (3 + 3i), (_Complex short) (4 + 4i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex short) (5 + 5i), (_Complex short) (6 + 6i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex short) (7 + 7i), (_Complex short) (8 + 8i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ci_regs_fun (_Complex int r0, _Complex int r1,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex int r2, _Complex int r3,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex int r4, _Complex int r5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       _Complex int r6, _Complex int r7);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_ci_regs_fun:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x7, \[x0, 48\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x6, \[x0, 56\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x5, \[x0, 64\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x4, \[x0, 72\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x3, \[x0, 80\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x2, \[x0, 88\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x1, \[x0, 96\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x0, \[x0, 104\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _ci_regs_fun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Complex int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_ci_regs_fun (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return ci_regs_fun ((_Complex int) (1 + 1i), (_Complex int) (2 + 2i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex int) (3 + 3i), (_Complex int) (4 + 4i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex int) (5 + 5i), (_Complex int) (6 + 6i),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                (_Complex int) (7 + 7i), (_Complex int) (8 + 8i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d1.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..e2dd574fac7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,54 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for the empty struct.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Make sure we do no consume any registers in passing zero-sized entities */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef struct es {} Empty;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use_no_regs (int a, Empty b, int c, Empty d, Empty e, int f);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_use_no_regs:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _use_no_regs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_use_no_regs (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  Empty e;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  use_no_regs (1, e, 2, e, e, 3);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Make sure we consume no stack in passing zero-sized entities. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_use_no_stack:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 108
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 1\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 106
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _use_no_stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++use_no_stack (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        Empty i, char j, Empty k, char l);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_use_no_stack (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  Empty e;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  use_no_stack (0, 1, 2, 3, 4, 5, 6, 7, e, 'j', e, 'l');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-00.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..bd76856308b
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,126 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* In each case we consume the parm registers with 8 ints, forcing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the test values to be spilled to the stack.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* The important thing here is that the chars are assigned to the stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * with no padding - so that they occupy bytes 0-8. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_char_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 113
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 112
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 7\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 111
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 6\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 110
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 5\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 109
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 108
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 3\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 107
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 106
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 1\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 105
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _char_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++char_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        char i, char j, char k, char l,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        char m, char n, char o, char p,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        char q);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_char_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ char_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Here we should occupy the first 7 short words on the stack. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_short_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 6\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _short_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++short_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              short i, short j, short k, short l,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              short m);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_short_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ short_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          8, 9, 10, 11, 12);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Here we should occupy the first 3 ints on the stack. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_int_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _int_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       int i, int j, int k);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_int_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ int_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        8, 9, 10);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-01.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-01.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..d21fd551b4a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-01.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,115 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* In each case we consume the parm registers with 8 ints, forcing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the test values to be spilled to the stack.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* char short char short - everything on 2byte boundaries */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_c_s_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 109
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 6\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 107
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 105
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _c_s_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++c_s_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       char i, short j, char k, short l,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       char m);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_c_s_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ c_s_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'i', 8 , 'k', 9, 'm');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_s_c_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 109
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 7\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 108
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 6\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 106
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _s_c_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++s_c_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       short i, char j, short k, char l,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       char m);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_s_c_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ s_c_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        8, 'j' , 9, 'l', 'm');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* 0, 2, 4, 0 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_csi_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 108
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 105
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strb    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, 7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, 6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, 3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _csi_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++csi_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       char i, short j, int k, char l);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void call_csi_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ csi_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'i', 8 , 9, 'l');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-02.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-02.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..55e5acdaf41
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-02.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,75 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for complex literals.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O -fsection-anchors -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++c_cc_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        _Complex char i, _Complex char j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We check that these values are not packed on the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_c_cc_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrh    w[0-9]+, \[x[0-9]+, 2\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _c_cc_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_c_cc_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ c_cc_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         (_Complex char) (1 + 1i),(_Complex char) (2 + 2i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++c_cs_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++             _Complex short i, _Complex short j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_c_cs_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w[0-9]+, \[x[0-9]+, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w[0-9]+, \[x[0-9]+, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _c_cs_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_c_cs_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ c_cs_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         (_Complex short) (1 + 1i),(_Complex short) (2 + 2i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void c_ci_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++             _Complex int i, _Complex int j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_c_ci_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[x[0-9]+, 12\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[x[0-9]+, 20\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _c_ci_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_c_ci_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ c_ci_packing (0, 1, 2, 3, 4, 5, 6, 7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         (_Complex int) (1 + 1i),(_Complex int) (2 + 2i));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-03.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-03.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..b0d2593dfd7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-03.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,67 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef union u { char a; short b; } U;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef struct sf { float a; float b; float c;} SF;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++u_packing (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     U i, U j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We check that these values are not packed on the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_u_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        strh    w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _u_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_u_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  U x = { 'a' };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  u_packing (0, 1, 2, 3, 4, 5, 6, 7, x, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* But a homogeneous float aggregate is treated as if it were the contained
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   floats.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++sf_packing (float a, float b, float c, float d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      float e, float f, float g, float h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      SF i, SF j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* So the stores to sp+12 and 20 pack the floats onto the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_sf_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s1, 1.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     s1, \[sp, 48\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s2, 2.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     s2, \[sp, 52\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 1077936128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 48\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp, 12\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 20\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s7, 7.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s6, 6.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s5, 5.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s4, 4.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s3, 3.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        movi    v0.2s, #0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _sf_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_sf_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SF A = {1.0F, 2.0F, 3.0F};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ sf_packing (0.0F, 1.0F, 2.0F, 3.0F, 4.0F, 5.0F, 6.0F, 7.0F,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       A, A);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-04.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-04.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..33c60c69b78
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d2-04.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,66 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef short v2hi __attribute__ ((vector_size (4)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef int v4si __attribute__ ((vector_size (16)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++v4si t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int al = __alignof__ (t);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++v2hi_packing (v2hi a, v2hi b, v2hi c, v2hi d, v2hi e, v2hi f, v2hi g, v2hi h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        v2hi i, v2hi j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We check that v2hi is packed on the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_v2hi_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        movk    w[0-9]+, 0x2, lsl 16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w7, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w6, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w5, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w4, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w3, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w2, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w1, w[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _v2hi_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_v2hi_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  v2hi x = {1,2};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  v2hi_packing (x, x, x, x, x, x, x, x, x, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++v4si_packing (int r0, int r1, int r2, int r3, int r4, int r5, int r6, int r7,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        v4si a, v4si b, v4si c, v4si d, v4si e, v4si f, v4si g, v4si h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        int stack, v4si i, v4si j);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Test that we align a 16b vector on the stack.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_v4si_packing:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x0, lC0@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q[0-9]+, \[x[0-9]+, #lC0@PAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 42
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _v4si_packing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_v4si_packing (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  v4si x = {3,1,2,4};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  v4si_packing (0, 1, 2, 3, 4, 5, 6, 7, x, x, x, x, x, x, x, x, 42, x, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d3.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..21c6b696b7c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,40 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* This will fail, because of issue #74
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**foo: 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cmp     w0, w1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cset    w0, eq
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foo (char a, unsigned char b)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a == b ? 1 : 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bar (short a, unsigned short b)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a == b ? 1 : 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void pop (char *, unsigned char *, short *, unsigned short *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int main ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   char a;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   unsigned char b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   short c;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   unsigned short d;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   int result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   pop (&a, &b, &c, &d);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   result = foo (a, b);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   result += bar (c, d);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d4.c b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..2aab48260f4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/darwinpcs-d4.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,62 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for __int128.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should use x0, x1 and x2 - not skip x1.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        eor     x0, x0, x1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        orr     x0, x0, x2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cmp     x0, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cset    w0, eq
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foo (unsigned long long x,unsigned __int128 y)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return x == y ? 1 : 0; 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should use x0, x1 and x2.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        eor     x2, x2, x0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        orr     x2, x2, x1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cmp     x2, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        cset    w0, eq
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bar (unsigned __int128 y, unsigned long long x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return x == y ? 1 : 0; 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int fooo (unsigned long long x, unsigned __int128 y);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int baro (unsigned __int128 y, unsigned long long x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should use x0, x1 and x2 in both calls.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**main:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x1, 25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x2, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x0, 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _fooo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x2, 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x0, 25
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     x1, 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _baro
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int main ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned long long x = 10;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned __int128 y = 25;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int r = fooo (x, y);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  r += baro (y, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/float128-00.c b/gcc/testsuite/gcc.target/aarch64/darwin/float128-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..29aec80fbaa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/float128-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,38 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for _Float128.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We use the sections anchors to make the code easier to match.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O2 -fsection-anchors " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should just pass q0 and q1 through
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      ___addtf3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foo (_Float128 a, _Float128 b)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a + b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should just load q0 and q1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q1, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q0, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        b       _foo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_foo (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return foo (1.0, 2.0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/homogeneous-aggr.c b/gcc/testsuite/gcc.target/aarch64/darwin/homogeneous-aggr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..bee97557a4d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/homogeneous-aggr.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,25 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef struct sf { float a; float b; float c;} SF;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++hmg_f (SF a);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we should use registers for each item
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_hmg_f:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s0, 1.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s1, 2.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    s2, 3.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _hmg_f
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_hmg_f (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SF A = { 1.0F, 2.0F, 3.0F };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ hmg_f (A);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/k+r-00.c b/gcc/testsuite/gcc.target/aarch64/darwin/k+r-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..443fb968811
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/k+r-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-O2 -fsection-anchors" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that we get int loads from sp, sp+4 and sp+8.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * This code will change when we implement darwinpcs d.3 - since the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ * promotions will no longer be needed (although they are harmless).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**test_k_r00:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrsb   w[0-9]+, \[sp, 4\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldrsb   w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++const char *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++test_k_r00 (r0, r1, r2, r3, r4, r5, r6, r7, a, b, c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     char r0, r1, r2, r3, r4, r5, r6, r7;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     char a;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     char b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     const char *c;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (a > 10 && b < 100)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return c;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return (char *)0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/tu-accesses-0.c b/gcc/testsuite/gcc.target/aarch64/darwin/tu-accesses-0.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..ba5cc493bc9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/tu-accesses-0.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,82 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-O -fcommon -mno-pc-relative-literal-loads" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* This checks that we perform the correct accesses for file-scope vars
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   including GOT indirections.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double gd = 1.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__weak__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double wd = 2.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__visibility__("hidden")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double hd = 3.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__weak__, __visibility__("hidden")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double whd = 4.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern double ed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double cd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static double sd = 5.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  double a;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  double b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++} two_dbls = { 1.0, 42.0 };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double arr[3] = { 6.0, 7.0, 8.0 };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**test:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _gd@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #_gd@PAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, lC0@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #lC0@PAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _wd@GOTPAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[x[0-9]+, _wd@GOTPAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _hd@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #_hd@PAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _whd@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #_whd@PAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _ed@GOTPAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[x[0-9]+, _ed@GOTPAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _cd@GOTPAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[x[0-9]+, _cd@GOTPAGEOFF\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fmov    d[0-9]+, 5.0e\+0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _two_dbls@PAGE\+8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #_two_dbls@PAGEOFF\+8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, _arr@PAGE\+16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     d[0-9]+, \[x[0-9]+, #_arr@PAGEOFF\+16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        fadd    d[0-9]+, d[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++double test (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  double x = 123456123456123456.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += gd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += wd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += hd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += whd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += ed;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += cd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += sd;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += two_dbls.b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x += arr[2];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/variadic-00.c b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..6420fca11d5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-00.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,91 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We use the sections anchors to make the code easier to match.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O -fsection-anchors -fno-schedule-insns -fno-schedule-insns2 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdarg.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that the load of w0 is from the incoming [SP]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**fooi:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        sub     sp, sp, #16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        add     x[0-9]+, sp, 24
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w0, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fooi (int a, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, a);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x = va_arg(ap, int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fooo (char a, ...);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 42
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _fooo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_foo (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int y = fooo (1, 42);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return y;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that the load of w0 is from the incoming [SP+8]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**bari:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        sub     sp, sp, #16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        add     x[0-9]+, sp, 32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     x[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w0, \[sp, 24\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bari (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      int i, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, i);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x = va_arg(ap, int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 42
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 8\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bl      _baro
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++baro (int a, int b, int c, int d, int e, int f, int g, int h,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      int i, ...);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__)) int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_bar (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int y = baro (1, 2, 3, 4, 5, 6, 7, 8, 9, 42);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return y;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/variadic-01.c b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-01.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..c055aeae580
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-01.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,102 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for _Float128.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We use the sections anchors to make the code easier to match.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O2 -fsection-anchors " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdarg.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that q0 and q1 are loaded from incoming sp and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   sp+16.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q1, \[sp, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q0, \[sp, 48\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      ___addtf3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foo (int n, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  _Float128 a, b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  a = va_arg(ap, _Float128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  b = va_arg(ap, _Float128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap); 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a + b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _foo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_foo (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return foo (2, (_Float128)1.0, (_Float128)2.0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that q0 and q1 are loaded from incoming sp and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   sp+32 (with the int at sp+16).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     w[0-9]+, \[x[0-9]+, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q0, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q1, \[x[0-9]+, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      ___addtf3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bar (int n, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  _Float128 a, b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  a = va_arg(ap, _Float128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  n = va_arg(ap, int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (n != 42)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __builtin_abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  b = va_arg(ap, _Float128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap); 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a + b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 42
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     q[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _bar
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_Float128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_bar (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return bar (2, (_Float128)1.0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        42, (_Float128)2.0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/darwin/variadic-02.c b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-02.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..9d796bfc07f
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/darwin/variadic-02.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,104 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* we need this for __int128.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-options "-std=gnu99 " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* We use the sections anchors to make the code easier to match.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options " -O2 -fsection-anchors " } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { check-function-bodies "**" "" "" { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdarg.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* What we care about here is that we load the values from incoming sp and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   sp + 16.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        sub     sp, sp, #16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldp     x[0-9]+, x[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 40\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__int128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++foo (int n, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __int128 a, b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  a = va_arg(ap, __int128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  b = va_arg(ap, __int128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap); 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a + b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_foo:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        stp     x[0-9]+, x[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        stp     x[0-9]+, x[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _foo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__int128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_foo (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return foo (2, (__int128)1, (__int128)2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* sp = one int128, sp+16 = int sp + 32 = other int128 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        sub     sp, sp, #16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldp     x[0-9]+, x[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 48\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     x[0-9]+, \[sp, 56\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__int128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++bar (int n, ...)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __int128 a, b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_list ap;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_start(ap, n);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  a = va_arg(ap, __int128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  n = va_arg(ap, int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  b = va_arg(ap, __int128);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  va_end(ap); 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return a + b;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__int128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++baro (int n, ...);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**call_bar:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w[0-9]+, 42
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        mov     w0, 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        stp     x[0-9]+, x[0-9]+, \[sp\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        str     w[0-9]+, \[sp, 16\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        stp     x[0-9]+, x[0-9]+, \[sp, 32\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        bl      _baro
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ...
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__int128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++call_bar (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return baro (2, (__int128)1, 42, (__int128)2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/dbl_mov_immediate_1.c b/gcc/testsuite/gcc.target/aarch64/dbl_mov_immediate_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ba6a230457b..cc30dd546f4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/dbl_mov_immediate_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/dbl_mov_immediate_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -41,8 +41,10 @@ double d4(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-times "movi\td\[0-9\]+, #?0"                 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times "adrp\tx\[0-9\]+, \.LC\[0-9\]"         2 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times "ldr\td\[0-9\]+, \\\[x\[0-9\], #:lo12:\.LC\[0-9\]\\\]" 2 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "adrp\tx\[0-9\]+, \.LC\[0-9\]"         2  { target { ! *-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "ldr\td\[0-9\]+, \\\[x\[0-9\], #:lo12:\.LC\[0-9\]\\\]" 2  { target { ! *-*-darwin* } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "adrp\tx\[0-9\]+, lC\[0-9\]@PAGE" 2  { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "ldr\td\[0-9\]+, \\\[x\[0-9\], #lC\[0-9\]@PAGEOFF\\\]" 2  { target *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-times "fmov\td\[0-9\]+, 1\\\.5e\\\+0"        1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/dwarf-cfa-reg.c b/gcc/testsuite/gcc.target/aarch64/dwarf-cfa-reg.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ae5b3797021..8a691add222 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/dwarf-cfa-reg.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/dwarf-cfa-reg.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Verify that CFA register is restored to SP after FP is restored.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no cfi insn support yet" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O0 -gdwarf-2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".cfi_restore 30" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".cfi_restore 29" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/inline-lrint_1.c b/gcc/testsuite/gcc.target/aarch64/inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 478875ff874..9a2b2e44893 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,4 +15,4 @@ TEST (fllf, float , long long, l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-times "frintx\t\[d,s\]\[0-9\]+, \[d,s\]\[0-9\]+" 6 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-times "fcvtzs\tx\[0-9\]+, \[d,s\]\[0-9\]+" 6 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-not "bl"    } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-not "bl\t" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/ldp_stp_13.c b/gcc/testsuite/gcc.target/aarch64/ldp_stp_13.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9cc3942f153..52c90a92114 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/ldp_stp_13.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/ldp_stp_13.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_mabi_ilp32 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2 -mabi=ilp32" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ long long
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/memset-corner-cases-2.c b/gcc/testsuite/gcc.target/aarch64/memset-corner-cases-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9ee96f33255..dec73f98506 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/memset-corner-cases-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/memset-corner-cases-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,7 +7,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* 127 bytes should use libcall for size.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **set127byte:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        mov     x2, 127
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        b       memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        b       _?memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void __attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set127byte (int64_t *src, int c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,7 +18,7 @@ set127byte (int64_t *src, int c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* 128 bytes should use libcall for size.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **set128byte:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        mov     x2, 128
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        b       memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        b       _?memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void __attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set128byte (int64_t *src, int c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/memset-corner-cases.c b/gcc/testsuite/gcc.target/aarch64/memset-corner-cases.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c43f0199adc..733a11e585a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/memset-corner-cases.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/memset-corner-cases.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -77,7 +77,7 @@ set256byte (int64_t *src, char c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **set257byte:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        mov     x2, 257
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        mov     w1, 99
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        b       memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        b       _?memset
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void __attribute__((__noinline__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set257byte (int64_t *src)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/no-inline-lrint_1.c b/gcc/testsuite/gcc.target/aarch64/no-inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d5e9200562c..7f504ad687f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/no-inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/no-inline-lrint_1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14,6 +14,6 @@ TEST (dlld, double, long long, l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TEST (fllf, float , long long, l)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-times "frintx\t\[d,s\]\[0-9\]+, \[d,s\]\[0-9\]+" 6 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times "bl\tlrint"  4 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times "bl\tllrint" 2 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "bl\t_*lrint"  4 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times "bl\t_*llrint" 2 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler-not "fcvtzs" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr100518.c b/gcc/testsuite/gcc.target/aarch64/pr100518.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5ca599f5d2e..4e7d6bc7d90 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr100518.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr100518.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_mabi_ilp32 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-mabi=ilp32 -mstrict-align -O2" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int unsigned_range_min, unsigned_range_max, a11___trans_tmp_1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr62308.c b/gcc/testsuite/gcc.target/aarch64/pr62308.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1cf6e212dca..4c1a733e84d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr62308.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr62308.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Darwin platforms do not support big-endian arm64" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-mbig-endian" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ typedef int __attribute__((vector_size(16))) v4si;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr78255.c b/gcc/testsuite/gcc.target/aarch64/pr78255.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b078cf3e1c1..fc5d859ee68 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr78255.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr78255.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Darwin platforms do not support tiny" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2 -mcmodel=tiny" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int bar (void *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr78561.c b/gcc/testsuite/gcc.target/aarch64/pr78561.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 048d2d7969f..635214edde1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr78561.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr78561.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Darwin platforms do not support tiny" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-Og -O3 -mcmodel=tiny" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr80295.c b/gcc/testsuite/gcc.target/aarch64/pr80295.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b3866d8d6a9..7a7f127b65f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr80295.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr80295.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_mabi_ilp32 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-mabi=ilp32" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void f (void *b) 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr87305.c b/gcc/testsuite/gcc.target/aarch64/pr87305.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8beaa9176e0..c3f98e8eaec 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr87305.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr87305.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "Darwin platforms do not support big-endian arm64" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-Ofast -mbig-endian -w" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int cc;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr92424-1.c b/gcc/testsuite/gcc.target/aarch64/pr92424-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c413a2c306e..59f7435dc83 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr92424-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr92424-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do "compile" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O1" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { check-function-bodies "**" "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "unimplemented patchable function entry" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Note: this test only checks the instructions in the function bodies,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    not the placement of the patch label or nops before the futncion.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr94201.c b/gcc/testsuite/gcc.target/aarch64/pr94201.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 69176169186..051c742e98e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr94201.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr94201.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_mabi_ilp32 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-mcmodel=tiny -mabi=ilp32 -fPIC" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int bar (void *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr94577.c b/gcc/testsuite/gcc.target/aarch64/pr94577.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6f2d3612c26..6a52e52dc39 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr94577.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr94577.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-require-effective-target arm_mabi_ilp32 } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-mcmodel=large -mabi=ilp32" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/pr97535.c b/gcc/testsuite/gcc.target/aarch64/pr97535.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7d4db485f1f..6f1ee8035eb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/pr97535.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/pr97535.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13,4 +13,4 @@ void setRaw(const void *raw)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* At any optimization level this should be a function call
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    and not inlined.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler "bl\tmemcpy" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler "bl\t_*memcpy" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-2.c b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8eec6824f37..193c65717ed 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-Ofast" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no system variant_pcs support" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__simd__ ("notinbranch")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__nothrow__ , __leaf__ , __const__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,5 +13,5 @@ void bar(double * f, int n)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           f[i] = foo(f[i]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-not {\.variant_pcs\tfoo} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnN2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-not {\.variant_pcs\t_?foo} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnN2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-3.c b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 95f6a6803e8..6fd57735b3a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-Ofast" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no system variant_pcs support" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__simd__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__nothrow__ , __leaf__ , __const__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17,8 +18,8 @@ double foo(double x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return x * x / 3.0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-not {\.variant_pcs\tfoo} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnM1v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnM2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnN1v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnN2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-not {\.variant_pcs\t_?foo} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnM1v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnM2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnN1v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnN2v_foo} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute.c b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index eddcef3597c..62ee482a892 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/simd_pcs_attribute.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,5 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-Ofast" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no system variant_pcs support" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__simd__ ("notinbranch")))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ __attribute__ ((__nothrow__ , __leaf__ , __const__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,5 +13,5 @@ void foo(double *f, int n)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           f[i] = log(f[i]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-not {\.variant_pcs\tlog} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler-times {\.variant_pcs\t_ZGVnN2v_log} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-not {\.variant_pcs\t_?log} } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler-times {\.variant_pcs\t_?_ZGVnN2v_log} 1 } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-1.c b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6885894a97e..ebba23c9d02 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-1.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -funwind-tables" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target supports_stack_clash_protection } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no cfi insn support yet" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SIZE 128*1024
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "stack-check-prologue.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-2.c b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5796a53be06..e15fbd6196c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-2.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -funwind-tables" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target supports_stack_clash_protection } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no cfi insn support yet" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SIZE 1280*1024 + 512
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "stack-check-prologue.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-3.c b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c4b7bb601c4..ccaf2e6f8cf 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/stack-check-cfa-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,6 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O3 -fopenmp-simd -march=armv8-a+sve -fstack-clash-protection --param stack-clash-protection-guard-size=16 -funwind-tables" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-require-effective-target supports_stack_clash_protection } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no cfi insn support yet" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "stack-check-prologue-16.c"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp b/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 71dd6687c6b..7a62814edbb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve/aarch64-sve.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp b/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a271f1793f4..2da5720d1f3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,11 @@ if {![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle.exp b/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ce71c9c1fd4..c7bd136f202 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve/acle/aarch64-sve-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp b/gcc/testsuite/gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 83786733f35..9ab68902def 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,10 @@ if {![istarget aarch64*-*-*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve2/aarch64-sve2.exp b/gcc/testsuite/gcc.target/aarch64/sve2/aarch64-sve2.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 60652dbf8fb..010e32132cb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve2/aarch64-sve2.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve2/aarch64-sve2.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp b/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e08cd612190..a7e5f364770 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle-asm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,11 @@ if {![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle.exp b/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f0255967c9d..82092e337f6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/sve2/acle/aarch64-sve2-acle.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,6 +25,11 @@ if {![istarget aarch64*-*-*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Darwin doesn't support sve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if { [istarget *-*-darwin*] } then {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gcc-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/symbol-range-tiny.c b/gcc/testsuite/gcc.target/aarch64/symbol-range-tiny.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fc6a4f3ec78..2d9e94bc625 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/symbol-range-tiny.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/symbol-range-tiny.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,5 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do link } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "no mcmodel tiny" *-*-darwin* } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O3 -save-temps -mcmodel=tiny" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ char fixed_regs[0x00080000];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/uaddw-3.c b/gcc/testsuite/gcc.target/aarch64/uaddw-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 39cbd6b6cc2..b4ed187bd2c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/uaddw-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/uaddw-3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,10 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do compile } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-options "-O3" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-additional-options "-fno-signed-char" { target *-*-darwin* } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #pragma GCC target "+nosve"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-t6(int len, void * dummy, char * __restrict x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++t6(int len, void * dummy, unsigned char * __restrict x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   len = len & ~31;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned short result = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gcc.target/aarch64/vect-cse-codegen.c b/gcc/testsuite/gcc.target/aarch64/vect-cse-codegen.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d025e989a1e..f218504c719 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gcc.target/aarch64/vect-cse-codegen.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gcc.target/aarch64/vect-cse-codegen.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,8 +6,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **test1:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        adrp    x[0-9]+, .LC[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        ldr     q[0-9]+, \[x[0-9]+, #:lo12:.LC[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, (.LC[0-9]+|lC[0-9]+@PAGE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q[0-9]+, \[x[0-9]+, #(:lo12:.LC[0-9]+|lC[0-9]+@PAGEOFF)\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        add     v[0-9]+.2d, v[0-9]+.2d, v[0-9]+.2d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        str     q[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        fmov    x[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27,13 +27,14 @@ test1 (uint64_t a, uint64x2_t b, uint64x2_t* rt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **test2:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        adrp    x[0-9]+, .LC[0-1]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        ldr     q[0-9]+, \[x[0-9]+, #:lo12:.LC[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, (.LC[0-1]+|lC[0-1]+@PAGE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q[0-9]+, \[x[0-9]+, #(:lo12:.LC[0-9]+|lC[0-9]+@PAGEOFF)\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        add     v[0-9]+.2d, v[0-9]+.2d, v[0-9]+.2d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        str     q[0-9]+, \[x[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        fmov    x[0-9]+, d[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        orr     x[0-9]+, x[0-9]+, x[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ uint64_t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -48,8 +49,8 @@ test2 (uint64_t a, uint64x2_t b, uint64x2_t* rt)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **test3:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        adrp    x[0-9]+, .LC[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-**        ldr     q[0-9]+, \[x[0-9]+, #:lo12:.LC[0-9]+\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        adrp    x[0-9]+, (.LC[0-9]+|lC[0-9]+@PAGE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++**        ldr     q[0-9]+, \[x[0-9]+, #(:lo12:.LC[0-9]+|lC[0-9]+@PAGEOFF)\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        add     v[0-9]+.4s, v[0-9]+.4s, v[0-9]+.4s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        str     q[0-9]+, \[x1\]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ **        fmov    w[0-9]+, s[0-9]+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gfortran.dg/coarray/caf.exp b/gcc/testsuite/gfortran.dg/coarray/caf.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8683a2ab435..e76cb69dcd9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gfortran.dg/coarray/caf.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gfortran.dg/coarray/caf.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28,6 +28,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load procedures from common libraries. 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gfortran-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++load_lib atomic-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If a testcase doesn't have special options, use these.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -47,6 +48,7 @@ global gfortran_test_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global gfortran_aux_module_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set gfortran_test_path $srcdir/$subdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set gfortran_aux_module_flags $DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ proc dg-compile-aux-modules { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     global gfortran_test_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     global gfortran_aux_module_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -69,9 +71,21 @@ proc dg-compile-aux-modules { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Add -latomic only where supported.  Assume built-in support elsewhere.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-set maybe_atomic_lib ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if [check_effective_target_libatomic_available] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    set maybe_atomic_lib "-latomic"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    #set maybe_atomic_lib "-latomic"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if ![is_remote host] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if [info exists TOOL_OPTIONS] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set maybe_atomic_lib "[atomic_link_flags [get_multilibs ${TOOL_OPTIONS}]]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set maybe_atomic_lib "[atomic_link_flags [get_multilibs]]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        set maybe_atomic_lib ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  set t [get_multilibs]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  puts "maybe al $maybe_atomic_lib ml $t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set maybe_atomic_lib ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Main loop.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gfortran.dg/dg.exp b/gcc/testsuite/gfortran.dg/dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bd7ad95ad0d..36fc2972b2e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gfortran.dg/dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gfortran.dg/dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,6 +18,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Load support procs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ load_lib gfortran-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++load_lib atomic-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If a testcase doesn't have special options, use these.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,12 +54,30 @@ proc dg-compile-aux-modules { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# coarray tests might need libatomic.  Assume that it is either not needed or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# provided by builtins if it's not available.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if [check_effective_target_libatomic_available] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if ![is_remote host] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if [info exists TOOL_OPTIONS] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set maybe_atomic_lib "[atomic_link_flags [get_multilibs ${TOOL_OPTIONS}]]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set maybe_atomic_lib "[atomic_link_flags [get_multilibs]]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        set maybe_atomic_lib ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  set t [get_multilibs]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  puts "dg set al $maybe_atomic_lib ml $t"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++puts "DEFAULT_FFLAGS $DEFAULT_FFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Main loop.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfortran-dg-runtest [lsort \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ] ] "" $DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       [glob -nocomplain $srcdir/$subdir/*.\[fF\]{,90,95,03,08} ] ] $maybe_atomic_lib $DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfortran-dg-runtest [lsort \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       [glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] "" $DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       [glob -nocomplain $srcdir/$subdir/g77/*.\[fF\] ] ] $maybe_atomic_lib $DEFAULT_FFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # All done.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/gfortran.dg/pr95690.f90 b/gcc/testsuite/gfortran.dg/pr95690.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 47a5df9e894..1afa9d3c467 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/gfortran.dg/pr95690.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/gfortran.dg/pr95690.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2,8 +2,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ module m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ contains
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    subroutine s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      print *, (erfc) ! { dg-error "not a floating constant" "" { target i?86-*-* x86_64-*-* sparc*-*-* cris-*-* } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   end ! { dg-error "not a floating constant" "" { target { ! "i?86-*-* x86_64-*-* sparc*-*-* cris-*-*" } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      print *, (erfc) ! { dg-error "not a floating constant" "" { target i?86-*-* x86_64-*-* sparc*-*-* cris-*-* aarch64-apple-darwin* } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   end ! { dg-error "not a floating constant" "" { target { ! "i?86-*-* x86_64-*-* sparc*-*-* cris-*-* aarch64-apple-darwin*" } } }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    function erfc()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/lib/asan-dg.exp b/gcc/testsuite/lib/asan-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7e0f85dc9b0..88c6ece8caa 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/lib/asan-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/lib/asan-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -78,7 +78,7 @@ proc asan_link_flags_1 { paths lib } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      || [file exists "${gccpath}/libsanitizer/${lib}/.libs/lib${lib}.${shlib_ext}"] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     append flags " -B${gccpath}/libsanitizer/ "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     append flags " -B${gccpath}/libsanitizer/${lib}/ "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    append flags " -L${gccpath}/libsanitizer/${lib}/.libs "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    append flags " -B${gccpath}/libsanitizer/${lib}/.libs "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     append ld_library_path ":${gccpath}/libsanitizer/${lib}/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/lib/atomic-dg.exp b/gcc/testsuite/lib/atomic-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 86dcfa674ea..c9244fb6cac 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/lib/atomic-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/lib/atomic-dg.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,7 +33,7 @@ proc atomic_link_flags { paths } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if { [file exists "${gccpath}/libatomic/.libs/libatomic.a"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      || [file exists "${gccpath}/libatomic/.libs/libatomic.${shlib_ext}"] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     append flags " -B${gccpath}/libatomic/ "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    append flags " -L${gccpath}/libatomic/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    append flags " -B${gccpath}/libatomic/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     append ld_library_path ":${gccpath}/libatomic/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/lib/scanasm.exp b/gcc/testsuite/lib/scanasm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a80630bb2a8..195611f1f72 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/lib/scanasm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/lib/scanasm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,7 +763,7 @@ proc scan-lto-assembler { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # to function bodies in array RESULT.  FILENAME has already been uploaded
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # locally where necessary and is known to exist.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-proc parse_function_bodies { filename result } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++proc parse_ELF_function_bodies { filename result } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     upvar $result up_result
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Regexp for the start of a function definition (name in \1).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -793,6 +793,44 @@ proc parse_function_bodies { filename result } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     close $fd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++proc parse_MACHO_function_bodies { filename result } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    upvar $result up_result
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Regexp for the start of a function definition (name in \1).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set label {^(_[a-zA-Z_]\S+):$}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set start {^LFB[0-9]+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Regexp for the end of a function definition.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set terminator {^LFE[0-9]+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Regexp for lines that aren't interesting.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set fluff {^\s*(?:\.|//|@)}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set fluff3 {^L[0-9ACESV]}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set fd [open $filename r]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set in_function 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    while { [gets $fd line] >= 0 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if { !$in_function && [regexp $label $line dummy function_name] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set in_function 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set function_body ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } elseif { $in_function == 1 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if { [regexp $start $line] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set in_function 2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set in_function 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } elseif { $in_function == 2 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if { [regexp $terminator $line] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          set up_result($function_name) $function_body
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          set in_function 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      } elseif { ![regexp $fluff $line]  && ![regexp $fluff3 $line] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          append function_body $line "\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    close $fd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # FUNCTIONS is an array that maps function names to function bodies.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Return true if it contains a definition of function NAME and if
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # that definition matches BODY_REGEXP.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -820,6 +858,14 @@ proc check-function-bodies { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   error "too many arguments to check-function-bodies"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set isELF 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # some targets have a __USER_LABEL_PREFIX__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set needsULP 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if { [istarget *-*-darwin*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set isELF 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      set needsULP 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if { [llength $args] >= 3 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   set required_flags [lindex $args 2]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -876,7 +922,11 @@ proc check-function-bodies { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   remote_upload host "$filename"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if { [file exists $output_filename] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  parse_function_bodies $output_filename functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if { $isELF } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      parse_ELF_function_bodies $output_filename functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      parse_MACHO_function_bodies $output_filename functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   set have_bodies 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   verbose -log "$testcase: output file does not exist"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -921,6 +971,9 @@ proc check-function-bodies { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if { $xfail_all || [string equal $selector "F"] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               setup_xfail "*-*-*"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          if { $needsULP } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              set function_name "_$function_name"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           set testname "$testcase check-function-bodies $function_name"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if { !$have_bodies } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+               unresolved $testname
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/lib/target-libpath.exp b/gcc/testsuite/lib/target-libpath.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d09cd515d20..280ce390845 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/lib/target-libpath.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/lib/target-libpath.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -67,6 +67,7 @@ proc set_ld_library_path_env_vars { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   global orig_dyld_library_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   global orig_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   global orig_gcc_exec_prefix
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  global ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   global env
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Save the original GCC_EXEC_PREFIX.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -133,6 +134,7 @@ proc set_ld_library_path_env_vars { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Doing this is somewhat of a hack as ld_library_path gets repeated in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # SHLIB_PATH and LD_LIBRARY_PATH when unix_load sets these variables.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if { ![istarget *-*-darwin*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if { $orig_ld_library_path_saved } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     setenv LD_LIBRARY_PATH "$ld_library_path:$orig_ld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -166,11 +168,23 @@ proc set_ld_library_path_env_vars { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     setenv LD_LIBRARY_PATH_64 "$ld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if { $orig_dyld_library_path_saved } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    setenv DYLD_LIBRARY_PATH "$ld_library_path:$orig_dyld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    setenv DYLD_LIBRARY_PATH "$ld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if { [istarget *-*-darwin*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if { [info exists ENABLE_DARWIN_AT_RPATH] || [istarget *-*-darwin1\[5-9\]*]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         || [istarget *-*-darwin2*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # Either we are not using DYLD_LIBRARY_PATH or we're on a version of the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # OS for which it is not passed through system exes.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if [info exists env(DYLD_LIBRARY_PATH)] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        unsetenv DYLD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if { $orig_dyld_library_path_saved } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        setenv DYLD_LIBRARY_PATH "$ld_library_path:$orig_dyld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        setenv DYLD_LIBRARY_PATH "$ld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if { [istarget *-*-cygwin*] || [istarget *-*-mingw*] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if { $orig_path_saved } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       setenv PATH "$ld_library_path:$orig_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -179,6 +193,7 @@ proc set_ld_library_path_env_vars { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  verbose -log "set paths"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   verbose -log "LD_LIBRARY_PATH=[getenv LD_LIBRARY_PATH]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   verbose -log "LD_RUN_PATH=[getenv LD_RUN_PATH]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   verbose -log "SHLIB_PATH=[getenv SHLIB_PATH]"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2d5d0539bb4..c70feb83bc8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/lib/target-supports.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/lib/target-supports.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8455,7 +8455,7 @@ proc check_effective_target_section_anchors { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return [check_cached_effective_target section_anchors {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       expr { [istarget powerpc*-*-*]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        || [istarget arm*-*-*]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-       || [istarget aarch64*-*-*] }}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       || ([istarget aarch64*-*-*] && ![istarget aarch64*-*-darwin*]) }}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Return 1 if the target supports atomic operations on "int_128" values.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11496,6 +11496,15 @@ proc check_effective_target_arm_thumb2_ok_no_arm_v8_1_lob { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Return 1 if this is an ARM target where -mabi=ilp32 can be used.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++proc check_effective_target_arm_mabi_ilp32 { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return [check_no_compiler_messages_nocache arm_mabi_ilp32 assembly {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     int main() { return 0; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } "-mabi=ilp32"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Returns 1 if the target is using glibc, 0 otherwise.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ proc check_effective_target_glibc { } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/gnu-api-2-class-meta.mm b/gcc/testsuite/obj-c++.dg/gnu-api-2-class-meta.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 92852c3ecea..e0974539ecf 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/gnu-api-2-class-meta.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/gnu-api-2-class-meta.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,6 +19,7 @@ this behavior may be defined or documented (for example, if class
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "No API#2 pre-Darwin9" { *-*-darwin[5-8]* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "API unsupported" { arm64*-*-darwin* aarch64*-*-darwin* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-DOBJC_OLD_DISPATCH_PROTOTYPES" { target { *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // { dg-additional-options "-Wno-objc-root-class" }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm b/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f6e3d8d22e0..a23968a89b5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,6 +6,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "No API#2 pre-Darwin9" { *-*-darwin[5-8]* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "API unsupported" { arm64*-*-darwin* aarch64*-*-darwin* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-DOBJC_OLD_DISPATCH_PROTOTYPES" { target { *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // { dg-additional-options "-Wno-objc-root-class" }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/torture/strings/const-cfstring-4.mm b/gcc/testsuite/obj-c++.dg/torture/strings/const-cfstring-4.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1155db5f83f..e0dd8062373 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/torture/strings/const-cfstring-4.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/torture/strings/const-cfstring-4.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,4 +18,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __cfstring" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t___CFConstantStringClassReference\n\t.long\t1992\n\t.long\t.*\n\t.long\t19\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t19\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t19\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-10.mm b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-10.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e1dad124cd6..eb89710d890 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-10.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-10.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,4 +33,4 @@ @interface NSConstantString : NSSimpleCString
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._NSConstantString\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._NSConstantString\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-11.mm b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-11.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 30a9228a64e..c1b58dc6cb8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-11.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-11.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,4 +33,4 @@ @interface XStr : XString {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__XStrClassReference\n\t.long\t.*\n\t.long\t5\n\t.data"  { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._XStr\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._XStr\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-9.mm b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-9.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a1a14295e90..8457f46be53 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/obj-c++.dg/torture/strings/const-str-9.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/obj-c++.dg/torture/strings/const-str-9.mm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,4 +25,4 @@ @interface NSConstantString: NSObject {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._NSConstantString\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._NSConstantString\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/gnu-api-2-class-meta.m b/gcc/testsuite/objc.dg/gnu-api-2-class-meta.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6c1c76a87a3..41a48f9c685 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/gnu-api-2-class-meta.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/gnu-api-2-class-meta.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -19,6 +19,7 @@ this behavior may be defined or documented (for example, if class
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "No API#2 pre-Darwin9" { *-*-darwin[5-8]* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "API unsupported" { arm64*-*-darwin* aarch64*-*-darwin* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-Wno-objc-root-class" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-DOBJC_OLD_DISPATCH_PROTOTYPES" { target { *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/gnu-api-2-class.m b/gcc/testsuite/objc.dg/gnu-api-2-class.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d11dae0e6dc..1386ebc2f99 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/gnu-api-2-class.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/gnu-api-2-class.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,6 +6,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-do run } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-skip-if "No API#2 pre-Darwin9" { *-*-darwin[5-8]* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-skip-if "API unsupported" { arm64*-*-darwin* aarch64*-*-darwin* } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-xfail-run-if "Needs OBJC2 ABI" { *-*-darwin* && { lp64 && { ! objc2 } } } { "-fnext-runtime" } { "" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-Wno-objc-root-class" } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-additional-options "-DOBJC_OLD_DISPATCH_PROTOTYPES" { target { *-*-darwin* } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/torture/strings/const-cfstring-4.m b/gcc/testsuite/objc.dg/torture/strings/const-cfstring-4.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1155db5f83f..e0dd8062373 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/torture/strings/const-cfstring-4.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/torture/strings/const-cfstring-4.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,4 +18,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __cfstring" } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t___CFConstantStringClassReference\n\t.long\t1992\n\t.long\t.*\n\t.long\t19\n" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t___CFConstantStringClassReference\n\t.long\t1992\n\t.space 4\n\t.quad\t.*\n\t.quad\t19\n" { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t___CFConstantStringClassReference\n\t.(long|word)\t1992\n\t.space 4\n\t.(quad|xword)\t.*\n\t.(quad|xword)\t19\n} { target { *-*-darwin* && {  lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/torture/strings/const-str-10.m b/gcc/testsuite/objc.dg/torture/strings/const-str-10.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6565dc20007..81b0d326c56 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/torture/strings/const-str-10.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/torture/strings/const-str-10.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,4 +34,4 @@ @interface NSConstantString : NSSimpleCString
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._NSConstantString\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._NSConstantString\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/torture/strings/const-str-11.m b/gcc/testsuite/objc.dg/torture/strings/const-str-11.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2bdb1531e1d..b044b0fd8c7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/torture/strings/const-str-11.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/torture/strings/const-str-11.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -33,4 +33,4 @@ @interface XStr : XString {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__XStrClassReference\n\t.long\t.*\n\t.long\t5\n\t.data"  { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._XStr\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._XStr\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/testsuite/objc.dg/torture/strings/const-str-9.m b/gcc/testsuite/objc.dg/torture/strings/const-str-9.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 966ea5e498d..d3d2916ed06 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/testsuite/objc.dg/torture/strings/const-str-9.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/testsuite/objc.dg/torture/strings/const-str-9.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,4 +25,4 @@ @interface NSConstantString: NSObject {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __OBJC, __cstring_object" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".section __DATA, __objc_stringobj" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* { dg-final { scan-assembler ".long\t__NSConstantStringClassReference\n\t.long\t.*\n\t.long\t5\n\t.data" { target { *-*-darwin* && { ! lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-/* { dg-final { scan-assembler ".quad\t_OBJC_CLASS_._NSConstantString\n\t.quad\t.*\n\t.long\t5\n\t.space" { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* { dg-final { scan-assembler {.(quad|xword)\t_OBJC_CLASS_._NSConstantString\n\t.(quad|xword)\t.*\n\t.(long|word)\t5\n\t.space} { target { *-*-darwin* && { lp64 } } } } } */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/tree-nested.cc b/gcc/tree-nested.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 078ceab3ca3..0308f558036 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/tree-nested.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/tree-nested.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -611,6 +611,14 @@ get_trampoline_type (struct nesting_info *info)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (trampoline_type)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return trampoline_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* When trampolines are created off-stack then the only thing we need in the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     local frame is a single pointer.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (flag_off_stack_trampolines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      trampoline_type = build_pointer_type (void_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      return trampoline_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   align = TRAMPOLINE_ALIGNMENT;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   size = TRAMPOLINE_SIZE;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2786,17 +2794,27 @@ convert_tramp_reference_op (tree *tp, int *walk_subtrees, void *data)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* Compute the address of the field holding the trampoline.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       x = get_frame_field (info, target_context, x, &wi->gsi);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      x = build_addr (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      x = gsi_gimplify_val (info, x, &wi->gsi);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      /* Do machine-specific ugliness.  Normally this will involve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-   computing extra alignment, but it can really be anything.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      if (descr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  builtin = builtin_decl_implicit (BUILT_IN_ADJUST_DESCRIPTOR);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      /* APB: We don't need to do the adjustment calls when using off-stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   trampolines, any such adjustment will be done when the off-stack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   trampoline is created.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!descr && flag_off_stack_trampolines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x = gsi_gimplify_val (info, x, &wi->gsi);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  builtin = builtin_decl_implicit (BUILT_IN_ADJUST_TRAMPOLINE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      call = gimple_build_call (builtin, 1, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      x = init_tmp_var_with_call (info, &wi->gsi, call);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    x = build_addr (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    x = gsi_gimplify_val (info, x, &wi->gsi);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Do machine-specific ugliness.  Normally this will involve
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       computing extra alignment, but it can really be anything.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (descr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      builtin = builtin_decl_implicit (BUILT_IN_ADJUST_DESCRIPTOR);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      builtin = builtin_decl_implicit (BUILT_IN_ADJUST_TRAMPOLINE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    call = gimple_build_call (builtin, 1, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    x = init_tmp_var_with_call (info, &wi->gsi, call);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       /* Cast back to the proper function type.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       x = build1 (NOP_EXPR, TREE_TYPE (t), x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3375,6 +3393,7 @@ build_init_call_stmt (struct nesting_info *info, tree decl, tree field,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ finalize_nesting_tree_1 (struct nesting_info *root)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  gimple_seq cleanup_list = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gimple_seq stmt_list = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   gimple *stmt;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tree context = root->context;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3506,9 +3525,48 @@ finalize_nesting_tree_1 (struct nesting_info *root)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (!field)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       continue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    x = builtin_decl_implicit (BUILT_IN_INIT_TRAMPOLINE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    stmt = build_init_call_stmt (root, i->context, field, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    gimple_seq_add_stmt (&stmt_list, stmt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (flag_off_stack_trampolines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* We pass a whole bunch of arguments to the builtin function that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           creates the off-stack trampoline, these are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           1. The nested function chain value (that must be passed to the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           nested function so it can find the function arguments).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           2. A pointer to the nested function implementation,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           3. The address in the local stack frame where we should write
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           the address of the trampoline.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           When this code was originally written I just kind of threw
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           everything at the builtin, figuring I'd work out what was
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           actually needed later, I think, the stack pointer could
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           certainly be dropped, arguments #2 and #4 are based off the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           stack pointer anyway, so #1 doesn't seem to add much value.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        tree arg1, arg2, arg3;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gcc_assert (DECL_STATIC_CHAIN (i->context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        arg1 = build_addr (root->frame_decl);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        arg2 = build_addr (i->context);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        x = build3 (COMPONENT_REF, TREE_TYPE (field),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    root->frame_decl, field, NULL_TREE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        arg3 = build_addr (x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        x = builtin_decl_implicit (BUILT_IN_NESTED_PTR_CREATED);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        stmt = gimple_build_call (x, 3, arg1, arg2, arg3);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gimple_seq_add_stmt (&stmt_list, stmt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* This call to delete the nested function trampoline is added to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           the cleanup list, and called when we exit the current scope.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        x = builtin_decl_implicit (BUILT_IN_NESTED_PTR_DELETED);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        stmt = gimple_build_call (x, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gimple_seq_add_stmt (&cleanup_list, stmt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* Original code to initialise the on stack trampoline.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        x = builtin_decl_implicit (BUILT_IN_INIT_TRAMPOLINE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        stmt = build_init_call_stmt (root, i->context, field, x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gimple_seq_add_stmt (&stmt_list, stmt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3533,11 +3591,40 @@ finalize_nesting_tree_1 (struct nesting_info *root)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* If we created initialization statements, insert them.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (stmt_list)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      gbind *bind;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      annotate_all_with_location (stmt_list, DECL_SOURCE_LOCATION (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      bind = gimple_seq_first_stmt_as_a_bind (gimple_body (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      gimple_seq_add_seq (&stmt_list, gimple_bind_body (bind));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      gimple_bind_set_body (bind, stmt_list);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (flag_off_stack_trampolines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* Handle the new, off stack trampolines.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gbind *bind;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    annotate_all_with_location (stmt_list, DECL_SOURCE_LOCATION (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    annotate_all_with_location (cleanup_list, DECL_SOURCE_LOCATION (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bind = gimple_seq_first_stmt_as_a_bind (gimple_body (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gimple_seq_add_seq (&stmt_list, gimple_bind_body (bind));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gimple_seq xxx_list = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (cleanup_list != NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        /* We Maybe shouldn't be creating this try/finally if -fno-exceptions is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           in use.  If this is the case, then maybe we should, instead, be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           inserting the cleanup code onto every path out of this function?  Not
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           yet figured out how we would do this.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gtry *t = gimple_build_try (stmt_list, cleanup_list, GIMPLE_TRY_FINALLY);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        gimple_seq_add_stmt (&xxx_list, t);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      xxx_list = stmt_list;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gimple_bind_set_body (bind, xxx_list);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    /* The traditional, on stack trampolines.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gbind *bind;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    annotate_all_with_location (stmt_list, DECL_SOURCE_LOCATION (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bind = gimple_seq_first_stmt_as_a_bind (gimple_body (context));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gimple_seq_add_seq (&stmt_list, gimple_bind_body (bind));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gimple_bind_set_body (bind, stmt_list);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* If a chain_decl was created, then it needs to be registered with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/gcc/tree.cc b/gcc/tree.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3c39be4f501..4b3d0e5cc04 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/gcc/tree.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/gcc/tree.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9745,6 +9745,23 @@ build_common_builtin_nodes (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   "__builtin_nonlocal_goto",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   ECF_NORETURN | ECF_NOTHROW);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tree ptr_ptr_type_node = build_pointer_type (ptr_type_node);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ftype = build_function_type_list (void_type_node,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              ptr_type_node, // void *chain
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              ptr_type_node, // void *func
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              ptr_ptr_type_node, // void **dst
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              NULL_TREE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  local_define_builtin ("__builtin_nested_func_ptr_created", ftype,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  BUILT_IN_NESTED_PTR_CREATED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  "__builtin_nested_func_ptr_created", ECF_NOTHROW);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ftype = build_function_type_list (void_type_node,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              NULL_TREE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  local_define_builtin ("__builtin_nested_func_ptr_deleted", ftype,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  BUILT_IN_NESTED_PTR_DELETED,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  "__builtin_nested_func_ptr_deleted", ECF_NOTHROW);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ftype = build_function_type_list (void_type_node,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                               ptr_type_node, ptr_type_node, NULL_TREE);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   local_define_builtin ("__builtin_setjmp_setup", ftype,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libada/configure b/libada/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 162d9731f26..9c8b133d817 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libada/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libada/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3212,6 +3212,9 @@ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # sets the default TLS model and affects inlining.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   PICFLAG=-fPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    loongarch*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  PICFLAG=-fpic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     mips-sgi-irix6*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # PIC is the default.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d88515e4a03..f29890db275 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -65,8 +65,12 @@ libatomic_version_script =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libatomic_version_dep =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libatomic_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libatomic_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libatomic_la_LDFLAGS = $(libatomic_version_info) $(libatomic_version_script) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libatomic_la_LDFLAGS = $(libatomic_version_info) $(libatomic_version_script) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(lt_host_flags) $(libatomic_darwin_rpath) 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libatomic_la_SOURCES = gload.c gstore.c gcas.c gexch.c glfree.c lock.c init.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   fenv.c fence.c flag.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 80d25653dc7..da4579d5906 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -403,7 +403,10 @@ noinst_LTLIBRARIES = libatomic_convenience.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBAT_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE@libatomic_version_dep = $(top_srcdir)/libatomic.map
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE@libatomic_version_dep = libatomic.map-sun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libatomic_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libatomic_la_LDFLAGS = $(libatomic_version_info) $(libatomic_version_script) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libatomic_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libatomic_la_LDFLAGS = $(libatomic_version_info) $(libatomic_version_script) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(lt_host_flags) $(libatomic_darwin_rpath) 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libatomic_la_SOURCES = gload.c gstore.c gcas.c gexch.c glfree.c lock.c init.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   fenv.c fence.c flag.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/configure b/libatomic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 92853dd8a45..935d5559aed 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -658,6 +658,8 @@ OPT_LDFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SECTION_LDFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_aarch64_lse
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -803,6 +805,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_symvers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1452,6 +1455,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9576,6 +9581,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9593,10 +9639,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11382,7 +11437,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11385 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11440 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11488,7 +11543,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11491 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11546 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11773,6 +11828,15 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For libtool versioning info, format is CURRENT:REVISION:AGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION=3:0:2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15900,6 +15964,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${LIBAT_BUILD_VERSIONED_SHLIB_TRUE}" && test -z "${LIBAT_BUILD_VERSIONED_SHLIB_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"LIBAT_BUILD_VERSIONED_SHLIB\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/configure.ac b/libatomic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5563551aaae..6b9d3085806 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -156,6 +156,8 @@ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_MAINTAINER_MODE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For libtool versioning info, format is CURRENT:REVISION:AGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION=3:0:2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/testsuite/Makefile.in b/libatomic/testsuite/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 333980ec2c1..8bc70562e5b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/testsuite/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/testsuite/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -262,6 +262,7 @@ target_alias = @target_alias@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_cpu = @target_cpu@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_os = @target_os@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_vendor = @target_vendor@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++tmake_file = @tmake_file@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir = @toolexecdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir = @toolexeclibdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ top_build_prefix = @top_build_prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libatomic/testsuite/lib/libatomic.exp b/libatomic/testsuite/lib/libatomic.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 38f3e5673e2..300e5096f79 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libatomic/testsuite/lib/libatomic.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libatomic/testsuite/lib/libatomic.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -152,6 +152,7 @@ proc libatomic_init { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     lappend ALWAYS_CFLAGS "additional_flags=-I${srcdir}/.."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if [istarget *-*-darwin*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  lappend ALWAYS_CFLAGS "additional_flags=-B${blddir}/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lappend ALWAYS_CFLAGS "additional_flags=-shared-libgcc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libbacktrace/Makefile.in b/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 08cdd21fb40..8898251161d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,7 +15,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @SET_MAKE@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Makefile.am -- Backtrace Makefile.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Copyright (C) 2012-2021 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 2012-2022 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Redistribution and use in source and binary forms, with or without
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # modification, are permitted provided that the following conditions are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libbacktrace/configure b/libbacktrace/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 17f470a4bec..957095aaf1b 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libbacktrace/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libbacktrace/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -675,6 +675,8 @@ PIC_FLAG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WARN_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ EXTRA_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BACKTRACE_FILE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIPO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -799,6 +801,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_largefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_cet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1447,6 +1450,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-largefile     omit support for large files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-cet            enable Intel CET in target libraries [default=auto]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-werror        disable building with -Werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9705,6 +9710,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9722,10 +9768,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11511,7 +11566,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11514 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11569 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11617,7 +11672,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11620 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11675 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11856,6 +11911,15 @@ CC="$lt_save_CC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check whether --enable-largefile was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "${enable_largefile+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   enableval=$enable_largefile;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14273,6 +14337,10 @@ if test -z "${HAVE_DWZ_TRUE}" && test -z "${HAVE_DWZ_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"HAVE_DWZ\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${HAVE_ELF_TRUE}" && test -z "${HAVE_ELF_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"HAVE_ELF\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libbacktrace/configure.ac b/libbacktrace/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 597c9705db8..7f89bf33c6b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libbacktrace/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libbacktrace/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -84,6 +84,8 @@ AM_CONDITIONAL(HAVE_DWZ, test "$DWZ" != "")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LT_INIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SYS_LARGEFILE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ backtrace_supported=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6e3a34ff7e2..7ca47394d2d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcc1/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcc1/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -55,6 +55,9 @@ marshall_c_source = marshall-c.hh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ marshall_cxx_source = marshall-cp.hh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1plugin.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcc1plugin_la_LDFLAGS += -nodefaultrpaths -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1plugin_la_SOURCES = libcc1plugin.cc context.cc context.hh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(shared_source) $(marshall_c_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_C)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -65,6 +68,9 @@ libcc1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(CXXFLAGS) $(libcc1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcp1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcp1plugin.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcp1plugin_la_LDFLAGS += -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcp1plugin_la_SOURCES = libcp1plugin.cc context.cc context.hh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(shared_source) $(marshall_cxx_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcp1plugin.lo_CPPFLAGS = $(CPPFLAGS_FOR_CXX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -76,6 +82,9 @@ libcp1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcc1_la_LDFLAGS += -nodefaultrpaths -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1_la_SOURCES = findcomp.cc libcc1.cc libcp1.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           compiler.cc compiler.hh names.cc names.hh $(shared_source) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(marshall_c_source) $(marshall_cxx_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f8f590d71e9..8f666382b62 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcc1/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcc1/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -90,6 +90,9 @@ build_triplet = @build@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_triplet = @host@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_triplet = @target@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @DARWIN_DYNAMIC_LOOKUP_TRUE@am__append_1 = -Wl,-undefined,dynamic_lookup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@am__append_2 = -nodefaultrpaths -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@am__append_3 = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@am__append_4 = -nodefaultrpaths -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ subdir = .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -405,7 +408,8 @@ shared_source = callbacks.cc callbacks.hh connection.cc connection.hh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ marshall_c_source = marshall-c.hh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ marshall_cxx_source = marshall-cp.hh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libcc1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1plugin.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcc1plugin_la_LDFLAGS = -module -export-symbols \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(srcdir)/libcc1plugin.sym $(am__append_2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1plugin_la_SOURCES = libcc1plugin.cc context.cc context.hh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(shared_source) $(marshall_c_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -416,7 +420,8 @@ libcc1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(CXXFLAGS) $(libcc1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libcp1plugin_la_LDFLAGS = -module -export-symbols $(srcdir)/libcp1plugin.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcp1plugin_la_LDFLAGS = -module -export-symbols \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(srcdir)/libcp1plugin.sym $(am__append_3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcp1plugin_la_SOURCES = libcp1plugin.cc context.cc context.hh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(shared_source) $(marshall_cxx_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -428,7 +433,8 @@ libcp1plugin_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(CXXFLAGS) $(libcp1plugin_la_LDFLAGS) $(LTLDFLAGS) -o $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libcc1_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1.sym
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libcc1_la_LDFLAGS = -module -export-symbols $(srcdir)/libcc1.sym \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(am__append_4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libcc1_la_SOURCES = findcomp.cc libcc1.cc libcp1.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           compiler.cc compiler.hh names.cc names.hh $(shared_source) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(marshall_c_source) $(marshall_cxx_source)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcc1/configure b/libcc1/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 01cfb2806da..42fb85a4047 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcc1/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcc1/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -646,6 +646,8 @@ gcc_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ get_gcc_base_ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CET_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ visibility
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ am__fastdepCXX_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ am__fastdepCXX_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -787,6 +789,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_cet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_werror_always
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1439,6 +1442,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-cet            enable Intel CET in host libraries [default=auto]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-werror-always  enable -Werror despite compiler version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-plugin         enable plugin support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8971,6 +8976,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8988,10 +9034,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10777,7 +10832,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10780 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10835 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10883,7 +10938,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10886 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10941 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12165,6 +12220,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12182,12 +12278,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14518,6 +14627,14 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ visibility=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$GXX" = yes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15369,6 +15486,10 @@ if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${DARWIN_DYNAMIC_LOOKUP_TRUE}" && test -z "${DARWIN_DYNAMIC_LOOKUP_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"DARWIN_DYNAMIC_LOOKUP\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libcc1/configure.ac b/libcc1/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 36f5a7e09f1..e8d068e0ac4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libcc1/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libcc1/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -38,6 +38,7 @@ AM_MAINTAINER_MODE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LT_INIT([disable-static])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_PROG_CXX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ visibility=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$GXX" = yes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libffi/Makefile.am b/libffi/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c6d6f849c53..d2ae0c04c7b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libffi/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libffi/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -214,7 +214,12 @@ libffi.map: $(top_srcdir)/libffi.map.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(COMPILE) -D$(TARGET) -DGENERATE_LIBFFI_MAP \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    -E -x assembler-with-cpp -o $@ $(top_srcdir)/libffi.map.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libffi_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(libffi_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libffi_la_DEPENDENCIES = $(libffi_la_LIBADD) $(libffi_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libffi/Makefile.in b/libffi/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5524a6a571e..34e77a45d1a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libffi/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libffi/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -597,7 +597,11 @@ AM_CFLAGS = -Wall -g -fexceptions $(CET_FLAGS) $(am__append_2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map-sun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libffi_version_info = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libffi_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(libffi_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libffi_la_DEPENDENCIES = $(libffi_la_LIBADD) $(libffi_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_CCASFLAGS = $(AM_CPPFLAGS) $(CET_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libffi/configure b/libffi/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 575641cca1d..002320ca302 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libffi/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libffi/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -667,6 +667,8 @@ MAINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ READELF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -810,6 +812,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_pax_emutramp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_debug
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1465,6 +1468,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9766,6 +9771,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9783,10 +9829,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11572,7 +11627,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11575 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11630 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11678,7 +11733,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11681 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11736 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12554,6 +12609,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12571,12 +12667,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14926,6 +15035,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Only expand once:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -n "$ac_tool_prefix"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Extract the first word of "${ac_tool_prefix}readelf", so it can be a program name with args.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17071,6 +17188,10 @@ if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libffi/configure.ac b/libffi/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 014d89d0423..716f20ae313 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libffi/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libffi/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -55,6 +55,7 @@ AC_SUBST(CET_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_AS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_CC_C_O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_TOOL(READELF, readelf)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config.host b/libgcc/config.host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8c56fcae5d2..48eed32e195 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/config.host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config.host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -82,7 +82,7 @@ m32c*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         cpu_type=m32c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file=t-fdpbit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-aarch64*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64*-*-* | arm64*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cpu_type=aarch64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ alpha*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -241,7 +241,46 @@ case ${host} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file t-slibgcc-darwin"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  extra_parts="crt3.o libd10-uwfef.a crttms.o crttme.o libemutls_w.a"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # We are not using libtool to build the libs here, so we need to replicate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # a little of the logic around setting Darwin rpaths.  Setting an explicit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # yes or no is honoured, otherwise we choose a suitable default.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Sadly, this has to be kept in line with the rules in libtool.m4.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # This make fragment will override the setting in t-slibgcc-darwin so it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # must appear after it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test "x$enable_darwin_at_rpath" = "x"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    echo "enable_darwin_at_rpath is unset" 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${host} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      *-darwin[45678]*) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      *-darwin9* | *-darwin1[01234]*) ;; # We might default these on later.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        echo "but is needed after macOS 10.11 (setting it on)" 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    echo "enable_darwin_at_rpath is '$enable_darwin_at_rpath'" 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    tmake_file="$tmake_file t-darwin-rpath "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${host} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-*-darwin2* | *-*-darwin1[89]* | aarch64*-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="t-darwin-min-8 $tmake_file"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-*-darwin9* | *-*-darwin1[0-7]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="t-darwin-min-5 $tmake_file"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-*-darwin[4-8]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="t-darwin-min-1 $tmake_file"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # Fall back to configuring for the oldest system known to work with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # all archs and the current sources.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="t-darwin-min-5 $tmake_file"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "Warning: libgcc configured to support macOS 10.5" 1>&2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="crt3.o crttms.o crttme.o libemutls_w.a"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *-*-dragonfly*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -384,6 +423,17 @@ aarch64*-*-elf | aarch64*-*-rtems*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} ${cpu_type}/t-softfp t-softfp t-crtfm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   md_unwind_header=aarch64/aarch64-unwind.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++aarch64*-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="$extra_parts crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tmake_file="${tmake_file} ${cpu_type}/t-lse "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tmake_file="${tmake_file} ${cpu_type}/t-softfp t-softfp "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tmake_file="${tmake_file} t-crtfm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  md_unwind_header=aarch64/aarch64-unwind.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test x$off_stack_trampolines = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="${tmake_file} ${cpu_type}/t-heap-trampoline"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64*-*-freebsd*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -408,6 +458,9 @@ aarch64*-*-linux*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} ${cpu_type}/t-lse t-slibgcc-libgcc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} ${cpu_type}/t-softfp t-softfp t-crtfm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test x$off_stack_trampolines = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="${tmake_file} ${cpu_type}/t-heap-trampoline"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ aarch64*-*-vxworks7*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -701,12 +754,17 @@ hppa*-*-netbsd*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i[34567]86-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file i386/t-crtpc t-crtfm i386/t-msabi"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="$tm_file i386/darwin-lib.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="$extra_parts libd10-uwfef.a "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ x86_64-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file i386/t-crtpc t-crtfm i386/t-msabi"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="$tm_file i386/darwin-lib.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="$extra_parts libd10-uwfef.a "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test x$off_stack_trampolines = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="${tmake_file} i386/t-heap-trampoline"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i[34567]86-*-elfiamcu)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file i386/t-crtstuff t-softfp-sfdftf i386/32/t-softfp i386/32/t-iamcu i386/t-softfp t-softfp t-dfprules"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -773,6 +831,9 @@ x86_64-*-linux*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="${tmake_file} i386/t-crtpc t-crtfm i386/t-crtstuff t-dfprules"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="${tm_file} i386/elf-lib.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   md_unwind_header=i386/linux-unwind.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if test x$off_stack_trampolines = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tmake_file="${tmake_file} i386/t-heap-trampoline"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ x86_64-*-kfreebsd*-gnu)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1169,12 +1230,14 @@ powerpc-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # We build the darwin10 EH shim for Rosetta (running on x86 machines).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="$tm_file i386/darwin-lib.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file rs6000/t-ppc64-fp rs6000/t-ibm-ldouble"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="$extra_parts libd10-uwfef.a "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crt2.o crt3_2.o libef_ppc.a dw_ppc.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ powerpc64-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # We build the darwin10 EH shim for Rosetta (running on x86 machines).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tm_file="$tm_file i386/darwin-lib.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   tmake_file="$tmake_file rs6000/t-darwin64 rs6000/t-ibm-ldouble"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  extra_parts="$extra_parts libd10-uwfef.a "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extra_parts="$extra_parts crt2.o crt3_2.o libef_ppc.a dw_ppc.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ powerpc*-*-freebsd*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/aarch64/heap-trampoline.c b/libgcc/config/aarch64/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..c8b83681ed7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/aarch64/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,172 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Copyright The GNU Toolchain Authors. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <sys/mman.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdint.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <string.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* For pthread_jit_write_protect_np */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <pthread.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *allocate_trampoline_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int get_trampolines_per_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data *allocate_tramp_ctrl (struct tramp_ctrl_data *parent);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *allocate_trampoline_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void __builtin_nested_func_ptr_created (void *chain, void *func, void **dst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void __builtin_nested_func_ptr_deleted (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__gnu_linux__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static const uint32_t aarch64_trampoline_insns[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd503245f, /* hint    34 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x580000b1, /* ldr     x17, .+20 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x580000d2, /* ldr     x18, .+24 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd61f0220, /* br      x17 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd5033f9f, /* dsb     sy */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd5033fdf /* isb */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static const uint32_t aarch64_trampoline_insns[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd503245f, /* hint    34 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x580000b1, /* ldr     x17, .+20 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x580000d0, /* ldr     x16, .+24 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd61f0220, /* br      x17 */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd5033f9f, /* dsb     sy */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0xd5033fdf /* isb */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#error "Unsupported AArch64 platform for heap trampolines"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct aarch64_trampoline {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  uint32_t insns[6];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  void *func_ptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  void *chain_ptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct tramp_ctrl_data *prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int free_trampolines;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* This will be pointing to an executable mmap'ed page.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct aarch64_trampoline *trampolines;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++get_trampolines_per_page (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return getpagesize() / sizeof(struct aarch64_trampoline);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static _Thread_local struct tramp_ctrl_data *tramp_ctrl_curr = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++allocate_trampoline_page (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  void *page;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__gnu_linux__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = mmap (0, getpagesize (), PROT_WRITE | PROT_EXEC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         MAP_ANON | MAP_PRIVATE, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = mmap (0, getpagesize (), PROT_WRITE | PROT_EXEC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         MAP_ANON | MAP_PRIVATE | MAP_JIT, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = MAP_FAILED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return page;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++allocate_tramp_ctrl (struct tramp_ctrl_data *parent)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct tramp_ctrl_data *p = malloc (sizeof (struct tramp_ctrl_data));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (p == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->trampolines = allocate_trampoline_page ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (p->trampolines == MAP_FAILED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->prev = parent;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->free_trampolines = get_trampolines_per_page();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__builtin_nested_func_ptr_created (void *chain, void *func, void **dst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = allocate_tramp_ctrl (NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr->free_trampolines == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      void *tramp_ctrl = allocate_tramp_ctrl (tramp_ctrl_curr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!tramp_ctrl)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = tramp_ctrl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct aarch64_trampoline *trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    = &tramp_ctrl_curr->trampolines[get_trampolines_per_page ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              - tramp_ctrl_curr->free_trampolines];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Disable write protection for the MAP_JIT regions in this thread (see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     https://developer.apple.com/documentation/apple-silicon/porting-just-in-time-compilers-to-apple-silicon) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pthread_jit_write_protect_np (0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  memcpy (trampoline->insns, aarch64_trampoline_insns,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sizeof(aarch64_trampoline_insns));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  trampoline->func_ptr = func;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  trampoline->chain_ptr = chain;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Re-enable write protection.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pthread_jit_write_protect_np (1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tramp_ctrl_curr->free_trampolines -= 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __builtin___clear_cache ((void *)trampoline->insns,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                     ((void *)trampoline->insns + sizeof(trampoline->insns)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *dst = &trampoline->insns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__builtin_nested_func_ptr_deleted (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tramp_ctrl_curr->free_trampolines += 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr->free_trampolines == get_trampolines_per_page ())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (tramp_ctrl_curr->prev == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      munmap (tramp_ctrl_curr->trampolines, getpagesize());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      struct tramp_ctrl_data *prev = tramp_ctrl_curr->prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      free (tramp_ctrl_curr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/aarch64/lse.S b/libgcc/config/aarch64/lse.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c353ec2215b..4fb6309396f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/config/aarch64/lse.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/aarch64/lse.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,7 +58,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Declare the symbol gating the LSE implementations.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .hidden __aarch64_have_lse_atomics
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .private_extern __aarch64_have_lse_atomics
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Turn size and memory model defines into mnemonic fragments.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if SIZE == 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -139,6 +143,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define BTI_C     hint    34
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Start and end a function.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .macro    STARTFN name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .text
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .balign 16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -162,6 +167,29 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cbz     w(tmp0), \label
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .endm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.macro    STARTFN name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .text
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .balign 16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .private_extern _\name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .cfi_startproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_\name:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  BTI_C
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.endm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.macro    ENDFN name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .cfi_endproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.endm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Branch to LABEL if LSE is disabled.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.macro    JUMP_IF_NOT_LSE label
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  adrp    x(tmp0), ___aarch64_have_lse_atomics@PAGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ldrb    w(tmp0), [x(tmp0), ___aarch64_have_lse_atomics@PAGEOFF]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  cbz     w(tmp0), \label
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++.endm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef L_cas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ STARTFN   NAME(cas)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/aarch64/sfp-machine.h b/libgcc/config/aarch64/sfp-machine.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index be9b42174c4..5dc1827ee3a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/config/aarch64/sfp-machine.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/aarch64/sfp-machine.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -122,6 +122,27 @@ void __sfp_handle_exceptions (int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define ALIASNAME as a strong alias for NAME.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Mach-O doesn't support aliasing, so we build a secondary function for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the alias - we need to do a bit of a dance to find out what the type of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   the arguments is and then apply that to the secondary function.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   If these functions ever return anything but CMPtype we need to revisit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   this... */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef float alias_HFtype __attribute__ ((mode (HF)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef float alias_SFtype __attribute__ ((mode (SF)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef float alias_DFtype __attribute__ ((mode (DF)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++typedef float alias_TFtype __attribute__ ((mode (TF)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ALIAS_SELECTOR \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CMPtype (*) (alias_HFtype, alias_HFtype): (alias_HFtype) 0, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CMPtype (*) (alias_SFtype, alias_SFtype): (alias_SFtype) 0, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CMPtype (*) (alias_DFtype, alias_DFtype): (alias_DFtype) 0, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CMPtype (*) (alias_TFtype, alias_TFtype): (alias_TFtype) 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define strong_alias(name, aliasname) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  CMPtype aliasname (__typeof (_Generic (name, ALIAS_SELECTOR)) a, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++               __typeof (_Generic (name, ALIAS_SELECTOR)) b) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              { return name (a, b); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define strong_alias(name, aliasname) _strong_alias(name, aliasname)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define _strong_alias(name, aliasname) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   extern __typeof (name) aliasname __attribute__ ((alias (#name)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/aarch64/t-darwin b/libgcc/config/aarch64/t-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..f6ecda7b608
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/aarch64/t-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Ensure we have a suitable minimum OS version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++HOST_LIBGCC2_CFLAGS += -mmacosx-version-min=11.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIB2_SIDITI_CONV_FUNCS = yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++BUILD_LIBGCCS1 =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/aarch64/t-heap-trampoline b/libgcc/config/aarch64/t-heap-trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..3f70c2cd0c0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/aarch64/t-heap-trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright The GNU Toolchain Authors.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is part of GCC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# GCC is free software; you can redistribute it and/or modify it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# under the terms of the GNU General Public License as published by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# the Free Software Foundation; either version 3, or (at your option)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# GCC is distributed in the hope that it will be useful, but
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# You should have received a copy of the GNU General Public License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# <http://www.gnu.org/licenses/>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIB2ADD += $(srcdir)/config/aarch64/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++HOST_LIBGCC2_CFLAGS += -mmacosx-version-min=11.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/i386/heap-trampoline.c b/libgcc/config/i386/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..96e13bf828e
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/i386/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,172 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Copyright The GNU Toolchain Authors. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <unistd.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <sys/mman.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdint.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdlib.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <string.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__ && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* For pthread_jit_write_protect_np */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <pthread.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *allocate_trampoline_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int get_trampolines_per_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data *allocate_tramp_ctrl (struct tramp_ctrl_data *parent);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *allocate_trampoline_page (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void __builtin_nested_func_ptr_created (void *chain, void *func, void **dst);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void __builtin_nested_func_ptr_deleted (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static const uint8_t trampoline_insns[] = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* movabs $<chain>,%r11  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x49, 0xbb,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* movabs $<func>,%r10  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x49, 0xba,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* rex.WB jmpq *%r11  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  0x41, 0xff, 0xe3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++union ix86_trampoline {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  uint8_t insns[sizeof(trampoline_insns)];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct __attribute__((packed)) fields {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint8_t insn_0[2];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    void *func_ptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint8_t insn_1[2];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    void *chain_ptr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    uint8_t insn_2[3];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  } fields;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct tramp_ctrl_data *prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int free_trampolines;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* This will be pointing to an executable mmap'ed page.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  union ix86_trampoline *trampolines;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++get_trampolines_per_page (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return getpagesize() / sizeof(union ix86_trampoline);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static _Thread_local struct tramp_ctrl_data *tramp_ctrl_curr = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++allocate_trampoline_page (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  void *page;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__gnu_linux__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = mmap (0, getpagesize (), PROT_WRITE | PROT_EXEC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         MAP_ANON | MAP_PRIVATE, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# if  __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = mmap (0, getpagesize (), PROT_WRITE | PROT_EXEC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         MAP_ANON | MAP_PRIVATE | MAP_JIT, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = mmap (0, getpagesize (), PROT_WRITE | PROT_EXEC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++         MAP_ANON | MAP_PRIVATE, 0, 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  page = MAP_FAILED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return page;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct tramp_ctrl_data *
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++allocate_tramp_ctrl (struct tramp_ctrl_data *parent)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct tramp_ctrl_data *p = malloc (sizeof (struct tramp_ctrl_data));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (p == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->trampolines = allocate_trampoline_page ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (p->trampolines == MAP_FAILED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->prev = parent;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  p->free_trampolines = get_trampolines_per_page();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__builtin_nested_func_ptr_created (void *chain, void *func, void **dst)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = allocate_tramp_ctrl (NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr->free_trampolines == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      void *tramp_ctrl = allocate_tramp_ctrl (tramp_ctrl_curr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (!tramp_ctrl)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = tramp_ctrl;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  union ix86_trampoline *trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    = &tramp_ctrl_curr->trampolines[get_trampolines_per_page ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              - tramp_ctrl_curr->free_trampolines];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__ && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Disable write protection for the MAP_JIT regions in this thread (see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     https://developer.apple.com/documentation/apple-silicon/porting-just-in-time-compilers-to-apple-silicon) */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pthread_jit_write_protect_np (0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  memcpy (trampoline->insns, trampoline_insns,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sizeof(trampoline_insns));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  trampoline->fields.func_ptr = func;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  trampoline->fields.chain_ptr = chain;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __APPLE__ && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 101400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* Re-enable write protection.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  pthread_jit_write_protect_np (1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tramp_ctrl_curr->free_trampolines -= 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __builtin___clear_cache ((void *)trampoline->insns,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                     ((void *)trampoline->insns + sizeof(trampoline->insns)));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *dst = &trampoline->insns;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++void
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__builtin_nested_func_ptr_deleted (void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    abort ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  tramp_ctrl_curr->free_trampolines += 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (tramp_ctrl_curr->free_trampolines == get_trampolines_per_page ())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (tramp_ctrl_curr->prev == NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      munmap (tramp_ctrl_curr->trampolines, getpagesize());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      struct tramp_ctrl_data *prev = tramp_ctrl_curr->prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      free (tramp_ctrl_curr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      tramp_ctrl_curr = prev;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/i386/t-heap-trampoline b/libgcc/config/i386/t-heap-trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..76f438d9529
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/i386/t-heap-trampoline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright The GNU Toolchain Authors.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is part of GCC.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# GCC is free software; you can redistribute it and/or modify it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# under the terms of the GNU General Public License as published by
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# the Free Software Foundation; either version 3, or (at your option)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# any later version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# GCC is distributed in the hope that it will be useful, but
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# WITHOUT ANY WARRANTY; without even the implied warranty of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# General Public License for more details.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# You should have received a copy of the GNU General Public License
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# along with GCC; see the file COPYING3.  If not see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# <http://www.gnu.org/licenses/>.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIB2ADD += $(srcdir)/config/i386/heap-trampoline.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++HOST_LIBGCC2_CFLAGS += -mmacosx-version-min=10.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin b/libgcc/config/t-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 299d26c2c96..a708583d965 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/config/t-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,15 +1,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Set this as a minimum (unless overriden by arch t-files) since it's a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # reasonable lowest common denominator that works for all our archs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-HOST_LIBGCC2_CFLAGS += -mmacosx-version-min=10.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++HOST_LIBGCC2_CFLAGS += $(DARWIN_MIN_LIB_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ crt3.o: $(srcdir)/config/darwin-crt3.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(crt_compile) -mmacosx-version-min=10.4 -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ crttms.o: $(srcdir)/config/darwin-crt-tm.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(crt_compile) -mmacosx-version-min=10.4 -DSTART -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -DSTART -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ crttme.o: $(srcdir)/config/darwin-crt-tm.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(crt_compile) -mmacosx-version-min=10.4 -DEND -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(crt_compile) $(DARWIN_MIN_CRT_VERSION) -DEND -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Make emutls weak so that we can deal with -static-libgcc, override the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # hidden visibility when this is present in libgcc_eh.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,7 +24,8 @@ libemutls_w.a: emutls_s.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(AR_CREATE_FOR_TARGET) $@ $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(RANLIB_FOR_TARGET) $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Patch to __Unwind_Find_Enclosing_Function for Darwin10.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This has to be built for 10.6, even if the toolchain will not target that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ d10-uwfef.o: $(srcdir)/config/darwin10-unwind-find-enc-func.c libgcc_tm.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(crt_compile) -mmacosx-version-min=10.6 -c $<
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin-min-1 b/libgcc/config/t-darwin-min-1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..8c2cf8acd39
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin-min-1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Support building with -mmacosx-version-min back to 10.1.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_LIB_VERSION = -mmacosx-version-min=10.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_CRT_VERSION = -mmacosx-version-min=10.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin-min-4 b/libgcc/config/t-darwin-min-4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..04e980de4d5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin-min-4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Support building with -mmacosx-version-min back to 10.4.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_LIB_VERSION = -mmacosx-version-min=10.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_CRT_VERSION = -mmacosx-version-min=10.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin-min-5 b/libgcc/config/t-darwin-min-5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..138193151e7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin-min-5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Support building with -mmacosx-version-min back to 10.5.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_LIB_VERSION = -mmacosx-version-min=10.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_CRT_VERSION = -mmacosx-version-min=10.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin-min-8 b/libgcc/config/t-darwin-min-8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..9efc9dc0257
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin-min-8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Support building with -mmacosx-version-min back to 10.8.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_LIB_VERSION = -mmacosx-version-min=10.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++DARWIN_MIN_CRT_VERSION = -mmacosx-version-min=10.8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-darwin-rpath b/libgcc/config/t-darwin-rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+new file mode 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00000000000..e73d7f378b0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-darwin-rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,2 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Use @rpath and add a search path to exes and dylibs that depend on this.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++SHLIB_RPATH = @rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/config/t-slibgcc-darwin b/libgcc/config/t-slibgcc-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a8f69666a82..878b5c6c4b4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/config/t-slibgcc-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/config/t-slibgcc-darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Build a shared libgcc library with the darwin linker.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Build a shared libgcc library able to use embedded runpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_SOVERSION = 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_SO_MINVERSION = 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6,7 +6,6 @@ SHLIB_VERSTRING = -compatibility_version $(SHLIB_SO_MINVERSION) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             -current_version $(SHLIB_SOVERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_EXT = .dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_LC = -lSystem
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-SHLIB_INSTALL_DIR = $(slibdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_MKMAP = $(srcdir)/mkmap-flat.awk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_MKMAP_OPTS = -v leading_underscore=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23,11 +22,16 @@ SHLIB_SONAME = @shlib_base_name@$(SHLIB_EXT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # subdir.  The code under MULTIBUILDTOP combines these into a single FAT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # library, that is what we eventually install.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# When enable_darwin_at_rpath is true, use @rpath instead of $(slibdir) for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# this and dylibs that depend on this.  So this def must come first and be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# overridden in a make fragment that depends on the rpath setting.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++SHLIB_RPATH = $(slibdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) $(LDFLAGS) -dynamiclib -nodefaultlibs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  -install_name $(SHLIB_INSTALL_DIR)/$(SHLIB_INSTALL_NAME) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  -install_name $(SHLIB_RPATH)/$(SHLIB_INSTALL_NAME) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -single_module -o $(SHLIB_DIR)/$(SHLIB_SONAME) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -Wl,-exported_symbols_list,$(SHLIB_MAP) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(SHLIB_VERSTRING) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(SHLIB_VERSTRING) -nodefaultrpaths \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @multilib_flags@ @shlib_objs@ $(SHLIB_LC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # we do our own thing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -63,9 +67,9 @@ EHS_INSTNAME = libgcc_ehs.$(SHLIB_SOVERSION)$(SHLIB_EXT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcc_ehs$(SHLIB_EXT): $(LIBEHSOBJS) $(extra-parts)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   mkdir -p $(MULTIDIR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(CC) $(LIBGCC2_CFLAGS) $(LDFLAGS) -dynamiclib -nodefaultlibs \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  -install_name $(SHLIB_INSTALL_DIR)/$(EHS_INSTNAME) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  -install_name $(SHLIB_RPATH)/$(EHS_INSTNAME) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -o $(MULTIDIR)/libgcc_ehs$(SHLIB_EXT) $(SHLIB_VERSTRING) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(LIBEHSOBJS) $(SHLIB_LC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  -nodefaultrpaths $(LIBEHSOBJS) $(SHLIB_LC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ all: libgcc_ehs$(SHLIB_EXT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -121,12 +125,12 @@ libgcc_s.1.dylib: all-multi libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cp ../$${mlib}/libgcc/$${mlib}/libgcc_ehs$(SHLIB_EXT)  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ./libgcc_ehs.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} || exit 1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     arch=`$(LIPO) -info libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} | sed -e 's/.*:\ //'` ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(CC) -arch $${arch} -nodefaultlibs -dynamiclib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(CC) -arch $${arch} -nodefaultlibs -dynamiclib -nodefaultrpaths \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -o libgcc_s.1$(SHLIB_EXT)_T_$${mlib} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -Wl,-reexport_library,libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -Wl,-reexport_library,libgcc_ehs.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      -install_name $(SHLIB_INSTALL_DIR)/libgcc_s.1.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      -compatibility_version 1 -current_version 1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      -install_name $(SHLIB_RPATH)/libgcc_s.1.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      -compatibility_version 1 -current_version 1.1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   done
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIPO) -output libgcc_s.1$(SHLIB_EXT) -create libgcc_s.1$(SHLIB_EXT)_T*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rm libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -140,13 +144,13 @@ libgcc_s.1.dylib: all-multi libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cp ../$${mlib}/libgcc/$${mlib}/libgcc_s$(SHLIB_EXT)  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ./libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} || exit 1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     arch=`$(LIPO) -info libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} | sed -e 's/.*:\ //'` ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    $(CC) -arch $${arch} -nodefaultlibs -dynamiclib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    $(CC) -arch $${arch} -nodefaultlibs -dynamiclib -nodefaultrpaths \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -o libgcc_s.1$(SHLIB_EXT)_T_$${mlib} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -Wl,-reexport_library,libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T_$${mlib} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -lSystem \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       -Wl,-reexported_symbols_list,$(srcdir)/config/darwin-unwind.ver \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      -install_name $(SHLIB_INSTALL_DIR)/libgcc_s.1.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      -compatibility_version 1 -current_version 1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      -install_name $(SHLIB_RPATH)/libgcc_s.1.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      -compatibility_version 1 -current_version 1.1 ; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   done
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIPO) -output libgcc_s.1$(SHLIB_EXT) -create libgcc_s.1$(SHLIB_EXT)_T*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rm libgcc_s.$(SHLIB_SOVERSION)$(SHLIB_EXT)_T*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/configure b/libgcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1f9b2ac578b..a5c228bc3a1 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -630,7 +630,6 @@ LIPO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-enable_gcov
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_subdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_subdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build_subdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -654,6 +653,8 @@ build_cpu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_aix_soname
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_vtable_verify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_gcov
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++off_stack_trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgcc_topdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_alias
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -701,6 +702,8 @@ with_target_subdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_cross_host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_off_stack_trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_gcov
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_vtable_verify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_aix_soname
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_version_specific_runtime_libs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -708,7 +711,6 @@ with_toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_slibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_build_libsubdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-enable_gcov
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_largefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_decimal_float
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_system_libunwind
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1342,12 +1344,15 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-shared        don't provide a shared libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-off-stack-trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  Specify whether to support generating off-stack trampolines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --disable-gcov          don't provide libgcov and related host tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-vtable-verify    Enable vtable verification feature
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-version-specific-runtime-libs    Specify that runtime libraries should be installed in a compiler-specific directory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  --disable-gcov          don't provide libgcov and related host tools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-largefile     omit support for large files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-decimal-float={no,yes,bid,dpd}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   enable decimal float extension to C.  Selecting 'bid'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2252,6 +2257,48 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-off-stack-trampolines was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_off_stack_trampolines+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_off_stack_trampolines;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case "$target" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x86_64-*-linux* | x86_64-*-darwin1[4-9]* | x86_64-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64*-*-linux* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64*-*darwin* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    as_fn_error $? "Configure option --enable-off-stack-trampolines is not supported \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++for this platform" "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case "$target" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Check whether --enable-gcov was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_gcov+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_gcov;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_gcov=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Check whether --enable-vtable-verify was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "${enable_vtable_verify+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   enableval=$enable_vtable_verify; case "$enableval" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/configure.ac b/libgcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2fc9d5d7c93..7d11bf00142 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -68,6 +68,40 @@ AC_ARG_ENABLE(shared,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ], [enable_shared=yes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_ARG_ENABLE([off-stack-trampolines],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [AS_HELP_STRING([--enable-off-stack-trampolines]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  [Specify whether to support generating off-stack trampolines])],[
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case "$target" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  x86_64-*-linux* | x86_64-*-darwin1[[4-9]]* | x86_64-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64*-*-linux* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64*-*darwin* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=$enableval
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    AC_MSG_ERROR([Configure option --enable-off-stack-trampolines is not supported \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++for this platform])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac],[
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case "$target" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin2*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    off_stack_trampolines=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST(off_stack_trampolines)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_ARG_ENABLE(gcov,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[  --disable-gcov          don't provide libgcov and related host tools],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[], [enable_gcov=yes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST(enable_gcov)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_ARG_ENABLE(vtable-verify,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [  --enable-vtable-verify    Enable vtable verification feature ],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [case "$enableval" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/libgcc-std.ver.in b/libgcc/libgcc-std.ver.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 513ddd0bd0d..fc0b4052a3b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/libgcc-std.ver.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/libgcc-std.ver.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1943,4 +1943,7 @@ GCC_4.8.0 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GCC_7.0.0 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   __PFX__divmoddi4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   __PFX__divmodti4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __builtin_nested_func_ptr_created
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  __builtin_nested_func_ptr_deleted
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgcc/libgcc2.h b/libgcc/libgcc2.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fc24ac34502..536e517b62f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgcc/libgcc2.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgcc/libgcc2.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -29,6 +29,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #pragma GCC visibility push(default)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern void __builtin_nested_func_ptr_created (void *, void *, void **);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern void __builtin_nested_func_ptr_deleted (void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int __gcc_bcmp (const unsigned char *, const unsigned char *, size_t);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void __clear_cache (void *, void *);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern void __eprintf (const char *, const char *, unsigned int, const char *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5ce0cd7cd05..cf2aac68f82 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgfortran/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgfortran/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,6 +37,10 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version_arg =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ version_dep =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extra_ldflags_libgfortran += -nodefaultrpaths -nodefaultexports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extra_ldflags_libgfortran += -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfor_c_HEADERS = ISO_Fortran_binding.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfor_cdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgfortran/Makefile.in b/libgfortran/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7ac6bfba657..2d2348a7e1b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgfortran/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgfortran/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -91,8 +91,11 @@ POST_UNINSTALL = :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ build_triplet = @build@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_triplet = @host@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_triplet = @target@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@LIBGFOR_MINIMAL_TRUE@am__append_1 = -DLIBGFOR_MINIMAL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@LIBGFOR_MINIMAL_FALSE@am__append_2 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@am__append_1 = -nodefaultrpaths \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@     -nodefaultexports \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@     -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@LIBGFOR_MINIMAL_TRUE@am__append_2 = -DLIBGFOR_MINIMAL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@LIBGFOR_MINIMAL_FALSE@am__append_3 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@io/close.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@io/file_pos.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@io/format.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -110,7 +113,7 @@ target_triplet = @target@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@io/fbuf.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@io/async.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@LIBGFOR_MINIMAL_FALSE@am__append_3 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@LIBGFOR_MINIMAL_FALSE@am__append_4 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@intrinsics/access.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@intrinsics/c99_functions.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@intrinsics/chdir.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -143,9 +146,9 @@ target_triplet = @target@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@intrinsics/umask.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@intrinsics/unlink.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@IEEE_SUPPORT_TRUE@am__append_4 = ieee/ieee_helper.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@LIBGFOR_MINIMAL_TRUE@am__append_5 = runtime/minimal.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@LIBGFOR_MINIMAL_FALSE@am__append_6 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@IEEE_SUPPORT_TRUE@am__append_5 = ieee/ieee_helper.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@LIBGFOR_MINIMAL_TRUE@am__append_6 = runtime/minimal.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@LIBGFOR_MINIMAL_FALSE@am__append_7 = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@runtime/backtrace.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@runtime/convert_char.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGFOR_MINIMAL_FALSE@runtime/environ.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -157,7 +160,7 @@ target_triplet = @target@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # dummy sources for libtool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@onestep_TRUE@am__append_7 = libgfortran_c.c libgfortran_f.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@onestep_TRUE@am__append_8 = libgfortran_c.c libgfortran_f.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ subdir = .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ am__aclocal_m4_deps = $(top_srcdir)/../config/depstand.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -589,7 +592,7 @@ AMTAR = @AMTAR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Some targets require additional compiler options for IEEE compatibility.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_CFLAGS = @AM_CFLAGS@ -fcx-fortran-rules $(SECTION_FLAGS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(IEEE_FLAGS) $(am__append_1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(IEEE_FLAGS) $(am__append_2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_FCFLAGS = @AM_FCFLAGS@ $(IEEE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AR = @AR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -693,7 +696,8 @@ dvidir = @dvidir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared = @enable_shared@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static = @enable_static@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exec_prefix = @exec_prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-extra_ldflags_libgfortran = @extra_ldflags_libgfortran@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extra_ldflags_libgfortran = @extra_ldflags_libgfortran@ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(am__append_1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ get_gcc_base_ver = @get_gcc_base_ver@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host = @host@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_alias = @host_alias@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -780,7 +784,7 @@ AM_CPPFLAGS = -iquote$(srcdir)/io -I$(srcdir)/$(MULTISRCTOP)../gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         -I$(MULTIBUILDTOP)../libbacktrace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         -I../libbacktrace
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-gfor_io_src = io/size_from_kind.c $(am__append_2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++gfor_io_src = io/size_from_kind.c $(am__append_3)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfor_io_headers = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ io/io.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ io/fbuf.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -802,7 +806,7 @@ gfor_helper_src = intrinsics/associated.c intrinsics/abort.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   intrinsics/selected_int_kind.f90 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   intrinsics/selected_real_kind.f90 intrinsics/trigd.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   intrinsics/unpack_generic.c runtime/in_pack_generic.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  runtime/in_unpack_generic.c $(am__append_3) $(am__append_4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  runtime/in_unpack_generic.c $(am__append_4) $(am__append_5)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @IEEE_SUPPORT_TRUE@gfor_ieee_helper_src = ieee/ieee_helper.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @IEEE_SUPPORT_FALSE@gfor_ieee_src = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @IEEE_SUPPORT_TRUE@gfor_ieee_src = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -811,8 +815,8 @@ gfor_helper_src = intrinsics/associated.c intrinsics/abort.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @IEEE_SUPPORT_TRUE@ieee/ieee_features.F90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gfor_src = runtime/bounds.c runtime/compile_options.c runtime/memory.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  runtime/string.c runtime/select.c $(am__append_5) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(am__append_6)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  runtime/string.c runtime/select.c $(am__append_6) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(am__append_7)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ i_all_c = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(srcdir)/generated/all_l1.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $(srcdir)/generated/all_l2.c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1652,7 +1656,7 @@ intrinsics/random_init.f90
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BUILT_SOURCES = $(gfor_built_src) $(gfor_built_specific_src) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(gfor_built_specific2_src) $(gfor_misc_specifics) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(am__append_7)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(am__append_8)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prereq_SRC = $(gfor_src) $(gfor_built_src) $(gfor_io_src) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(gfor_helper_src) $(gfor_ieee_src) $(gfor_io_headers) $(gfor_specific_src)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgfortran/configure b/libgfortran/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ae64dca3114..56fda916ded 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgfortran/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgfortran/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -655,6 +655,8 @@ extra_ldflags_libgfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_ct_FC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FCFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -824,6 +826,7 @@ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_largefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libquadmath_support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1479,6 +1482,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-largefile     omit support for large files
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libquadmath-support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           disable libquadmath support for Fortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10939,6 +10944,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10956,10 +11002,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12766,7 +12821,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12769 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12824 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12872,7 +12927,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12875 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12930 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13274,6 +13329,14 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We need gfortran to compile parts of the library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14917,6 +14980,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_FC=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14934,10 +15038,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16191,8 +16304,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # extra LD Flags which are required for targets
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    # Darwin needs -single_module when linking libgfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin[4567]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Earlier Darwin needs -single_module when linking libgfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libgfortran=-Wl,-single_module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -28519,6 +28632,10 @@ if test -z "${HAVE_HWCAP_TRUE}" && test -z "${HAVE_HWCAP_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"HAVE_HWCAP\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${LIBGFOR_BUILD_QUAD_TRUE}" && test -z "${LIBGFOR_BUILD_QUAD_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"LIBGFOR_BUILD_QUAD\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgfortran/configure.ac b/libgfortran/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 97cc490cb5e..d96a584cbe6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgfortran/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgfortran/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -282,6 +282,7 @@ LT_LIB_M
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #AC_MSG_NOTICE([====== Finished libtool configuration]) ; sleep 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We need gfortran to compile parts of the library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -291,8 +292,8 @@ AC_PROG_FC(gfortran)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # extra LD Flags which are required for targets
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    # Darwin needs -single_module when linking libgfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-*-darwin[[4567]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Earlier Darwin needs -single_module when linking libgfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libgfortran=-Wl,-single_module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgo/configure b/libgo/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ffe17c9be55..de5c1ac9b3d 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgo/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgo/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -708,6 +708,8 @@ glibgo_toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WERROR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WARN_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CC_FOR_BUILD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11544,7 +11546,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11547 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11549 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11650,7 +11652,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11653 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11655 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13779,6 +13781,14 @@ CC="$lt_save_CC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CC_FOR_BUILD=${CC_FOR_BUILD:-gcc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16321,6 +16331,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${USE_LIBFFI_TRUE}" && test -z "${USE_LIBFFI_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"USE_LIBFFI\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgo/configure.ac b/libgo/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7e2b98ba67c..7b0222bb620 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgo/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgo/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,6 +53,7 @@ AC_LIBTOOL_DLOPEN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CC_FOR_BUILD=${CC_FOR_BUILD:-gcc}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(CC_FOR_BUILD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgomp/Makefile.am b/libgomp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f8b2a06d63e..c88bcd0f8da 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgomp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgomp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -53,9 +53,13 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_version_script =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_version_dep =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libgomp_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_LDFLAGS = $(libgomp_version_info) $(libgomp_version_script) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        $(lt_host_flags) $(libgomp_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_DEPENDENCIES = $(libgomp_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_LINK = $(LINK) $(libgomp_la_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgomp/Makefile.in b/libgomp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 22cb2136a08..14d1714c32c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgomp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgomp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16,7 +16,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Plugins for offload execution, Makefile.am fragment.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# Copyright (C) 2014-2021 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 2014-2022 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Contributed by Mentor Embedded.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -546,8 +546,9 @@ nodist_toolexeclib_HEADERS = libgomp.spec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGOMP_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBGOMP_BUILD_VERSIONED_SHLIB_TRUE@libgomp_version_dep = libgomp.ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @LIBGOMP_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBGOMP_BUILD_VERSIONED_SHLIB_TRUE@libgomp_version_dep = libgomp.ver-sun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libgomp_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_LDFLAGS = $(libgomp_version_info) $(libgomp_version_script) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        $(lt_host_flags) $(libgomp_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_DEPENDENCIES = $(libgomp_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgomp_la_LINK = $(LINK) $(libgomp_la_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgomp/configure b/libgomp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5ef071ea046..e724e9c6c4b 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgomp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgomp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -692,6 +692,8 @@ FC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -832,6 +834,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_cuda_driver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_cuda_driver_include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1493,6 +1496,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9625,6 +9630,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9642,10 +9688,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11431,7 +11486,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11434 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11489 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11537,7 +11592,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11540 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11595 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11798,6 +11853,14 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13473,6 +13536,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_FC=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13490,10 +13594,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_FC="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_FC="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_FC="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_FC="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs_FC=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17213,6 +17326,10 @@ if test -z "${BUILD_INFO_TRUE}" && test -z "${BUILD_INFO_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"BUILD_INFO\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libgomp/configure.ac b/libgomp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a9b1f3973f7..654fca1f445 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libgomp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libgomp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -149,6 +149,7 @@ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_MAINTAINER_MODE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libiberty/aclocal.m4 b/libiberty/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3378316dced..1a00b771fe1 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libiberty/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libiberty/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,10 +12,61 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # PARTICULAR PURPOSE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_CONDITIONAL                                            -*- Autoconf -*-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 1997-2017 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is free software; the Free Software Foundation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# gives unlimited permission to copy and/or distribute it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# with or without modifications, as long as this notice is preserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_CONDITIONAL(NAME, SHELL-CONDITION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# -------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Define a conditional.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([AM_CONDITIONAL],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[AC_PREREQ([2.52])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([$1_TRUE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_SUBST([$1_FALSE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_AM_SUBST_NOTMAKE([$1_TRUE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_AM_SUBST_NOTMAKE([$1_FALSE])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++m4_define([_AM_COND_VALUE_$1], [$2])dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if $2; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $1_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CONFIG_COMMANDS_PRE(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AC_MSG_ERROR([[conditional "$1" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally.]])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi])])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Copyright (C) 2006-2017 Free Software Foundation, Inc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This file is free software; the Free Software Foundation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# gives unlimited permission to copy and/or distribute it,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# with or without modifications, as long as this notice is preserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# _AM_SUBST_NOTMAKE(VARIABLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# ---------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# This macro is traced by Automake.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([_AM_SUBST_NOTMAKE])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# AM_SUBST_NOTMAKE(VARIABLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# --------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Public sister of _AM_SUBST_NOTMAKE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/acx.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/cet.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/enable.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/no-executables.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++m4_include([../config/override.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/picflag.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../config/warnings.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([acinclude.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libiberty/configure b/libiberty/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0a797255c70..a346be40cc2 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libiberty/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libiberty/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -632,6 +632,8 @@ PICFLAG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ INSTALL_DATA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ INSTALL_SCRIPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ INSTALL_PROGRAM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OUTPUT_OPTION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NO_MINUS_C_MINUS_O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_libiberty_warn_cflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2459,6 +2461,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # This works around the fact that libtool configuration may change LD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # for this particular configuration, but some shells, instead of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # keeping the changes in LD private, export them just because LD is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -5046,6 +5051,15 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_config_headers="$ac_config_headers config.h:config.in"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -5208,6 +5222,9 @@ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # sets the default TLS model and affects inlining.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   PICFLAG=-fPIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    loongarch*-*-*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  PICFLAG=-fpic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     mips-sgi-irix6*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # PIC is the default.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7837,6 +7854,10 @@ LTLIBOBJS=$ac_ltlibobjs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libiberty/configure.ac b/libiberty/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 84a7b378fad..4dad84ea77a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libiberty/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libiberty/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -190,6 +190,8 @@ dnl AM_DISABLE_SHARED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl When we start using libtool:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl When we start using automake:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl AM_CONFIG_HEADER(config.h:config.in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CONFIG_HEADER(config.h:config.in)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/Makefile.am b/libitm/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3f31ad30556..712aeec869d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -54,7 +54,10 @@ libitm_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # want or need libstdc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_DEPENDENCIES = $(libitm_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_LINK = $(LINK) $(libitm_la_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libitm_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script) $(libitm_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   aatree.cc alloc.cc alloc_c.cc alloc_cpp.cc barrier.cc beginend.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/Makefile.in b/libitm/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7f53ea9b9db..53e1151410f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -481,7 +481,8 @@ libitm_version_info = -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # want or need libstdc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_DEPENDENCIES = $(libitm_version_dep)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_LINK = $(LINK) $(libitm_la_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libitm_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libitm_la_LDFLAGS = $(libitm_version_info) $(libitm_version_script) $(libitm_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libitm_la_SOURCES = aatree.cc alloc.cc alloc_c.cc alloc_cpp.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   barrier.cc beginend.cc clone.cc eh_cpp.cc local.cc query.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   retry.cc rwlock.cc useraction.cc util.cc sjlj.S tls.cc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/config/aarch64/sjlj.S b/libitm/config/aarch64/sjlj.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 296cb683a9f..941e886143e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/config/aarch64/sjlj.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/config/aarch64/sjlj.S
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,10 +57,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .text
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .align  2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .global _ITM_beginTransaction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .type   _ITM_beginTransaction, %function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ _ITM_beginTransaction:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __MACH__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .global __ITM_beginTransaction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__ITM_beginTransaction:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfi_startproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFI_PAC_KEY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   PAC_AND_BTI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -84,8 +93,13 @@ _ITM_beginTransaction:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Invoke GTM_begin_transaction with the struct we just built.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   mov     x1, sp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bl      GTM_begin_transaction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __MACH__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  bl      _GTM_begin_transaction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#error "unexpected object format"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Return; we don't need to restore any of the call-saved regs.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ldp     x29, x30, [sp], 11*16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfi_adjust_cfa_offset(-11*16)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -95,14 +109,23 @@ _ITM_beginTransaction:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFI_PAC_TOGGLE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ret
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfi_endproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .size   _ITM_beginTransaction, . - _ITM_beginTransaction
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .align  2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .global GTM_longjmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .hidden GTM_longjmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .type   GTM_longjmp, %function
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GTM_longjmp:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif __MACH__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  .private_extern _GTM_longjmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_GTM_longjmp:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* The first parameter becomes the return value (x0).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+      The third parameter is ignored for now.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfi_startproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -126,7 +149,9 @@ GTM_longjmp:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFI_PAC_TOGGLE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   br      x30
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cfi_endproc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __ELF__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   .size   GTM_longjmp, . - GTM_longjmp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* GNU_PROPERTY_AARCH64_* macros from elf.h for use in asm code.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define FEATURE_1_AND 0xc0000000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/configure b/libitm/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 18fc2d3a10a..5beb48a6b99 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -660,6 +660,8 @@ libtool_VERSION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -810,6 +812,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_linux_futex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_tls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1462,6 +1465,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10252,6 +10257,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10269,10 +10315,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12058,7 +12113,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12061 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12116 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12164,7 +12219,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12167 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12222 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13040,6 +13095,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13057,12 +13153,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15414,6 +15523,14 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18172,6 +18289,10 @@ if test -z "${BUILD_INFO_TRUE}" && test -z "${BUILD_INFO_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"BUILD_INFO\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/configure.ac b/libitm/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 78a682376d9..209a025a90e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -157,6 +157,7 @@ AM_CONDITIONAL(BUILD_INFO, test $gcc_cv_prog_makeinfo_modern = "yes")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_MAINTAINER_MODE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/configure.tgt b/libitm/configure.tgt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 06e90973ef3..acaf4f85712 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/configure.tgt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/configure.tgt
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -50,7 +50,7 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Map the target cpu to an ARCH sub-directory.  At the same time,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # work out any special compilation flags as necessary.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case "${target_cpu}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  aarch64*)               ARCH=aarch64 ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  aarch64* | arm64*)      ARCH=aarch64 ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   alpha*)         ARCH=alpha ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rs6000 | powerpc*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   XCFLAGS="${XCFLAGS} -mhtm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/testsuite/lib/libitm.exp b/libitm/testsuite/lib/libitm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6d8e3e71310..906534022eb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/testsuite/lib/libitm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/testsuite/lib/libitm.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -158,6 +158,7 @@ proc libitm_init { args } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if [istarget *-*-darwin*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  lappend ALWAYS_CFLAGS "additional_flags=-B${blddir}/.libs"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lappend ALWAYS_CFLAGS "additional_flags=-shared-libgcc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libitm/testsuite/libitm.c++/c++.exp b/libitm/testsuite/libitm.c++/c++.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f92aa096104..295c5bd4703 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libitm/testsuite/libitm.c++/c++.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libitm/testsuite/libitm.c++/c++.exp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -56,8 +56,10 @@ if { $lang_test_file_found } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Gather a list of all tests.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     set tests [lsort [glob -nocomplain $srcdir/$subdir/*.C]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    set stdcxxadder ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if { $blddir != "" } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   set ld_library_path "$always_ld_library_path:${blddir}/${lang_library_path}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  set stdcxxadder "-B ${blddir}/${lang_library_path}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   set ld_library_path "$always_ld_library_path"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -72,7 +74,7 @@ if { $lang_test_file_found } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Main loop.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    dg-runtest $tests "" $libstdcxx_includes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    dg-runtest $tests $stdcxxadder $libstdcxx_includes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # All done.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libobjc/Makefile.in b/libobjc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0a8764c5046..8d964468588 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libobjc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libobjc/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -264,12 +264,14 @@ LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libobjc$(libsuffix).la: $(OBJS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIBTOOL_LINK) $(CC) -o $@ $(OBJS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -Wc,-shared-libgcc -rpath $(toolexeclibdir) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           -nodefaultrpaths -Wl,-rpath,@loader_path/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -version-info $(LIBOBJC_VERSION) $(extra_ldflags_libobjc) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(LTLDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libobjc_gc$(libsuffix).la: $(OBJS_GC)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(LIBTOOL_LINK) $(CC) -o $@ $(OBJS_GC) $(OBJC_BOEHM_GC_LIBS) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -Wc,-shared-libgcc -rpath $(toolexeclibdir) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          -nodefaultrpaths -Wl,-rpath,@loader_path/  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           -version-info $(LIBOBJC_GC_VERSION) $(extra_ldflags_libobjc) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(LTLDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libobjc/configure b/libobjc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5d1b424a66d..616ed94c8e3 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libobjc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libobjc/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -636,6 +636,8 @@ OBJC_BOEHM_GC_LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OBJC_BOEHM_GC_INCLUDES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OBJC_BOEHM_GC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OBJC_GCFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SET_MAKE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -755,6 +757,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_tls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_objc_gc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_target_bdw_gc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1392,6 +1395,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-tls            Use thread-local storage [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-objc-gc        enable use of Boehm's garbage collector with the GNU
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           Objective-C runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3431,10 +3436,20 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    # Darwin needs -single_module when linking libobjc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin[4567]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Earlier Darwin versions need -single_module when linking libobjc; they
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # do not support @rpath.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libobjc='$(lt_host_flags) -Wl,-single_module'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Otherwise, single_module is the default and multi-module is ignored and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # obsolete.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      extra_ldflags_libobjc='$(lt_host_flags) -Wl,-rpath,@loader_path'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      extra_ldflags_libobjc='$(lt_host_flags)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   *-cygwin*|*-mingw*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Tell libtool to build DLLs on Windows
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libobjc='$(lt_host_flags)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3466,7 +3481,7 @@ case "$host" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case "$enable_cet" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       auto)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Check if target supports multi-byte NOPs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  # and if assembler supports CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # and if compiler and assembler support CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cet_save_CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFLAGS="$CFLAGS -fcf-protection"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8944,6 +8959,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8961,10 +9017,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10771,7 +10836,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10784 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10839 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10877,7 +10942,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10890 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10945 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11149,6 +11214,15 @@ $as_echo "no" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # -------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # -------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11890,6 +11964,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libobjc/configure.ac b/libobjc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f8f577cfbef..e37eb34e662 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libobjc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libobjc/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -148,10 +148,20 @@ m4_rename_force([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # extra LD Flags which are required for targets
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case "${host}" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    # Darwin needs -single_module when linking libobjc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin[[4567]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Earlier Darwin versions need -single_module when linking libobjc; they
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # do not support @rpath.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libobjc='$(lt_host_flags) -Wl,-single_module'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Otherwise, single_module is the default and multi-module is ignored and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # obsolete.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      extra_ldflags_libobjc='$(lt_host_flags) -Wl,-rpath,@loader_path'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      extra_ldflags_libobjc='$(lt_host_flags)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   *-cygwin*|*-mingw*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Tell libtool to build DLLs on Windows
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     extra_ldflags_libobjc='$(lt_host_flags)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -182,6 +192,8 @@ AM_PROG_CC_C_O
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_PROG_MAKE_SET
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # -------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # -------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/configure b/liboffloadmic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index dfa8287fd75..84447cbb7eb 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -639,6 +639,8 @@ link_offloadmic_host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_cv_dlopen_libs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -782,6 +784,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ac_precious_vars='build_alias
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1434,6 +1437,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7900,23 +7905,25 @@ _LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo "$lt_cv_ld_force_load" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    case $host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    rhapsody* | darwin1.[012])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Allow for Darwin 4-7 (macOS 10.0-10.3) although these are not expect to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # build without first building modern cctools / linker.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case $host_cpu-$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-rhapsody* | *-darwin1.[012])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    darwin1.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-darwin1.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    darwin*) # darwin 5.x on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # if running on 10.5 or later, the deployment target defaults
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # to the OS version, if on x86, and 10.4, the deployment
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # target defaults to 10.4. Don't you love it?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  10.0,*86*-darwin8*|10.0,*-darwin[91]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # darwin 5.x (macOS 10.1) onwards we only need to adjust when the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # deployment target is forced to an earlier version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  UNSET,*-darwin[89]*|UNSET,*-darwin[12][0123456789]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   10.[012][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  10.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if test "$lt_cv_apple_cc_single_mod" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9614,6 +9621,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9631,10 +9679,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11420,7 +11477,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11433 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11480 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11526,7 +11583,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11539 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11586 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12402,6 +12459,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12419,12 +12517,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14265,16 +14376,6 @@ freebsd* | dragonfly*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-gnu*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  soname_spec='${libname}${release}${shared_ext}$major'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  shlibpath_var=LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  hardcode_into_libs=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ haiku*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14396,7 +14497,7 @@ linux*oldld* | linux*aout* | linux*coff*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # project, but have not yet been accepted: they are GCC-local changes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # for the time being.  (See
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://lists.gnu.org/archive/html/libtool-patches/2018-05/msg00000.html)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14784,6 +14885,15 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Only expand once:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Forbid libtool to hardcode RPATH, because we want to be able to specify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # library search directory using LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ hardcode_into_libs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14999,6 +15109,10 @@ if test -z "${LIBOFFLOADMIC_HOST_TRUE}" && test -z "${LIBOFFLOADMIC_HOST_FALSE}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"LIBOFFLOADMIC_HOST\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/configure.ac b/liboffloadmic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f64f182e8ef..b96e7eaf9e3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -118,6 +118,8 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_LIBTOOL_DLOPEN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Forbid libtool to hardcode RPATH, because we want to be able to specify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # library search directory using LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ hardcode_into_libs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/plugin/Makefile.in b/liboffloadmic/plugin/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8d5ad0025c2..c53f2d32b3b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/plugin/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/plugin/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -123,10 +123,10 @@ subdir = .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ am__aclocal_m4_deps = $(top_srcdir)/../../config/acx.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../config/depstand.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  $(top_srcdir)/../../config/toolexeclibdir.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../config/lead-dot.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../config/multi.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../config/override.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(top_srcdir)/../../config/toolexeclibdir.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../libtool.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../ltoptions.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_srcdir)/../../ltsugar.m4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/plugin/aclocal.m4 b/liboffloadmic/plugin/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9fa1d1216c1..1bb91402f66 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/plugin/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/plugin/aclocal.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1169,10 +1169,10 @@ AC_SUBST([am__untar])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../config/acx.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../config/depstand.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-m4_include([../../config/toolexeclibdir.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../config/lead-dot.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../config/multi.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../config/override.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++m4_include([../../config/toolexeclibdir.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../libtool.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../ltoptions.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_include([../../ltsugar.m4])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/plugin/configure b/liboffloadmic/plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0b21d7d4eed..a9416401a65 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -635,6 +635,8 @@ LIBOBJS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ get_gcc_base_ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -778,6 +780,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ac_precious_vars='build_alias
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1431,6 +1434,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7280,23 +7285,25 @@ _LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ $as_echo "$lt_cv_ld_force_load" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    case $host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    rhapsody* | darwin1.[012])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Allow for Darwin 4-7 (macOS 10.0-10.3) although these are not expect to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # build without first building modern cctools / linker.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case $host_cpu-$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-rhapsody* | *-darwin1.[012])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    darwin1.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-darwin1.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    darwin*) # darwin 5.x on
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # if running on 10.5 or later, the deployment target defaults
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # to the OS version, if on x86, and 10.4, the deployment
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      # target defaults to 10.4. Don't you love it?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  10.0,*86*-darwin8*|10.0,*-darwin[91]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # darwin 5.x (macOS 10.1) onwards we only need to adjust when the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      # deployment target is forced to an earlier version.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  UNSET,*-darwin[89]*|UNSET,*-darwin[12][0123456789]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   10.[012][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  10.*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  *)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if test "$lt_cv_apple_cc_single_mod" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9261,6 +9268,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9278,10 +9326,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11067,7 +11124,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11080 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11127 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11173,7 +11230,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11186 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11233 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12049,6 +12106,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12066,12 +12164,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13912,16 +14023,6 @@ freebsd* | dragonfly*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-gnu*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  soname_spec='${libname}${release}${shared_ext}$major'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  shlibpath_var=LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  hardcode_into_libs=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ haiku*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14043,7 +14144,7 @@ linux*oldld* | linux*aout* | linux*coff*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # project, but have not yet been accepted: they are GCC-local changes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # for the time being.  (See
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://lists.gnu.org/archive/html/libtool-patches/2018-05/msg00000.html)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14431,6 +14532,15 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Only expand once:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Forbid libtool to hardcode RPATH, because we want to be able to specify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # library search directory using LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ hardcode_into_libs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14634,6 +14744,10 @@ if test -z "${PLUGIN_HOST_TRUE}" && test -z "${PLUGIN_HOST_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"PLUGIN_HOST\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/liboffloadmic/plugin/configure.ac b/liboffloadmic/plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index cbcd0130d05..3329b03638d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/liboffloadmic/plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/liboffloadmic/plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -134,6 +134,8 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_LIBTOOL_DLOPEN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Forbid libtool to hardcode RPATH, because we want to be able to specify
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # library search directory using LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ hardcode_into_libs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/configure b/libphobos/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9da06f087d0..9fbb3c91e93 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -707,6 +707,8 @@ get_gcc_base_ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ phobos_compiler_shared_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ phobos_compiler_pic_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ phobos_lt_pic_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -838,6 +840,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_libatomic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1490,6 +1493,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-werror         turns on -Werror [default=no]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-version-specific-runtime-libs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           Specify that runtime libraries should be installed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9944,6 +9949,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9961,10 +10007,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11750,7 +11805,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11753 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11808 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11856,7 +11911,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11859 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11914 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13381,6 +13436,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_D=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_D=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_D=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13398,10 +13494,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_D="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_D="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_D="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_D="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_D="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_D="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_D="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_D="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_D="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_D="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_D="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_D="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs_D=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14002,6 +14107,14 @@ CFLAGS=$lt_save_CFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # libtool variables for Phobos shared and position-independent compiles.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15726,6 +15839,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${DRUNTIME_CPU_AARCH64_TRUE}" && test -z "${DRUNTIME_CPU_AARCH64_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"DRUNTIME_CPU_AARCH64\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/configure.ac b/libphobos/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 31209ba2920..cc372587939 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -93,6 +93,7 @@ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WITH_LOCAL_DRUNTIME([LT_LANG([D])], [])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # libtool variables for Phobos shared and position-independent compiles.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/libdruntime/Makefile.am b/libphobos/libdruntime/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6ca4012b713..861ec0ebc03 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/libdruntime/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/libdruntime/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -128,8 +128,11 @@ ALL_DRUNTIME_SOURCES = $(DRUNTIME_DSOURCES) $(DRUNTIME_CSOURCES) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclib_LTLIBRARIES = libgdruntime.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_SOURCES = $(ALL_DRUNTIME_SOURCES)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LIBTOOLFLAGS =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libgdruntime_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../src,-Bgcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    -version-info $(libtool_VERSION) $(libgdruntime_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LIBADD = $(LIBATOMIC) $(LIBBACKTRACE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_DEPENDENCIES = $(DRTSTUFF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Also override library link commands: This is not strictly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/libdruntime/Makefile.in b/libphobos/libdruntime/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f7f78d71ff7..9f3361c7702 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/libdruntime/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/libdruntime/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -805,8 +805,9 @@ ALL_DRUNTIME_SOURCES = $(DRUNTIME_DSOURCES) $(DRUNTIME_CSOURCES) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclib_LTLIBRARIES = libgdruntime.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_SOURCES = $(ALL_DRUNTIME_SOURCES)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LIBTOOLFLAGS = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libgdruntime_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../src,-Bgcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    -version-info $(libtool_VERSION) $(libgdruntime_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_LIBADD = $(LIBATOMIC) $(LIBBACKTRACE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgdruntime_la_DEPENDENCIES = $(DRTSTUFF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/src/Makefile.am b/libphobos/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index da7a2004ff8..a47d985c5b7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -44,8 +44,11 @@ toolexeclib_DATA = libgphobos.spec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclib_LTLIBRARIES = libgphobos.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_SOURCES = $(ALL_PHOBOS_SOURCES)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_LIBTOOLFLAGS =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libgphobos_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../libdruntime/gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    -version-info $(libtool_VERSION) $(libgphobos_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if ENABLE_LIBDRUNTIME_ONLY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_LIBADD = ../libdruntime/libgdruntime_convenience.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libphobos/src/Makefile.in b/libphobos/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6f58fee01ac..212ea2469f2 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libphobos/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libphobos/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -528,8 +528,9 @@ toolexeclib_DATA = libgphobos.spec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclib_LTLIBRARIES = libgphobos.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_SOURCES = $(ALL_PHOBOS_SOURCES)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_LIBTOOLFLAGS = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libgphobos_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libgphobos_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../libdruntime/gcc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    -version-info $(libtool_VERSION)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    -version-info $(libtool_VERSION) $(libgphobos_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @ENABLE_LIBDRUNTIME_ONLY_FALSE@libgphobos_la_LIBADD = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @ENABLE_LIBDRUNTIME_ONLY_FALSE@    ../libdruntime/libgdruntime_convenience.la $(LIBZ)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libquadmath/Makefile.am b/libquadmath/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 35dffb46f6e..42ba16004b5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libquadmath/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libquadmath/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -36,8 +36,12 @@ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclib_LTLIBRARIES = libquadmath.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libquadmath_la_LIBADD = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libquadmath_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libquadmath_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                   $(version_arg) $(lt_host_flags) -lm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(version_arg) $(lt_host_flags) $(LIBM) $(libquadmath_darwin_rpath) 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libquadmath_la_DEPENDENCIES = $(version_dep) $(libquadmath_la_LIBADD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ nodist_libsubinclude_HEADERS = quadmath.h quadmath_weak.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libquadmath/Makefile.in b/libquadmath/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8c011212258..600cdcf1319 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libquadmath/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libquadmath/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -355,6 +355,7 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LD = @LD@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS = @LDFLAGS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBM = @LIBM@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBOBJS = @LIBOBJS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBS = @LIBS@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBTOOL = @LIBTOOL@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -463,8 +464,9 @@ AUTOMAKE_OPTIONS = foreign info-in-builddir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@version_dep = quadmath.map-sun
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@toolexeclib_LTLIBRARIES = libquadmath.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@libquadmath_la_LIBADD = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@BUILD_LIBQUADMATH_TRUE@@ENABLE_DARWIN_AT_RPATH_TRUE@libquadmath_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@libquadmath_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-@BUILD_LIBQUADMATH_TRUE@                   $(version_arg) $(lt_host_flags) -lm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@BUILD_LIBQUADMATH_TRUE@  $(version_arg) $(lt_host_flags) $(LIBM) $(libquadmath_darwin_rpath) 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@libquadmath_la_DEPENDENCIES = $(version_dep) $(libquadmath_la_LIBADD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @BUILD_LIBQUADMATH_TRUE@nodist_libsubinclude_HEADERS = quadmath.h quadmath_weak.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libquadmath/configure b/libquadmath/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b3ee64f9c7d..23a99be108f 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libquadmath/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libquadmath/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -644,11 +644,14 @@ LIBQUAD_USE_SYMVER_GNU_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBQUAD_USE_SYMVER_GNU_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBQUAD_USE_SYMVER_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBQUAD_USE_SYMVER_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MAINTAINER_MODE_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -785,6 +788,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_maintainer_mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_symvers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1435,6 +1439,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-maintainer-mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           enable make rules and dependencies not useful (and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           sometimes confusing) to the casual installer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8979,6 +8985,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8996,10 +9043,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10806,7 +10862,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10819 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10865 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10912,7 +10968,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10925 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10971 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11173,6 +11229,14 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12137,6 +12201,148 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBM=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++case $host in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # These system don't have libm, or don't need it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*-ncr-sysv4.3*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _mwvalidcheckl in -lmw" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo_n "checking for _mwvalidcheckl in -lmw... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ${ac_cv_lib_mw__mwvalidcheckl+:} false; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $as_echo_n "(cached) " >&6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_check_lib_save_LIBS=$LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS="-lmw  $LIBS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test x$gcc_no_link = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Override any GCC internal prototype to avoid an error.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   Use char because int might match the return type of a GCC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   builtin and then its argument prototype would still apply.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern "C"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++char _mwvalidcheckl ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++main ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++return _mwvalidcheckl ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ac_fn_c_try_link "$LINENO"; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_mw__mwvalidcheckl=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_mw__mwvalidcheckl=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rm -f core conftest.err conftest.$ac_objext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS=$ac_check_lib_save_LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mw__mwvalidcheckl" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "$ac_cv_lib_mw__mwvalidcheckl" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "x$ac_cv_lib_mw__mwvalidcheckl" = xyes; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  LIBM="-lmw"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo_n "checking for cos in -lm... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ${ac_cv_lib_m_cos+:} false; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $as_echo_n "(cached) " >&6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_check_lib_save_LIBS=$LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS="-lm  $LIBS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test x$gcc_no_link = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Override any GCC internal prototype to avoid an error.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   Use char because int might match the return type of a GCC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   builtin and then its argument prototype would still apply.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern "C"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++char cos ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++main ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++return cos ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ac_fn_c_try_link "$LINENO"; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_m_cos=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_m_cos=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rm -f core conftest.err conftest.$ac_objext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS=$ac_check_lib_save_LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "$ac_cv_lib_m_cos" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "x$ac_cv_lib_m_cos" = xyes; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  LIBM="$LIBM -lm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo_n "checking for cos in -lm... " >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ${ac_cv_lib_m_cos+:} false; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $as_echo_n "(cached) " >&6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_check_lib_save_LIBS=$LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS="-lm  $LIBS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test x$gcc_no_link = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* end confdefs.h.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Override any GCC internal prototype to avoid an error.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   Use char because int might match the return type of a GCC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   builtin and then its argument prototype would still apply.  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern "C"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++char cos ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++main ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++return cos ();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_ACEOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ac_fn_c_try_link "$LINENO"; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_m_cos=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ac_cv_lib_m_cos=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++rm -f core conftest.err conftest.$ac_objext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    conftest$ac_exeext conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++LIBS=$ac_check_lib_save_LIBS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++$as_echo "$ac_cv_lib_m_cos" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "x$ac_cv_lib_m_cos" = xyes; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  LIBM="-lm"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for ac_header in fenv.h langinfo.h locale.h wchar.h wctype.h limits.h ctype.h printf.h errno.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ do :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13031,7 +13237,7 @@ case "$host" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case "$enable_cet" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       auto)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Check if target supports multi-byte NOPs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  # and if assembler supports CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # and if compiler and assembler support CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cet_save_CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFLAGS="$CFLAGS -fcf-protection"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13397,6 +13603,10 @@ if test -z "${BUILD_INFO_TRUE}" && test -z "${BUILD_INFO_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"BUILD_INFO\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libquadmath/configure.ac b/libquadmath/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index eec4084a45f..94a3f2179e9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libquadmath/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libquadmath/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -59,6 +59,7 @@ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_MAINTAINER_MODE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -121,6 +122,8 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(toolexecdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(toolexeclibdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CHECK_LIBM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_HEADERS(fenv.h langinfo.h locale.h wchar.h wctype.h limits.h ctype.h printf.h errno.h)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBQUAD_CHECK_MATH_H_SIGNGAM
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/Makefile.in b/libsanitizer/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index aab88deb6e8..65e7f2e9553 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -345,7 +345,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/asan/Makefile.am b/libsanitizer/asan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4f802f723d6..268fd7f0ef6 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/asan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/asan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -60,7 +60,11 @@ libasan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libasan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libasan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libasan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libasan) $(libasan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libasan_preinit.o: asan_preinit.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cp $< $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/asan/Makefile.in b/libsanitizer/asan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2476fbc5a26..b78873f84b9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/asan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/asan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -399,7 +399,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -466,7 +465,10 @@ libasan_la_LIBADD =  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/sanitizer_common/libsanitizer_common.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/lsan/libsanitizer_lsan.la $(am__append_2) \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(am__append_3) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libasan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libasan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libasan) $(libasan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/configure b/libsanitizer/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 771b135573a..dfd99e34288 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -666,6 +666,8 @@ LSAN_SUPPORTED_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LSAN_SUPPORTED_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TSAN_SUPPORTED_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TSAN_SUPPORTED_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CXXCPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -817,6 +819,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_cet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1471,6 +1474,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-werror        disable building with -Werror
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-cet            enable Intel CET in target libraries [default=auto]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10553,6 +10558,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10570,10 +10616,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12359,7 +12414,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12362 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12417 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12465,7 +12520,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12468 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12523 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13341,6 +13396,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13358,12 +13454,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15763,6 +15872,15 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # The cast to long int works around a bug in the HP C Compiler
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -17152,6 +17270,10 @@ if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${TSAN_SUPPORTED_TRUE}" && test -z "${TSAN_SUPPORTED_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"TSAN_SUPPORTED\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/configure.ac b/libsanitizer/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7f1ef3979c4..3549b904c62 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -85,6 +85,8 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_SIZEOF([void *])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "${multilib}" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/hwasan/Makefile.am b/libsanitizer/hwasan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e12c0a0ce71..4061078c734 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/hwasan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/hwasan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -46,7 +46,11 @@ libhwasan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libhwasan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libhwasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libhwasan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libhwasan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libhwasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libhwasan) $(libhwasan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/hwasan/Makefile.in b/libsanitizer/hwasan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 67553f3979d..d20f2dc6eef 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/hwasan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/hwasan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -387,7 +387,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -442,7 +441,10 @@ libhwasan_la_SOURCES = $(hwasan_files)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libhwasan_la_LIBADD =  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/sanitizer_common/libsanitizer_common.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(am__append_1) $(am__append_2) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libhwasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libhwasan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libhwasan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libhwasan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libhwasan) $(libhwasan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/interception/Makefile.in b/libsanitizer/interception/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bce788aeea7..85dd386de47 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/interception/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/interception/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -317,7 +317,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/libbacktrace/Makefile.in b/libsanitizer/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ece4f11a855..c0243fa4aab 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/libbacktrace/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -367,7 +367,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/lsan/Makefile.am b/libsanitizer/lsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6ff28ff5eea..34a9f7b9977 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/lsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/lsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -41,8 +41,11 @@ if LIBBACKTRACE_SUPPORTED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ liblsan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ liblsan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-liblsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_liblsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++liblsan_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++liblsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_liblsan) $(liblsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ liblsan_preinit.o: lsan_preinit.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cp $< $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/lsan/Makefile.in b/libsanitizer/lsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 857f244cd86..25724669c0b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/lsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/lsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -362,7 +362,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -414,7 +413,10 @@ liblsan_la_LIBADD =  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/sanitizer_common/libsanitizer_common.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/interception/libinterception.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(am__append_1) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-liblsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_liblsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@liblsan_darwin_rpath = -Wl,-rpath,@loader_path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++liblsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_liblsan) $(liblsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -789,7 +791,6 @@ uninstall-am: uninstall-nodist_toolexeclibHEADERS \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ .PRECIOUS: Makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ liblsan_preinit.o: lsan_preinit.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cp $< $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/sanitizer_common/Makefile.in b/libsanitizer/sanitizer_common/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c4b009fed83..e5e1c1d51fe 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/sanitizer_common/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/sanitizer_common/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -354,7 +354,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/tsan/Makefile.am b/libsanitizer/tsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ae588a67df6..47ee50bee1a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/tsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/tsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -58,7 +58,11 @@ libtsan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtsan_la_DEPENDENCIES +=$(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtsan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libtsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libtsan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libtsan) $(libtsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtsan_preinit.o: tsan_preinit.o
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cp $< $@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/tsan/Makefile.in b/libsanitizer/tsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 538d2e8eb68..d6efff71e2f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/tsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/tsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -391,7 +391,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -466,7 +465,10 @@ libtsan_la_DEPENDENCIES =  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/sanitizer_common/libsanitizer_common.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/interception/libinterception.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(TSAN_TARGET_DEPENDENT_OBJECTS) $(am__append_2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libtsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libtsan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libtsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libtsan) $(libtsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/ubsan/Makefile.am b/libsanitizer/ubsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d480f26adc0..75aceecdfc3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/ubsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/ubsan/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -36,7 +36,11 @@ if LIBBACKTRACE_SUPPORTED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libubsan_la_LIBADD += $(top_builddir)/libbacktrace/libsanitizer_libbacktrace.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libubsan_la_LIBADD += $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libubsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libubsan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libubsan) $(libubsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Use special rules for files that require RTTI support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ubsan_handlers_cxx.% ubsan_type_hash.% ubsan_type_hash_itanium.% : AM_CXXFLAGS += -frtti
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libsanitizer/ubsan/Makefile.in b/libsanitizer/ubsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 497e0338696..1cc3b1b60bd 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libsanitizer/ubsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libsanitizer/ubsan/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -356,7 +356,6 @@ pdfdir = @pdfdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ prefix = @prefix@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ program_transform_name = @program_transform_name@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ psdir = @psdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-runstatedir = @runstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sbindir = @sbindir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sharedstatedir = @sharedstatedir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ srcdir = @srcdir@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -401,7 +400,10 @@ libubsan_la_SOURCES = $(ubsan_files)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libubsan_la_LIBADD =  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/sanitizer_common/libsanitizer_common.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(am__append_1) $(am__append_2) $(LIBSTDCXX_RAW_CXX_LDFLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(link_libubsan)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libubsan_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libubsan_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  $(link_libubsan) $(libubsan_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Work around what appears to be a GNU make bug handling MAKEFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # values defined in terms of make variables, as is the case for CC and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libssp/Makefile.am b/libssp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 945dc3c8336..0b99d97bd2d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libssp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libssp/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,8 +49,11 @@ libssp_la_SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   vsnprintf-chk.c vsprintf-chk.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_LIBADD = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_DEPENDENCIES = $(version_dep) $(libssp_la_LIBADD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libssp_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-              $(version_arg) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              $(version_arg) $(lt_host_flags) $(libssp_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_nonshared_la_SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ssp-local.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libssp/Makefile.in b/libssp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bc8a0dc2b28..073227093c2 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libssp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libssp/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -376,8 +376,9 @@ libssp_la_SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_LIBADD = 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_DEPENDENCIES = $(version_dep) $(libssp_la_LIBADD)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libssp_darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-              $(version_arg) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++              $(version_arg) $(lt_host_flags) $(libssp_darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libssp_nonshared_la_SOURCES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ssp-local.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libssp/configure b/libssp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 10ba209bde8..5d62fef54a1 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libssp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libssp/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -636,6 +636,8 @@ LIBOBJS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ get_gcc_base_ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -781,6 +783,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1426,6 +1429,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4338,7 +4343,7 @@ case "$host" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case "$enable_cet" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       auto)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Check if target supports multi-byte NOPs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  # and if assembler supports CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # and if compiler and assembler support CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cet_save_CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFLAGS="$CFLAGS -fcf-protection"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9165,6 +9170,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9182,10 +9228,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10992,7 +11047,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11005 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11050 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11098,7 +11153,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 11111 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 11156 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11376,6 +11431,15 @@ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Calculate toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Also toolexecdir, though it's only used in toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case ${version_specific_libs} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11585,6 +11649,10 @@ if test -z "${LIBSSP_USE_SYMVER_SUN_TRUE}" && test -z "${LIBSSP_USE_SYMVER_SUN_F
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"LIBSSP_USE_SYMVER_SUN\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libssp/configure.ac b/libssp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f30f81c54f6..90778e2355d 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libssp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libssp/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -165,6 +165,8 @@ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GCC_WITH_TOOLEXECLIBDIR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Calculate toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Also toolexecdir, though it's only used in toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case ${version_specific_libs} in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9b94fd71e42..de17a6636f7 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libstdc++-v3/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libstdc++-v3/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -786,6 +786,8 @@ GLIBCXX_HOSTED_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ glibcxx_compiler_shared_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ glibcxx_compiler_pic_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ glibcxx_lt_pic_flag
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -921,6 +923,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_hosted_libstdcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libstdcxx_verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libstdcxx_pch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1608,6 +1611,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-hosted-libstdcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           only build freestanding C++ runtime support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libstdcxx-verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10364,6 +10369,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10381,10 +10427,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12191,7 +12246,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12194 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12249 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12297,7 +12352,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12300 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12355 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13179,6 +13234,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13196,12 +13292,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15578,6 +15687,14 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$enable_vtable_verify" = yes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   predep_objects_CXX="${predep_objects_CXX} ${glibcxx_builddir}/../libgcc/vtv_start.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15981,7 +16098,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Fake what AC_TRY_COMPILE does.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 15984 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16101 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   typedef bool atomic_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16016,7 +16133,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rm -f conftest*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 16019 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16136 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   typedef short atomic_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16051,7 +16168,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rm -f conftest*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 16054 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16171 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // NB: _Atomic_word not necessarily int.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16087,7 +16204,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     rm -f conftest*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 16090 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16207 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   typedef long long atomic_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16243,7 +16360,7 @@ $as_echo "mutex" >&6; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # unnecessary for this test.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 16246 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16363 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _Decimal32 d1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16285,7 +16402,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # unnecessary for this test.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext << EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 16288 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 16405 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ template<typename T1, typename T2>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   struct same
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   { typedef T2 type; };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -78983,6 +79100,10 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${GLIBCXX_HOSTED_TRUE}" && test -z "${GLIBCXX_HOSTED_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"GLIBCXX_HOSTED\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e59bcdb2944..f3dda5a4ff9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libstdc++-v3/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libstdc++-v3/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -99,6 +99,7 @@ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test "$enable_vtable_verify" = yes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   predep_objects_CXX="${predep_objects_CXX} ${glibcxx_builddir}/../libgcc/vtv_start.o"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libstdc++-v3/include/experimental/bits/fs_path.h b/libstdc++-v3/include/experimental/bits/fs_path.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b0825ba76e8..19d246100cb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libstdc++-v3/include/experimental/bits/fs_path.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libstdc++-v3/include/experimental/bits/fs_path.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -140,10 +140,10 @@ namespace __detail
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     inline _Source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     _S_range_begin(_Source __begin) { return __begin; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  struct __null_terminated { };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  struct __nul_terminated { };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   template<typename _Source>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    inline __null_terminated
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    inline __nul_terminated
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     _S_range_end(_Source) { return {}; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   template<typename _CharT, typename _Traits, typename _Alloc>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -459,11 +459,11 @@ namespace __detail
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       struct _Cvt;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     static string_type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _S_convert(value_type* __src, __detail::__null_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _S_convert(value_type* __src, __detail::__nul_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     { return string_type(__src); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     static string_type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _S_convert(const value_type* __src, __detail::__null_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _S_convert(const value_type* __src, __detail::__nul_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     { return string_type(__src); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     template<typename _Iter>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -477,7 +477,7 @@ namespace __detail
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     template<typename _InputIterator>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       static string_type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      _S_convert(_InputIterator __src, __detail::__null_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _S_convert(_InputIterator __src, __detail::__nul_terminated)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   auto __s = _S_string_from_iter(__src);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return _S_convert(__s.c_str(), __s.c_str() + __s.size());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -504,7 +504,7 @@ namespace __detail
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     template<typename _InputIterator>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       static string_type
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      _S_convert_loc(_InputIterator __src, __detail::__null_terminated,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _S_convert_loc(_InputIterator __src, __detail::__nul_terminated,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                const std::locale& __loc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const std::string __s = _S_string_from_iter(__src);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libstdc++-v3/src/Makefile.am b/libstdc++-v3/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9c3f4aca655..c695ee7eb7e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libstdc++-v3/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libstdc++-v3/src/Makefile.am
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -133,8 +133,12 @@ libstdc___la_DEPENDENCIES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/src/c++17/libc++17convenience.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/src/c++20/libc++20convenience.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if ENABLE_DARWIN_AT_RPATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++libstdc___darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libstdc___la_LDFLAGS = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  -version-info $(libtool_VERSION) ${version_arg} -lm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  -version-info $(libtool_VERSION) ${version_arg} -lm $(libstdc___darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4a06f6cfec1..e3dfcde1335 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libstdc++-v3/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libstdc++-v3/src/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -546,8 +546,9 @@ libstdc___la_DEPENDENCIES = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/src/c++17/libc++17convenience.la \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   $(top_builddir)/src/c++20/libc++20convenience.la
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++@ENABLE_DARWIN_AT_RPATH_TRUE@libstdc___darwin_rpath = -nodefaultrpaths -Wl,-rpath,@loader_path/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libstdc___la_LDFLAGS = \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  -version-info $(libtool_VERSION) ${version_arg} -lm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  -version-info $(libtool_VERSION) ${version_arg} -lm $(libstdc___darwin_rpath)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS) $(lt_host_flags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ @GLIBCXX_LDBL_ALT128_COMPAT_FALSE@@GLIBCXX_LDBL_COMPAT_TRUE@LTCXXCOMPILE64 = $(LTCXXCOMPILE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libtool.m4 b/libtool.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 17f8e5f3074..5452de03793 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libtool.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libtool.m4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1039,6 +1039,45 @@ _LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ m4_defun([_LT_DARWIN_LINKER_FEATURES],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   m4_require([_LT_REQUIRED_DARWIN_CHECKS])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  AC_ARG_ENABLE([darwin-at-rpath],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    AS_HELP_STRING([--enable-darwin-at-path],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      [install libraries with @rpath/library-name, requires rpaths to be added to executables]),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[[45678]]*|UNSET,rhapsody*|10.[[01234]][[,.]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&AS_MESSAGE_LOG_FD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  [case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[[45678]]*|UNSET,rhapsody*|10.[[01234]][[,.]]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[[56789]]*|UNSET,darwin2*|10.1[[123456789]][[,.]]*|1[[123456789]].*[[,.]]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&AS_MESSAGE_LOG_FD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _LT_TAGVAR(archive_cmds_need_lc, $1)=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _LT_TAGVAR(hardcode_direct, $1)=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _LT_TAGVAR(hardcode_automatic, $1)=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1056,13 +1095,26 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&AS_MESSAGE_LOG_FD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&AS_MESSAGE_LOG_FD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     m4_if([$1], [CXX],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ],[])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4203,6 +4255,7 @@ _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   [Compiler flag to prevent dynamic linking])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])# _LT_COMPILER_PIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_LT_TAGVAR(enable_darwin_at_rpath, $1)=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # _LT_LINKER_SHLIBS([TAGNAME])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # ----------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -6441,7 +6494,6 @@ fi # test "$_lt_caught_CXX_error" != yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_LANG_POP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ])# _LT_LANG_CXX_CONFIG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # ---------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Figure out "hidden" library dependencies from verbose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libvtv/configure b/libvtv/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d64b4af5c6b..4280e3b20a9 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libvtv/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libvtv/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -640,6 +640,8 @@ VTV_CYGMIN_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ VTV_CYGMIN_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ XCFLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_static
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -797,6 +799,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_cet
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gcc_major_version_only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1446,6 +1449,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-cet            enable Intel CET in target libraries [default=auto]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10448,6 +10453,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10465,10 +10511,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12254,7 +12309,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12267 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12312 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12360,7 +12415,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12373 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12418 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13236,6 +13291,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct_CXX=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic_CXX=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13253,12 +13349,25 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds_CXX="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if test "$lt_cv_apple_cc_single_mod" != "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15099,16 +15208,6 @@ freebsd* | dragonfly*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-gnu*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  soname_spec='${libname}${release}${shared_ext}$major'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  shlibpath_var=LD_LIBRARY_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  hardcode_into_libs=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ haiku*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15230,7 +15329,7 @@ linux*oldld* | linux*aout* | linux*coff*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # project, but have not yet been accepted: they are GCC-local changes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # for the time being.  (See
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://lists.gnu.org/archive/html/libtool-patches/2018-05/msg00000.html)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu* | uclinuxfdpiceabi)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   version_type=linux
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_lib_prefix=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   need_version=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15642,6 +15741,14 @@ esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For libtool versioning info, format is CURRENT:REVISION:AGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION=1:0:0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15672,7 +15779,7 @@ case "$host" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case "$enable_cet" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       auto)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Check if target supports multi-byte NOPs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  # and if assembler supports CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # and if compiler and assembler support CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cet_save_CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFLAGS="$CFLAGS -fcf-protection"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15987,6 +16094,10 @@ if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${VTV_CYGMIN_TRUE}" && test -z "${VTV_CYGMIN_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"VTV_CYGMIN\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/libvtv/configure.ac b/libvtv/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f3b937e4b10..50aaadbb3a3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/libvtv/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/libvtv/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -153,6 +153,7 @@ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_shared)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(enable_static)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For libtool versioning info, format is CURRENT:REVISION:AGE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libtool_VERSION=1:0:0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/lto-plugin/configure b/lto-plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index b820accfd65..8faa13c4a8b 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/lto-plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/lto-plugin/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -634,6 +634,8 @@ LTLIBOBJS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIBOBJS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ target_noncanonical
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lt_host_flags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LIPO
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -785,6 +787,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       ac_precious_vars='build_alias
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ host_alias
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1430,6 +1433,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10275,6 +10280,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10292,10 +10338,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12081,7 +12136,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12084 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12139 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12187,7 +12242,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 12190 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 12245 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12424,6 +12479,14 @@ CC="$lt_save_CC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Only expand once:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12670,6 +12733,10 @@ if test -z "${LTO_PLUGIN_USE_SYMVER_SUN_TRUE}" && test -z "${LTO_PLUGIN_USE_SYMV
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"LTO_PLUGIN_USE_SYMVER_SUN\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "${CONFIG_STATUS=./config.status}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ac_write_fail=0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/lto-plugin/configure.ac b/lto-plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bc5b618a495..317596288b2 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/lto-plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/lto-plugin/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -88,6 +88,7 @@ AM_CONDITIONAL(LTO_PLUGIN_USE_SYMVER_GNU, [test "x$lto_plugin_use_symver" = xgnu
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_CONDITIONAL(LTO_PLUGIN_USE_SYMVER_SUN, [test "x$lto_plugin_use_symver" = xsun])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AM_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ACX_LT_HOST_FLAGS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(target_noncanonical)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_TYPE_INT64_T
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/zlib/configure b/zlib/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index f489f31bc70..f7adce0db2c 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/zlib/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/zlib/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -639,6 +639,8 @@ TARGET_LIBRARY_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ TARGET_LIBRARY_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ toolexecdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_FALSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ENABLE_DARWIN_AT_RPATH_TRUE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ CPP
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -776,6 +778,7 @@ with_pic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_fast_install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_gnu_ld
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_libtool_lock
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++enable_darwin_at_rpath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with_toolexeclibdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ enable_host_shared
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1419,6 +1422,8 @@ Optional Features:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-fast-install[=PKGS]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           optimize for fast installation [default=yes]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --disable-libtool-lock  avoid locking (might break parallel builds)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  --enable-darwin-at-path install libraries with @rpath/library-name, requires
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          rpaths to be added to executables
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   --enable-host-shared    build host code as shared libraries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Optional Packages:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4169,7 +4174,7 @@ case "$host" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case "$enable_cet" in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       auto)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   # Check if target supports multi-byte NOPs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  # and if assembler supports CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # and if compiler and assembler support CET insn.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cet_save_CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   CFLAGS="$CFLAGS -fcf-protection"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8908,6 +8913,47 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     darwin* | rhapsody*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Publish an arg to allow the user to select that Darwin host (and target)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # libraries should be given install-names like @rpath/libfoo.dylib.  This
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # requires that the user of the library then adds an 'rpath' to the DSO that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # needs access.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # NOTE: there are defaults below, for systems that support rpaths.  The person
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # configuring can override the defaults for any system version that supports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # them - they are, however, forced off for system versions without support.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  # Check whether --enable-darwin-at-rpath was given.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test "${enable_darwin_at_rpath+set}" = set; then :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This is not supported before macOS 10.5 / Darwin9.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  echo "WARNING: Darwin @rpath library names are incompatible with macOS versions earlier than 10.5 (rpaths disabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++   fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # As above, before 10.5 / Darwin9 this does not work.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++     UNSET,darwin[45678]*|UNSET,rhapsody*|10.[01234][,.]*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       enable_darwin_at_rpath=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++       ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # system executables (e.g. /bin/sh).  Force rpaths on for these systems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      UNSET,darwin1[56789]*|UNSET,darwin2*|10.1[123456789][,.]*|1[123456789].*[,.]* )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "@rpath library names are needed on macOS versions later than 10.11 (rpaths enabled)" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      enable_darwin_at_rpath=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # work with either DYLD_LIBRARY_PATH or embedded rpaths.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   archive_cmds_need_lc=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_direct=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   hardcode_automatic=yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8925,10 +8971,19 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if test "$_lt_dar_can_shared" = "yes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     output_verbose_link_cmd=func_echo_all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if test "x$enable_darwin_at_rpath" = "xyes"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name @rpath/\$soname \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      echo "NOT using Darwin @rpath" 1>&5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ld_shlibs=no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10735,7 +10790,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10748 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10793 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10841,7 +10896,7 @@ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   lt_status=$lt_dlunknown
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   cat > conftest.$ac_ext <<_LT_EOF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#line 10854 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#line 10899 "configure"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "confdefs.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if HAVE_DLFCN_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11078,6 +11133,14 @@ CC="$lt_save_CC"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Only expand once:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test x$enable_darwin_at_rpath = xyes; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_TRUE='#'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  ENABLE_DARWIN_AT_RPATH_FALSE=
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Find CPP now so that any conditional tests below won't do it and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # thereby make the resulting definitions conditional.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11708,6 +11771,10 @@ if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if test -z "${TARGET_LIBRARY_TRUE}" && test -z "${TARGET_LIBRARY_FALSE}"; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   as_fn_error $? "conditional \"TARGET_LIBRARY\" was never defined.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/zlib/configure.ac b/zlib/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index be1cfe29651..2327d003a05 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/zlib/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/zlib/configure.ac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -64,6 +64,7 @@ GCC_CET_FLAGS(CET_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_SUBST(CET_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_PROG_LIBTOOL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Find CPP now so that any conditional tests below won't do it and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # thereby make the resulting definitions conditional.
</span></pre><pre style='margin:0'>

</pre>