<pre style='margin:0'>
Jeremy Huddleston Sequoia (jeremyhu) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/edc0cff9e8a3b28964a48ae2a4ceddb5e617d906">https://github.com/macports/macports-ports/commit/edc0cff9e8a3b28964a48ae2a4ceddb5e617d906</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 edc0cff  llvm-8.0: New port
</span>edc0cff is described below

<span style='display:block; white-space:pre;color:#808000;'>commit edc0cff9e8a3b28964a48ae2a4ceddb5e617d906
</span>Author: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
AuthorDate: Thu Mar 28 22:01:44 2019 -0700

<span style='display:block; white-space:pre;color:#404040;'>    llvm-8.0: New port
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
</span>---
 lang/llvm-3.3/Portfile                             |   2 +-
 lang/llvm-3.4/Portfile                             |   2 +-
 lang/llvm-3.5/Portfile                             |   2 +-
 lang/llvm-3.7/Portfile                             |   2 +-
 lang/llvm-3.9/Portfile                             |   2 +-
 lang/llvm-4.0/Portfile                             |   2 +-
 lang/llvm-5.0/Portfile                             |   2 +-
 lang/llvm-6.0/Portfile                             |   2 +-
 lang/llvm-7.0/Portfile                             |   2 +-
 lang/{llvm-7.0 => llvm-8.0}/Portfile               |  77 +++--
 ...h-O-CPU-Subtype-to-ppc7400-when-targeting.patch |  55 ++++
 ...MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch |  36 +++
 ...ly-Don-t-embed-the-deployment-target-in-t.patch |  33 +++
 ...ssues-pre-Lion-due-to-missing-a-strnlen-d.patch |  70 +++++
 ...nly-call-pthread_setname_np-on-SnowLeopar.patch |  36 +++
 ...ly-Prepare-clang-format-for-replacement-w.patch |  84 ++++++
 ...ly-Fix-name-of-scan-view-executable-insid.patch |  29 ++
 .../1003-Default-to-ppc7400-for-OSX-10.5.patch     |  26 ++
 ...etpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch |  29 ++
 ...fragile-ObjC-runtime-when-targeting-darwi.patch |  31 ++
 ...dc-header-search-paths-for-older-versions.patch |  41 +++
 ...ssues-pre-Lion-due-to-missing-a-strnlen-d.patch |  42 +++
 ...oat.h-to-work-on-Snow-Leopard-and-earlier.patch |  34 +++
 ...-O_CLOEXEC-for-older-SDKs-that-don-t-have.patch |  49 ++++
 .../2002-Work-around-no-libdispatch-on-10.6.patch  |  53 ++++
 ...nd-iterator-when-building-with-Lion-and-n.patch |  45 +++
 ...-long-long-math-prototypes-when-using-the.patch |  51 ++++
 ...tomic-using-mutex-lock_guard-for-64b-ops-.patch | 316 +++++++++++++++++++++
 .../9000-patch-clang-7.0-support-emulated-tls.diff |  26 ++
 .../9000-patch-llvm-7.0-support-emulated-tls.diff  |  13 +
 lang/llvm-8.0/files/9001-macports-libstdcxx.diff   | 135 +++++++++
 ...clang-7.0-default-to-libcxx-on-all-systems.diff |  15 +
 lang/llvm-8.0/files/leopard-no-asan.patch          |  12 +
 lang/llvm-8.0/files/leopard-no-blocks.patch        |  26 ++
 lang/llvm-8.0/files/llvm-bin                       |   7 +
 lang/llvm-8.0/files/llvm-bin-compat                |   2 +
 lang/llvm-8.0/files/mp-clang-8.0                   |  34 +++
 lang/llvm-8.0/files/mp-llvm-8.0                    |  60 ++++
 lang/llvm-8.0/files/openmp-locations.patch         |  39 +++
 lang/llvm-8.0/files/yosemite-no-clangd.patch       |  10 +
 40 files changed, 1486 insertions(+), 48 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.3/Portfile b/lang/llvm-3.3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0db013c..18cd4f1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -179,7 +179,7 @@ variant assertions description "Enable assertions for error detection (has perfo
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {3.3 3.4 3.7 3.8 3.9 4.0 5.0 6.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {3.3 3.4 3.7 3.8 3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.4/Portfile b/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 6abd5f0..1c1eaaa 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.4/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -216,7 +216,7 @@ variant assertions description "Enable assertions for error detection (has perfo
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {3.4 3.7 3.8 3.9 4.0 5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {3.4 3.7 3.8 3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.5/Portfile b/lang/llvm-3.5/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index bee12c9..2545a62 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.5/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -97,7 +97,7 @@ compiler.blacklist *gcc* {clang < 425.0.24}
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 6.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.7/Portfile b/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 286bae7..8ae28e5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.7/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -203,7 +203,7 @@ compiler.blacklist *gcc* {clang < 500}
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {3.7 3.8 3.9 4.0 5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {3.7 3.8 3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-3.9/Portfile b/lang/llvm-3.9/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 7c78f21..42bd3eb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-3.9/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-3.9/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -240,7 +240,7 @@ if {${subport} eq "clang-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {3.9 4.0 5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {3.9 4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-4.0/Portfile b/lang/llvm-4.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 3d87d4f..0376cec 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-4.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-4.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -297,7 +297,7 @@ if {${subport} eq "clang-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {4.0 5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {4.0 5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-5.0/Portfile b/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0965fc4..5aa705d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-5.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -332,7 +332,7 @@ if {${subport} eq "lldb-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {5.0 6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {5.0 6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-6.0/Portfile b/lang/llvm-6.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 54e7a61..fbb9b42 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-6.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-6.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -318,7 +318,7 @@ if {${subport} eq "lldb-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {6.0 7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {6.0 7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-7.0/Portfile b/lang/llvm-7.0/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4a1d9a4..479826d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-7.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-7.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -324,7 +324,7 @@ if {${subport} eq "lldb-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {7.0 8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-7.0/Portfile b/lang/llvm-8.0/Portfile
</span>similarity index 93%
copy from lang/llvm-7.0/Portfile
copy to lang/llvm-8.0/Portfile
<span style='display:block; white-space:pre;color:#808080;'>index 4a1d9a4..a604132 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/llvm-7.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -7,14 +7,13 @@ PortGroup compiler_blacklist_versions 1.0
</span> PortGroup active_variants 1.1
 PortGroup cmake         1.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set llvm_version        7.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set llvm_version_no_dot 70
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set clang_executable_version 7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set lldb_executable_version 7.0.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set llvm_version        8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set llvm_version_no_dot 80
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set clang_executable_version 8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set lldb_executable_version 8.0.0
</span> name                    llvm-${llvm_version}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                1
</span> subport                 clang-${llvm_version} {}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-subport                 lldb-${llvm_version} { revision 0 }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport                 lldb-${llvm_version} {}
</span> set suffix              mp-${llvm_version}
 set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
 dist_subdir             llvm
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -100,7 +99,7 @@ if {${subport} eq "llvm-${llvm_version}"} {
</span> #default_variants-append +assertions
 #default_variants-append +debug
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version                 ${llvm_version}.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version                 ${llvm_version}.0
</span> epoch                   1
 master_sites            https://releases.llvm.org/${version}
 #master_sites            https://prereleases.llvm.org/${llvm_version}.0/rc2
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -121,34 +120,34 @@ if {${distfiles} ne ""} {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           llvm-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  dae96c6f85afb60e73564dc40d02171d01ffdb8f \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  a38dfc4db47102ec79dcc2aa61e93722c5f6f06f0a961073bd84b78fb949419b \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    28311056 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    cfe-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  914adafed7c97e5ebab15a437670906c404cb8bd \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  a45b62dde5d7d5fdcdfa876b0af92f164d434b06e9e89b5d0b1cbc65dfe3f418 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    12488668 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    compiler-rt-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  ddc0a23cc2f05e44e0bf1b542688968a8126ee0d \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  782edfc119ee172f169c91dd79f2c964fb6b248bd9b73523149030ed505bbe18 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    1864520 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    libcxx-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  ddc3aad371b5cf018bf977ddb66efbc024fd4aea \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  020002618b319dc2a8ba1f2cba88b8cc6a209005ed8ad29f9de0c562c6ebb9f1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    1638188 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    clang-tools-extra-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  d0ec60e76157a99e7d6d5f04f7b7eda56ba450da \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  4c93c7d2bb07923a8b272da3ef7914438080aeb693725f4fc5c19cd0e2613bed \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    901368 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    lldb-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  cc74fa4a201d6541cc918caee9abd683c18189b5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  76b46be75b412a3d22f0d26279306ae7e274fe4d7988a2184c529c38a6a76982 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    19384628 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    polly-7.0.1.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    rmd160  f1968870c6069bdc22b660eac4a1de4ca580cddd \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  1bf146842a09336b9c88d2d76c2d117484e5fad78786821718653d1a9d57fb71 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    8755168
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           llvm-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  a0740d83ae981506ddb7cfd389cafc52b7f317b2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  8872be1b12c61450cacc82b3d153eab02be2546ef34fa3580ed14137bb26224c \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    30503732 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    cfe-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  bd4dd523edcde136156b773cc66bfad1fc52dbc4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  084c115aab0084e63b23eee8c233abb6739c399e29966eaeccfc6e088e0b736b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    12868468 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    compiler-rt-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  f86ba4b009bef2c95727ced20ea44afef6650ae2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  b435c7474f459e71b2831f1a4e3f1d21203cb9c0172e94e9d9b69f50354f21b1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1903020 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    libcxx-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  bc1e240208c88e1718a4892932f40b299628301a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  c2902675e7c84324fb2c1e45489220f250ede016cc3117186785d9dc291f9de2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1752308 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    clang-tools-extra-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  326bfe3cbcdf701f3a9f6722823877d00679626f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  4f00122be408a7482f2004bcf215720d2b88cf8dc78b824abb225da8ad359d4b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1996156 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    lldb-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  8f48d590075479cd131874855a951450ac5a4c72 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  49918b9f09816554a20ac44c5f85a32dc0a7a00759b3259e78064d674eac0373 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    19602332 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    polly-8.0.0.src.tar.xz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  ed2a61a4cf5431792b0b02d31cc973bdb0fcb676 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  e3f5a3d6794ef8233af302c45ceb464b74cdc369c1ac735b6b381b21e4d89df4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    8706068
</span> 
 patch.pre_args  -p1
 patchfiles \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -324,7 +323,7 @@ if {${subport} eq "lldb-${llvm_version}"} {
</span> 
 # blacklist current and future versions if they're not available in order to
 # help break potential dependency cycles.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach ver {7.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach ver {8.0 devel} {
</span>     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
         compiler.blacklist-append macports-clang-${ver}
     }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -505,11 +504,11 @@ if {${subport} eq "lldb-${llvm_version}"} {
</span>         xinstall -m 644 ${worksrcpath}/tools/lldb/docs/code-signing.txt ${destroot}${prefix}/share/doc/lldb-${llvm_version}/
     }
     post-activate {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_msg "Please follow the instructions in ${prefix}/share/doc/lldb-${llvm_version}/code-signing.txt and then codesign the debugserver with:"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "Please follow the instructions in ${prefix}/share/doc/lldb-${llvm_version}/code-signing.txt and then codesign lldb-server with:"
</span>         if {${os.major} >= 13} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_msg "   sudo codesign --force --deep --preserve-metadata=identifier,entitlements,resource-rules,requirements,flags,team-identifier --sign <identity> ${sub_prefix}/bin/debugserver"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "   sudo codesign --force --deep --preserve-metadata=identifier,entitlements,resource-rules,requirements,flags,team-identifier --sign <identity> ${sub_prefix}/bin/lldb-server"
</span>         } else {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            ui_msg "   sudo codesign --force --deep --preserve-metadata=identifier,entitlements,resource-rules,requirements --sign <identity> ${sub_prefix}/bin/debugserver"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ui_msg "   sudo codesign --force --deep --preserve-metadata=identifier,entitlements,resource-rules,requirements --sign <identity> ${sub_prefix}/bin/lldb-server"
</span>         }
     }
 }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch b/lang/llvm-8.0/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..691042a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,55 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 3b3932ac16c4ce7d21e0801efef9e1c73d4e0c20 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 09:03:43 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1/4] Set the Mach-O CPU Subtype to ppc7400 when targeting
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Leopard
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+http://llvm.org/bugs/show_bug.cgi?id=18463
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp | 13 ++++++++++---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 10 insertions(+), 3 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp macports_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a405dd70c30..b1b62146d3b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -201,16 +201,23 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // FIXME: This should be in a separate file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   class DarwinPPCAsmBackend : public PPCAsmBackend {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    Triple TheTriple;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    DarwinPPCAsmBackend(const Target &T) : PPCAsmBackend(T, support::big) { }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    DarwinPPCAsmBackend(const Target &T, const Triple &TT) : PPCAsmBackend(T, support::big), TheTriple(TT) { }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     std::unique_ptr<MCObjectTargetWriter>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     createObjectTargetWriter() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       bool is64 = getPointerSize() == 8;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      MachO::CPUSubTypePowerPC CS = MachO::CPU_SUBTYPE_POWERPC_ALL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (TheTriple.isOSDarwin() && !TheTriple.isMacOSXVersionLT(10,5)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          CS = MachO::CPU_SUBTYPE_POWERPC_7400;
</span><span style='display:block; white-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 createPPCMachObjectWriter(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           /*Is64Bit=*/is64,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           (is64 ? MachO::CPU_TYPE_POWERPC64 : MachO::CPU_TYPE_POWERPC),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          MachO::CPU_SUBTYPE_POWERPC_ALL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          CS);
</span><span style='display:block; white-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;'>+@@ -236,7 +243,7 @@ MCAsmBackend *llvm::createPPCAsmBackend(const Target &T,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                         const MCTargetOptions &Options) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const Triple &TT = STI.getTargetTriple();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (TT.isOSDarwin())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return new DarwinPPCAsmBackend(T);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return new DarwinPPCAsmBackend(T, TT);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   uint8_t OSABI = MCELFObjectTargetWriter::getOSABI(TT.getOS());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool IsLittleEndian = TT.getArch() == Triple::ppc64le;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.17.1 (Apple Git-112)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch b/lang/llvm-8.0/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..a8d7773
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,36 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From a01f092533323329dc6d5ec97e3fb98dc162edc9 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 18 Jan 2015 11:18:13 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2/4] Define EXC_MASK_CRASH and MACH_EXCEPTION_CODES if they're
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ not defined in the SDK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+The 10.4 SDK does not define these macros
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Support/Unix/Signals.inc | 9 +++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 9 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/lib/Support/Unix/Signals.inc macports_release_80/lib/Support/Unix/Signals.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index ad88d5e9690..f6126b11630 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/lib/Support/Unix/Signals.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/lib/Support/Unix/Signals.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -569,6 +569,15 @@ void llvm::sys::PrintStackTraceOnErrorSignal(StringRef Argv0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   AddSignalHandler(PrintStackTraceSignalHandler, nullptr);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__APPLE__) && ENABLE_CRASH_OVERRIDES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* These aren't defined in the 10.4 SDK, so provide them here */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef EXC_MASK_CRASH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define EXC_MASK_CRASH 0x400
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef MACH_EXCEPTION_CODES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define MACH_EXCEPTION_CODES 0x80000000
</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;'>+   // Environment variable to disable any kind of crash dialog.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (DisableCrashReporting || getenv("LLVM_DISABLE_CRASH_REPORT")) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     mach_port_t self = mach_task_self();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch b/lang/llvm-8.0/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9c1f711
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,33 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From bc46e7ec9797ff027266a7874be93ea075c0499f Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 16:41:30 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 3/4] MacPorts Only: Don't embed the deployment target in the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ asm when using -fno-integrated-as
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+http://llvm.org/bugs/show_bug.cgi?id=21636
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 6 ++++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 4 insertions(+), 2 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/lib/CodeGen/AsmPrinter/AsmPrinter.cpp macports_release_80/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 7070451e333..aa2a8ceebb5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -262,8 +262,10 @@ bool AsmPrinter::doInitialization(Module &M) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // alternative is duplicated code in each of the target asm printers that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // use the directive, where it would need the same conditionalization
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // anyway.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  const Triple &Target = TM.getTargetTriple();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  OutStreamer->EmitVersionForTarget(Target, M.getSDKVersion());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (MAI->useIntegratedAssembler()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const Triple &Target = TM.getTargetTriple();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    OutStreamer->EmitVersionForTarget(Target, M.getSDKVersion());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // Allow the target to emit any magic that it wants at the start of the file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   EmitStartOfAsmFile(M);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/0004-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch b/lang/llvm-8.0/files/0004-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..044d515
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/0004-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,70 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 1340c81077b70dce5ec0522986411f0d592795fd Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 20 Dec 2016 12:41:21 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 4/4] Fix build issues pre-Lion due to missing a strnlen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ definition
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/51520
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://llvm.org/bugs/show_bug.cgi?id=27714
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/ObjectYAML/MachOYAML.cpp  | 14 ++++++++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/obj2yaml/macho2yaml.cpp | 16 +++++++++++++++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 29 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/lib/ObjectYAML/MachOYAML.cpp macports_release_80/lib/ObjectYAML/MachOYAML.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e00a4ea9307..0daba44573c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/lib/ObjectYAML/MachOYAML.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/lib/ObjectYAML/MachOYAML.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,6 +22,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstdint>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cstring>
</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;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  size_t l = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  while (l < maxlen && *s) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    l++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    s++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return l;
</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;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace llvm {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ MachOYAML::LoadCommand::~LoadCommand() = default;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/obj2yaml/macho2yaml.cpp macports_release_80/tools/obj2yaml/macho2yaml.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fa81ce974ec..1e86f820437 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/obj2yaml/macho2yaml.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/obj2yaml/macho2yaml.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,7 +15,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "llvm/Support/ErrorHandling.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "llvm/Support/LEB128.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include <string.h> // for memcpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <string.h> // for memcpy abd strnlen
</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;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  size_t l = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  while (l < maxlen && *s) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    l++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    s++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return l;
</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;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using namespace llvm;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/0005-Threading-Only-call-pthread_setname_np-on-SnowLeopar.patch b/lang/llvm-8.0/files/0005-Threading-Only-call-pthread_setname_np-on-SnowLeopar.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..da1f466
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/0005-Threading-Only-call-pthread_setname_np-on-SnowLeopar.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,36 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 1bbe86f7fae2f5222ee6d88d7e3c8d2dae3145c6 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 27 Dec 2017 23:05:43 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 5/5] Threading: Only call pthread_setname_np() on SnowLeopard+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Support/Unix/Threading.inc | 3 +++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 3 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_master/lib/Support/Unix/Threading.inc macports_master/lib/Support/Unix/Threading.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 267af388ecd..1c8c1b026e3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_master/lib/Support/Unix/Threading.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_master/lib/Support/Unix/Threading.inc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,6 +15,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "llvm/ADT/Twine.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <mach/mach_init.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <mach/mach_port.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -153,8 +154,10 @@ void llvm::set_thread_name(const Twine &Name) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ::pthread_setname_np(::pthread_self(), "%s",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     const_cast<char *>(NameStr.data()));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ::pthread_setname_np(NameStr.data());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</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;'>+ void llvm::get_thread_name(SmallVectorImpl<char> &Name) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.15.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch b/lang/llvm-8.0/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..f2498fb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,84 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2e4692aba7027972d6fa621cafe3f33a54c627c5 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 17:50:24 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1001/1008] MacPorts Only: Prepare clang-format for replacement
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ with absolute path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/clang-format/clang-format-bbedit.applescript | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/clang-format/clang-format-diff.py            | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/clang-format/clang-format-sublime.py         | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/clang-format/clang-format.el                 | 3 +--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/clang-format/clang-format.py                 | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 5 files changed, 5 insertions(+), 6 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/clang-format/clang-format-bbedit.applescript macports_release_80/tools/clang/tools/clang-format/clang-format-bbedit.applescript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fa88fe9004..eb09448be5 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/clang-format/clang-format-bbedit.applescript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/clang-format/clang-format-bbedit.applescript
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,7 +15,7 @@ tell application "BBEdit"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end tell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set filePath to urlToPOSIXPath(fileURL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-set newContents to do shell script "/path/to/clang-format -offset=" & selectionOffset & " -length=" & selectionLength & " " & quoted form of filePath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set newContents to do shell script "@CLANG_FORMAT_PATH@ -offset=" & selectionOffset & " -length=" & selectionLength & " " & quoted form of filePath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tell application "BBEdit"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   -- "set contents of text document 1 to newContents" scrolls to the bottom while
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/clang-format/clang-format-diff.py macports_release_80/tools/clang/tools/clang-format/clang-format-diff.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d6d3510416..d9b558e70b 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/clang-format/clang-format-diff.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/clang-format/clang-format-diff.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -59,7 +59,7 @@ def main():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   parser.add_argument('-style',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       help='formatting style to apply (LLVM, Google, Chromium, '
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       'Mozilla, WebKit)')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  parser.add_argument('-binary', default='clang-format',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  parser.add_argument('-binary', default='@CLANG_FORMAT_PATH@',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                       help='location of binary to use for clang-format')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   args = parser.parse_args()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/clang-format/clang-format-sublime.py macports_release_80/tools/clang/tools/clang-format/clang-format-sublime.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5ea9a27825..83a2967625 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/clang-format/clang-format-sublime.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/clang-format/clang-format-sublime.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -18,7 +18,7 @@ import sublime_plugin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import subprocess
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Change this to the full path if clang-format is not on the path.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-binary = 'clang-format'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++binary = '@CLANG_FORMAT_PATH@'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Change this to format according to other formatting styles. See the output of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # 'clang-format --help' for a list of supported styles. The default looks for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/clang-format/clang-format.el macports_release_80/tools/clang/tools/clang-format/clang-format.el
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4f11daf15f..439beddd45 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/clang-format/clang-format.el
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/clang-format/clang-format.el
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -36,8 +36,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   :group 'tools)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ (defcustom clang-format-executable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  (or (executable-find "clang-format")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      "clang-format")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  "@CLANG_FORMAT_PATH@"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   "Location of the clang-format executable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ A string containing the name or the full path of the executable."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/clang-format/clang-format.py macports_release_80/tools/clang/tools/clang-format/clang-format.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fe068bd41c..e0f1128a1c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/clang-format/clang-format.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/clang-format/clang-format.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -36,7 +36,7 @@ import vim
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set g:clang_format_path to the path to clang-format if it is not on the path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Change this to the full path if clang-format is not on the path.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-binary = 'clang-format'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++binary = '@CLANG_FORMAT_PATH@'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if vim.eval('exists("g:clang_format_path")') == "1":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   binary = vim.eval('g:clang_format_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;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch b/lang/llvm-8.0/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..6c8d568
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From de851daf838bf4bce181f7f944c5244106cb5aea Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 17:55:27 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1002/1008] MacPorts Only: Fix name of scan-view executable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ inside scan-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+http://trac.macports.org/ticket/35006
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/scan-build/bin/scan-build | 2 ++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 2 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/tools/scan-build/bin/scan-build macports_release_80/tools/clang/tools/scan-build/bin/scan-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index fd0dd66b2d..bd5340c6b6 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/tools/scan-build/bin/scan-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/tools/scan-build/bin/scan-build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1915,6 +1915,8 @@ if (defined $Options{OutputFormat}) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       Diag "Analysis run complete.\n";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       Diag "Viewing analysis results in '$Options{OutputDir}' using scan-view.\n";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       my $ScanView = Cwd::realpath("$RealBin/scan-view");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (! -x $ScanView) { $ScanView = Cwd::realpath("$RealBin/bin/scan-view"); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (! -x $ScanView) { $ScanView = Cwd::realpath("$RealBin/../scan-view/scan-view"); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (! -x $ScanView) { $ScanView = "scan-view"; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       if (! -x $ScanView) { $ScanView = Cwd::realpath("$RealBin/../../scan-view/bin/scan-view"); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       exec $ScanView, "$Options{OutputDir}";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1003-Default-to-ppc7400-for-OSX-10.5.patch b/lang/llvm-8.0/files/1003-Default-to-ppc7400-for-OSX-10.5.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..74adb6a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1003-Default-to-ppc7400-for-OSX-10.5.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 3fb5a64c13f2e22aac27b00137924a9d70ba194c Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Iain Sandoe <iain@codesourcery.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 27 Jul 2014 20:35:16 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1003/1008] Default to ppc7400 for OSX 10.5+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Driver/ToolChains/CommonArgs.cpp | 3 +++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 3 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_master/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp macports_master/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 1e093b25b9..729369180e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_master/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_master/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -318,6 +318,9 @@ std::string tools::getCPUName(const ArgList &Args, const llvm::Triple &T,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         TargetCPUName = "ppc64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else if (T.getArch() == llvm::Triple::ppc64le)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         TargetCPUName = "ppc64le";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      else if (T.isOSDarwin() && !T.isMacOSXVersionLT(10,5))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        // For 10.5+ Altivec is assumed available.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        TargetCPUName = "7400";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         TargetCPUName = "ppc";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.17.1 (Apple Git-112)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch b/lang/llvm-8.0/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..61bd36f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 9f9ae872db92fced923774e7ed8fdbbfa9db8dba Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 19:08:57 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1004/1008] Only call setpriority(PRIO_DARWIN_THREAD, 0,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PRIO_DARWIN_BG) if it is available
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Tiger and earlier versions of darwin do not support this.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ tools/libclang/CIndex.cpp | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_master/tools/clang/tools/libclang/CIndex.cpp macports_master/tools/clang/tools/libclang/CIndex.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 499d9abf9a..97a47396ee 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_master/tools/clang/tools/libclang/CIndex.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_master/tools/clang/tools/libclang/CIndex.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8504,7 +8504,7 @@ void clang::setThreadBackgroundPriority() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (getenv("LIBCLANG_BGPRIO_DISABLE"))
</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;'>+-#ifdef USE_DARWIN_THREADS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(USE_DARWIN_THREADS) && defined(PRIO_DARWIN_THREAD) && defined(PRIO_DARWIN_BG)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   setpriority(PRIO_DARWIN_THREAD, 0, PRIO_DARWIN_BG);
</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;'>+2.17.1 (Apple Git-112)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch b/lang/llvm-8.0/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..3a6ce33
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,31 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 74d7964d3f0a4d6af5842da68ddc94c68847a0aa Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 20 Jan 2015 00:09:16 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1005/1008] Default to fragile ObjC runtime when targeting
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ darwin/ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Driver/ToolChains/Darwin.h | 6 ++++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 4 insertions(+), 2 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/lib/Driver/ToolChains/Darwin.h macports_release_80/tools/clang/lib/Driver/ToolChains/Darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d753f8967a..c73f74133c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/lib/Driver/ToolChains/Darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/lib/Driver/ToolChains/Darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -229,8 +229,10 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool IsEncodeExtendedBlockSignatureDefault() const override { return true; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool IsObjCNonFragileABIDefault() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    // Non-fragile ABI is default for everything but i386.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return getTriple().getArch() != llvm::Triple::x86;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Non-fragile ABI is default for legacy architectures
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return getTriple().getArch() != llvm::Triple::x86 &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           getTriple().getArch() != llvm::Triple::ppc &&
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++           getTriple().getArch() != llvm::Triple::ppc64;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool UseObjCMixedDispatch() const override { return true; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1006-Fixup-libstdc-header-search-paths-for-older-versions.patch b/lang/llvm-8.0/files/1006-Fixup-libstdc-header-search-paths-for-older-versions.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..f666803
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1006-Fixup-libstdc-header-search-paths-for-older-versions.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,41 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From b0c021885e00327d0cbe5aed390cde934ebf179b Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Mon, 31 Oct 2016 15:06:36 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1006/1008] Fixup libstdc++ header search paths for older
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ versions of Mac OS X
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+The subpaths were removed in Lion.  Leopard and Snow Leopard had darwin8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+symlinks for compatibility.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://llvm.org/bugs/show_bug.cgi?id=30858
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Frontend/InitHeaderSearch.cpp | 4 ++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 2 insertions(+), 2 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/lib/Frontend/InitHeaderSearch.cpp macports_release_80/tools/clang/lib/Frontend/InitHeaderSearch.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 67842b5dca..42d71c1e30 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/lib/Frontend/InitHeaderSearch.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/lib/Frontend/InitHeaderSearch.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -376,7 +376,7 @@ void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                 "powerpc-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                 "ppc64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       IsBaseFound |= AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.0.0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                 "powerpc-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                 "powerpc-apple-darwin8", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                  "ppc64", triple);
</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;'>+@@ -386,7 +386,7 @@ void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                 "i686-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                 "x86_64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       IsBaseFound |= AddGnuCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          "/usr/include/c++/4.0.0", "i686-apple-darwin8", "", "", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          "/usr/include/c++/4.0.0", "i686-apple-darwin8", "", "x86_64", triple);
</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 llvm::Triple::arm:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1007-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch b/lang/llvm-8.0/files/1007-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..e6959f1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1007-Fix-build-issues-pre-Lion-due-to-missing-a-strnlen-d.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,42 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From fbce72a5f9f5ad4d09e162bafda76ce4a8fd3159 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Tue, 20 Dec 2016 15:53:39 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1007/1008] Fix build issues pre-Lion due to missing a strnlen
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ definition
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/51520
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://llvm.org/bugs/show_bug.cgi?id=27714
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Lex/HeaderMap.cpp | 14 ++++++++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 14 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/lib/Lex/HeaderMap.cpp macports_release_80/tools/clang/lib/Lex/HeaderMap.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 23cb053c2d..f99ae9ede8 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/lib/Lex/HeaderMap.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/lib/Lex/HeaderMap.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,6 +26,20 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <memory>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using namespace clang;
</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;'>++#include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if __MAC_OS_X_VERSION_MIN_REQUIRED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++static size_t strnlen(const char *s, size_t maxlen) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  size_t l = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  while (l < maxlen && *s) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    l++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    s++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return l;
</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;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /// HashHMapKey - This is the 'well known' hash function required by the file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /// format, used to look up keys in the hash table.  The hash table uses simple
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /// linear probing based on this function.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/1008-Fix-float.h-to-work-on-Snow-Leopard-and-earlier.patch b/lang/llvm-8.0/files/1008-Fix-float.h-to-work-on-Snow-Leopard-and-earlier.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..8cb0495
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/1008-Fix-float.h-to-work-on-Snow-Leopard-and-earlier.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,34 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2ffb631069c97e076eab2a2f0b634ce6b3a6d3b2 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 20 Jul 2017 17:15:35 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1008/1008] Fix float.h to work on Snow Leopard and earlier
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://bugs.llvm.org/show_bug.cgi?id=31504
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/54135
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Headers/float.h | 7 ++++++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 6 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/tools/clang/lib/Headers/float.h macports_release_80/tools/clang/lib/Headers/float.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 56215cd624..5f9bd36db2 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/tools/clang/lib/Headers/float.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/tools/clang/lib/Headers/float.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -31,7 +31,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  * Also fall back on Darwin to allow additional definitions and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  * implementation-defined values.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if (defined(__APPLE__) || (defined(__MINGW32__) || defined(_MSC_VER))) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__) && __has_include(<Availability.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <Availability.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;'>++#if ((defined(__APPLE__) && __has_include(<Availability.h>) && (!defined(__MAC_OS_X_VERSION_MAX_ALLOWED) || __MAC_OS_X_VERSION_MAX_ALLOWED >= 101300)) || (defined(__MINGW32__) || defined(_MSC_VER))) && \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     __STDC_HOSTED__ && __has_include_next(<float.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Prior to Apple's 10.7 SDK, float.h SDK header used to apply an extra level
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/2001-xray-Define-O_CLOEXEC-for-older-SDKs-that-don-t-have.patch b/lang/llvm-8.0/files/2001-xray-Define-O_CLOEXEC-for-older-SDKs-that-don-t-have.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..91c205d
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/2001-xray-Define-O_CLOEXEC-for-older-SDKs-that-don-t-have.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,49 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From c254025f32afe73adf830b96ad1b6abcceb02ac9 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 27 Dec 2017 23:21:37 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2001/2002] xray: Define O_CLOEXEC for older SDKs that don't
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ have it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/xray/xray_utils.cc  | 6 ++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/xray/xray_x86_64.cc | 6 ++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 12 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/compiler-rt/lib/xray/xray_utils.cc macports_release_80/projects/compiler-rt/lib/xray/xray_utils.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 59ba6c308..3496d3b1b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/compiler-rt/lib/xray/xray_utils.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/compiler-rt/lib/xray/xray_utils.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,6 +37,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <zircon/syscalls.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;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef O_CLOEXEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define O_CLOEXEC 0x1000000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</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;'>+ namespace __xray {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if SANITIZER_FUCHSIA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/compiler-rt/lib/xray/xray_x86_64.cc macports_release_80/projects/compiler-rt/lib/xray/xray_x86_64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e63ee1b3b..65b59ec61 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/compiler-rt/lib/xray/xray_x86_64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/compiler-rt/lib/xray/xray_x86_64.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -26,6 +26,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <tuple>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <unistd.h>
</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;'>++#ifndef O_CLOEXEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define O_CLOEXEC 0x1000000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</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;'>+ namespace __xray {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if SANITIZER_LINUX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/2002-Work-around-no-libdispatch-on-10.6.patch b/lang/llvm-8.0/files/2002-Work-around-no-libdispatch-on-10.6.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..d0bc58f
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/2002-Work-around-no-libdispatch-on-10.6.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,53 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 8e721ff306a2746c8ce5606cb5163119656f8003 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Ken Cunningham <kencu@macports.org>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Thu, 28 Mar 2019 21:26:26 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2002/2002] Work around no libdispatch on < 10.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/builtins/os_version_check.c | 13 ++++++++++++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 12 insertions(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/compiler-rt/lib/builtins/os_version_check.c macports_release_80/projects/compiler-rt/lib/builtins/os_version_check.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e0d40edc7..406dfaf16 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/compiler-rt/lib/builtins/os_version_check.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/compiler-rt/lib/builtins/os_version_check.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,8 +15,11 @@
</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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <TargetConditionals.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <dispatch/dispatch.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <dlfcn.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 <stdio.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25,7 +28,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* These three variables hold the host's OS version. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static int32_t GlobalMajor, GlobalMinor, GlobalSubminor;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static dispatch_once_t DispatchOnceCounter;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ static dispatch_once_t DispatchOnceCounter;
</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 can't include <CoreFoundation/CoreFoundation.h> directly from here, so
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  * just forward declare everything that we need from it. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -205,7 +210,13 @@ Fail:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int32_t __isOSVersionAtLeast(int32_t Major, int32_t Minor, int32_t Subminor) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* Populate the global version variables, if they haven't already. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   dispatch_once_f(&DispatchOnceCounter, NULL, parseSystemVersionPList);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /* expensive procedure, only do once. GlobalMajor will not be 0 once run. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (GlobalMajor == 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    parseSystemVersionPList(NULL);
</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 (Major < GlobalMajor)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch b/lang/llvm-8.0/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..f75d983
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,45 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 7c827b37bfae77c0582f963441a8f2259f6358b0 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 16 Jan 2015 21:34:36 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 3001/3003] Fix <local> and <iterator> when building with Lion
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ and newer Availability.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include/iterator | 4 ++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include/locale   | 4 ++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 4 insertions(+), 4 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/libcxx/include/iterator macports_release_80/projects/libcxx/include/iterator
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index bda177e11..78f7ec93a 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/libcxx/include/iterator
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/libcxx/include/iterator
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1080,8 +1080,8 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     _LIBCPP_INLINE_VISIBILITY bool failed() const _NOEXCEPT {return __sbuf_ == 0;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if !defined(__APPLE__) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && defined(__MAC_10_8) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && defined(__IPHONE_6_0) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     template <class _Ch, class _Tr>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     friend
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/libcxx/include/locale macports_release_80/projects/libcxx/include/locale
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2043892fa..14877f674 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/libcxx/include/locale
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/libcxx/include/locale
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1374,8 +1374,8 @@ __pad_and_output(_OutputIterator __s,
</span><span style='display:block; white-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 !defined(__APPLE__) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && defined(__MAC_10_8) && __MAC_OS_X_VERSION_MIN_REQUIRED > __MAC_10_8) || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && defined(__IPHONE_6_0) && __IPHONE_OS_VERSION_MIN_REQUIRED > __IPHONE_6_0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ template <class _CharT, class _Traits>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ _LIBCPP_HIDDEN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/3002-Fix-missing-long-long-math-prototypes-when-using-the.patch b/lang/llvm-8.0/files/3002-Fix-missing-long-long-math-prototypes-when-using-the.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..83723e7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/3002-Fix-missing-long-long-math-prototypes-when-using-the.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,51 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 7dce4fe412d0ebcd5ccd8b6d48e284e133c52d7e Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 17 Jan 2015 16:26:20 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 3002/3003] Fix missing long long math prototypes when using
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ the Snow Leopard SDK
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include/math.h | 26 ++++++++++++++++++++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 26 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/libcxx/include/math.h macports_release_80/projects/libcxx/include/math.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 3cc72aa27..6fb2d8b51 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/libcxx/include/math.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/libcxx/include/math.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -300,6 +300,32 @@ long double    truncl(long double x);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include_next <math.h>
</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;'>++# if __has_include(<Availability.h>)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  include <Availability.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  if __MAC_OS_X_VERSION_MAX_ALLOWED < 1070
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    define __APPLE_BAD_MATH_H 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#  else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#    define __APPLE_BAD_MATH_H 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;'>++#  define __APPLE_BAD_MATH_H 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;'>++# if __APPLE_BAD_MATH_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* These prototypes are incorrectly omitted from <math.h> on Snow Leopard despite being available */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++extern "C" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llrintl(long double);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llrint(double);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llrintf(float);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llroundl(long double);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llround(double);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    extern long long int llroundf(float);
</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;'>++#endif // __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef __cplusplus
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // We support including .h headers inside 'extern "C"' contexts, so switch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch b/lang/llvm-8.0/files/3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..95ee938
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,316 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2fcbb80c4a28fb39f31d5a5c5ad08bde05336244 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: David Fang <fang@csl.cornell.edu>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 15 Jan 2014 21:27:34 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 3003/3003] implement atomic<> using mutex/lock_guard for 64b
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ops on 32b PPC not pretty, not fast, but passes atomic tests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include/__atomic_locked | 240 ++++++++++++++++++++++++++++++++++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ include/atomic          |  46 ++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 286 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ create mode 100644 include/__atomic_locked
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/libcxx/include/__atomic_locked macports_release_80/projects/libcxx/include/__atomic_locked
</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 000000000..f10dd747e
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/libcxx/include/__atomic_locked
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -0,0 +1,240 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// -*- C++ -*-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//===--------------------------- __atomic_locked --------------------------===//
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//                     The LLVM Compiler Infrastructure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++//
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// This file is distributed under the University of Illinois Open Source
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// License. See LICENSE.TXT for details.
</span><span style='display:block; white-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;'>++#ifndef _LIBCPP_ATOMIC_LOCKED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define _LIBCPP_ATOMIC_LOCKED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <__mutex_base>     // for mutex and lock_guard
</span><span style='display:block; white-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 provides slow-but-usable lock-based atomic access to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  structures for which atomic lock-free functions are missing.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  This is motivated by the desire for 64b atomic operations
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  on 32b PowerPC architectures.  
</span><span style='display:block; white-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 !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#pragma GCC system_header
</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;'>++_LIBCPP_BEGIN_NAMESPACE_STD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++template <class _Tp, bool = is_integral<_Tp>::value && !is_same<_Tp, bool>::value>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct __atomic_mutex_locked  // false
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    mutable _Atomic(_Tp) __a_;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    mutable mutex __lock_;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef lock_guard<mutex>       lock_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp& na(void) const { return reinterpret_cast<_Tp&>(__a_); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    volatile _Tp& na(void) const volatile { return reinterpret_cast<volatile _Tp&>(__a_); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool is_lock_free() const volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return false;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool is_lock_free() const _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return false;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    void store(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_)); na() = __d; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    void store(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_); na() = __d; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp load(memory_order = memory_order_seq_cst) const volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_)); return na(); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp load(memory_order = memory_order_seq_cst) const _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_); return na(); }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    operator _Tp() const volatile _NOEXCEPT {return load();}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    operator _Tp() const _NOEXCEPT          {return load();}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  // or use std::swap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          const _Tp ret = na(); na() = __d; return ret; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  // or use std::swap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          const _Tp ret = na(); na() = __d; return ret; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_weak(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                               memory_order __s, memory_order __f) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (na() == __e) { na() = __d; return true; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else { __e = na(); return false; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_weak(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                               memory_order __s, memory_order __f) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (na() == __e) { na() = __d; return true; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else { __e = na(); 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;'>++    // for now, _weak inditinguishable from _strong
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_strong(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                 memory_order __s, memory_order __f) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_weak(__e, __d, __s, __f);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_strong(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                 memory_order __s, memory_order __f) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_weak(__e, __d, __s, __f);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_weak(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_weak(__e, __d, __m, __m);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_weak(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                               memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_weak(__e, __d, __m, __m);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_strong(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_strong(__e, __d, __m, __m);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    bool compare_exchange_strong(_Tp& __e, _Tp __d,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                 memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {return compare_exchange_strong(__e, __d, __m, __m);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked() _NOEXCEPT = default;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked() _NOEXCEPT : __a_() {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __a_(__d) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked(const __atomic_mutex_locked&) = delete;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) = delete;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) volatile = delete;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++private:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked(const __atomic_mutex_locked&);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked& operator=(const __atomic_mutex_locked&) volatile;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};        // end struct __atomic_mutex_locked
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// atomic<Integral>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++template <class _Tp>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct __atomic_mutex_locked<_Tp, true>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    : public __atomic_mutex_locked<_Tp, false>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef __atomic_mutex_locked<_Tp, false> __base;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef       typename __base::lock_type      lock_type;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    using __base::__lock_;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    using __base::na;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    __atomic_mutex_locked() _NOEXCEPT _LIBCPP_DEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __base(__d) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() += __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() += __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() -= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() -= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() &= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() &= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() |= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() |= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(const_cast<mutex&>(__lock_));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() ^= __op; return ret;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        { const lock_type g(__lock_);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    const _Tp ret = na(); na() ^= __op; return 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;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator++(int) volatile _NOEXCEPT      {return fetch_add(_Tp(1));}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator++(int) _NOEXCEPT               {return fetch_add(_Tp(1));}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator--(int) volatile _NOEXCEPT      {return fetch_sub(_Tp(1));}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator--(int) _NOEXCEPT               {return fetch_sub(_Tp(1));}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator++() volatile _NOEXCEPT         {return fetch_add(_Tp(1)) + _Tp(1);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator++() _NOEXCEPT                  {return fetch_add(_Tp(1)) + _Tp(1);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator--() volatile _NOEXCEPT         {return fetch_sub(_Tp(1)) - _Tp(1);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator--() _NOEXCEPT                  {return fetch_sub(_Tp(1)) - _Tp(1);}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator+=(_Tp __op) volatile _NOEXCEPT {return fetch_add(__op) + __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator+=(_Tp __op) _NOEXCEPT          {return fetch_add(__op) + __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator-=(_Tp __op) volatile _NOEXCEPT {return fetch_sub(__op) - __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator-=(_Tp __op) _NOEXCEPT          {return fetch_sub(__op) - __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator&=(_Tp __op) volatile _NOEXCEPT {return fetch_and(__op) & __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator&=(_Tp __op) _NOEXCEPT          {return fetch_and(__op) & __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator|=(_Tp __op) volatile _NOEXCEPT {return fetch_or(__op) | __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator|=(_Tp __op) _NOEXCEPT          {return fetch_or(__op) | __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator^=(_Tp __op) volatile _NOEXCEPT {return fetch_xor(__op) ^ __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator^=(_Tp __op) _NOEXCEPT          {return fetch_xor(__op) ^ __op;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_LIBCPP_END_NAMESPACE_STD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif  // _LIBCPP_ATOMIC_LOCKED
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm_release_80/projects/libcxx/include/atomic macports_release_80/projects/libcxx/include/atomic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d37e7b4b0..aed9e91a3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm_release_80/projects/libcxx/include/atomic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ macports_release_80/projects/libcxx/include/atomic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1885,4 +1885,50 @@ typedef atomic<uintmax_t> atomic_uintmax_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ _LIBCPP_END_NAMESPACE_STD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if       defined(__ppc__) && !defined(__ppc64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++// specialize fallback implementation where 64b atomics are missing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <__atomic_locked>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_LIBCPP_BEGIN_NAMESPACE_STD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++template <>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct atomic<long long> : public __atomic_mutex_locked<long long>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef long long             _Tp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef __atomic_mutex_locked<_Tp> __base;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    atomic() _NOEXCEPT _LIBCPP_DEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator=(_Tp __d) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {__base::store(__d); return __d;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator=(_Tp __d) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {__base::store(__d); return __d;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++template <>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++struct atomic<unsigned long long> :
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  public __atomic_mutex_locked<unsigned long long>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef unsigned long long            _Tp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    typedef __atomic_mutex_locked<_Tp> __base;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    atomic() _NOEXCEPT _LIBCPP_DEFAULT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator=(_Tp __d) volatile _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {__base::store(__d); return __d;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _LIBCPP_INLINE_VISIBILITY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _Tp operator=(_Tp __d) _NOEXCEPT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {__base::store(__d); return __d;}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++_LIBCPP_END_NAMESPACE_STD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif    // defined(__ppc__) && !defined(__ppc64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif  // _LIBCPP_ATOMIC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.20.1 (Apple Git-116)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/9000-patch-clang-7.0-support-emulated-tls.diff b/lang/llvm-8.0/files/9000-patch-clang-7.0-support-emulated-tls.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..0459630
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/9000-patch-clang-7.0-support-emulated-tls.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/tools/clang/lib/Basic/Targets/OSTargets.h b/tools/clang/lib/Basic/Targets/OSTargets.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d0354784..102605fe 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/lib/Basic/Targets/OSTargets.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/lib/Basic/Targets/OSTargets.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -93,7 +93,7 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     this->TLSSupported = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (Triple.isMacOSX())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      this->TLSSupported = !Triple.isMacOSXVersionLT(10, 7);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      this->TLSSupported = !Triple.isMacOSXVersionLT(10, 4);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     else if (Triple.isiOS()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       // 64-bit iOS supported it from 8 onwards, 32-bit device from 9 onwards,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       // 32-bit simulator from 10 onwards.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp b/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 00fff144..052924ab 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2255,7 +2255,7 @@ static void emitGlobalDtorWithCXAAtExit(CodeGenFunction &CGF,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   const char *Name = "__cxa_atexit";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (TLS) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     const llvm::Triple &T = CGF.getTarget().getTriple();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    Name = T.isOSDarwin() ?  "_tlv_atexit" : "__cxa_thread_atexit";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    Name = (T.isOSDarwin() && !T.isMacOSXVersionLT(10, 7)) ?  "_tlv_atexit" : "__cxa_thread_atexit";
</span><span style='display:block; white-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're assuming that the destructor function is something we can
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/9000-patch-llvm-7.0-support-emulated-tls.diff b/lang/llvm-8.0/files/9000-patch-llvm-7.0-support-emulated-tls.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..b96a36e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/9000-patch-llvm-7.0-support-emulated-tls.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/include/llvm/ADT/Triple.h b/include/llvm/ADT/Triple.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c95b16dd..ecc0f148 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/include/llvm/ADT/Triple.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/include/llvm/ADT/Triple.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -682,7 +682,7 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /// Tests whether the target uses emulated TLS as default.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool hasDefaultEmulatedTLS() const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return isAndroid() || isOSOpenBSD() || isWindowsCygwinEnvironment();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return isAndroid() || isOSOpenBSD() || isWindowsCygwinEnvironment() || isMacOSXVersionLT(10, 7);
</span><span style='display:block; white-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;color:#808080;'>diff --git a/lang/llvm-8.0/files/9001-macports-libstdcxx.diff b/lang/llvm-8.0/files/9001-macports-libstdcxx.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..c73a7b2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/9001-macports-libstdcxx.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,135 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/include/clang/Lex/HeaderSearchOptions.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/include/clang/Lex/HeaderSearchOptions.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -185,6 +185,9 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /// Use libc++ instead of the default libstdc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned UseLibcxx : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  /// Use MacPorts libstdc++ instead of default system libstdc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned UseMacPortsLibstdcxx : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /// Whether header search information should be output as for -v.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   unsigned Verbose : 1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/lib/Frontend/CompilerInvocation.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/lib/Frontend/CompilerInvocation.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1721,8 +1721,10 @@ static void ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Opts.UseBuiltinIncludes = !Args.hasArg(OPT_nobuiltininc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Opts.UseStandardSystemIncludes = !Args.hasArg(OPT_nostdsysteminc);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Opts.UseStandardCXXIncludes = !Args.hasArg(OPT_nostdincxx);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if (const Arg *A = Args.getLastArg(OPT_stdlib_EQ))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (const Arg *A = Args.getLastArg(OPT_stdlib_EQ)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     Opts.UseLibcxx = (strcmp(A->getValue(), "libc++") == 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    Opts.UseMacPortsLibstdcxx = (strcmp(A->getValue(), "macports-libstdc++") == 0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   Opts.ResourceDir = Args.getLastArgValue(OPT_resource_dir);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // Canonicalize -fmodules-cache-path before storing it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/lib/Frontend/InitHeaderSearch.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/lib/Frontend/InitHeaderSearch.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -111,7 +111,7 @@ static bool CanPrefixSysroot(StringRef Path) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(_WIN32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return !Path.empty() && llvm::sys::path::is_separator(Path[0]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  return llvm::sys::path::is_absolute(Path);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return llvm::sys::path::is_absolute(Path) && Path.find("@@MACPORTS_GCC_INCLUDE_DIR@@")!=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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -371,9 +371,17 @@ void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case llvm::Triple::ppc:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case llvm::Triple::ppc64:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      IsBaseFound = AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2.1",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                "powerpc-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                "ppc64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      IsBaseFound = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (HSOpts.UseMacPortsLibstdcxx) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        IsBaseFound = AddGnuCPlusPlusIncludePaths("@@MACPORTS_GCC_INCLUDE_DIR@@",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                  "@@MACPORTS_HOST_NAME@@", "@@MACPORTS_GCC_SUBDIRECTORY_ppc@@", "@@MACPORTS_GCC_SUBDIRECTORY_ppc64@@",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                  triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      IsBaseFound |= AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2.1",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                 "powerpc-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                 "ppc64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       IsBaseFound |= AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.0.0",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                  "powerpc-apple-darwin8", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                                  "ppc64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -381,9 +389,16 @@ void InitHeaderSearch::AddDefaultCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case llvm::Triple::x86:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case llvm::Triple::x86_64:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      IsBaseFound = AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2.1",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                "i686-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                                                "x86_64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      IsBaseFound = false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      if (HSOpts.UseMacPortsLibstdcxx) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        IsBaseFound = AddGnuCPlusPlusIncludePaths("@@MACPORTS_GCC_INCLUDE_DIR@@",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                  "@@MACPORTS_HOST_NAME@@", "@@MACPORTS_GCC_SUBDIRECTORY_i386@@", "@@MACPORTS_GCC_SUBDIRECTORY_x86_64@@", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      IsBaseFound |= AddGnuCPlusPlusIncludePaths("/usr/include/c++/4.2.1",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                 "i686-apple-darwin10", "",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                                                 "x86_64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       IsBaseFound |= AddGnuCPlusPlusIncludePaths(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           "/usr/include/c++/4.0.0", "i686-apple-darwin8", "", "x86_64", triple);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/include/clang/Driver/ToolChain.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/include/clang/Driver/ToolChain.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -91,7 +91,8 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   enum CXXStdlibType {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CST_Libcxx,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CST_Libstdcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    CST_Libstdcxx,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    CST_MacPortsLibstdcxx
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   enum RuntimeLibType {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1729,6 +1729,12 @@ void DarwinClang::AddCXXStdlibLibArgs(const ArgList &Args,
</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 ToolChain::CST_Libstdcxx:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ToolChain::CST_MacPortsLibstdcxx:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if (Type==ToolChain::CST_MacPortsLibstdcxx && getVFS().exists("@@MACPORTS_libstdc++@@")) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      CmdArgs.push_back("@@MACPORTS_libstdc++@@");
</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;'>+     // Unfortunately, -lstdc++ doesn't always exist in the standard search path;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // it was previously found in the gcc lib dir. However, for all the Darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // platforms we care about it was -lstdc++.6, so we search for that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/lib/Driver/ToolChains/Hexagon.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/lib/Driver/ToolChains/Hexagon.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -557,6 +557,8 @@ HexagonToolChain::GetCXXStdlibType(const ArgList &Args) const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return ToolChain::CST_Libstdcxx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   StringRef Value = A->getValue();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (Value == "macports-libstdc++")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return ToolChain::CST_MacPortsLibstdcxx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (Value != "libstdc++")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     getDriver().Diag(diag::err_drv_invalid_stdlib_name) << A->getAsString(Args);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- orig/tools/clang/lib/Driver/ToolChain.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ new/tools/clang/lib/Driver/ToolChain.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -674,6 +674,8 @@ ToolChain::CXXStdlibType ToolChain::GetCXXStdlibType(const ArgList &Args) const{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return ToolChain::CST_Libcxx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (LibName == "libstdc++")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return ToolChain::CST_Libstdcxx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  else if (LibName == "macports-libstdc++")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return ToolChain::CST_MacPortsLibstdcxx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   else if (LibName == "platform")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return GetDefaultCXXStdlibType();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -755,6 +757,7 @@ void ToolChain::AddCXXStdlibLibArgs(const ArgList &Args,
</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 ToolChain::CST_Libstdcxx:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  case ToolChain::CST_MacPortsLibstdcxx:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CmdArgs.push_back("-lstdc++");
</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;color:#808080;'>diff --git a/lang/llvm-8.0/files/9003-patch-clang-7.0-default-to-libcxx-on-all-systems.diff b/lang/llvm-8.0/files/9003-patch-clang-7.0-default-to-libcxx-on-all-systems.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..0b08962
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/9003-patch-clang-7.0-default-to-libcxx-on-all-systems.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git llvm-7.0.1.src/tools/clang/lib/Driver/ToolChains/Darwin.cpp llvm-7.0.1.src/tools/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index dc540688..64adab5c 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- llvm-7.0.1.src/tools/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ llvm-7.0.1.src/tools/clang/lib/Driver/ToolChains/Darwin.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -700,8 +700,8 @@ types::ID MachO::LookupTypeForExtension(StringRef Ext) const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bool MachO::HasNativeLLVMSupport() const { return true; }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ToolChain::CXXStdlibType Darwin::GetDefaultCXXStdlibType() const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  // Default to use libc++ on OS X 10.9+ and iOS 7+.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if ((isTargetMacOS() && !isMacosxVersionLT(10, 9)) ||
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  // Default to use libc++ on OS X 10.4+ and iOS 7+.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if ((isTargetMacOS() && !isMacosxVersionLT(10, 4)) ||
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        (isTargetIOSBased() && !isIPhoneOSVersionLT(7, 0)) ||
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        isTargetWatchOSBased())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return ToolChain::CST_Libcxx;
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/leopard-no-asan.patch b/lang/llvm-8.0/files/leopard-no-asan.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..0a41a52
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/leopard-no-asan.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/projects/compiler-rt/cmake/config-ix.cmake       2015-11-29 22:17:04.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/projects/compiler-rt/cmake/config-ix.cmake       2015-11-29 22:19:16.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -228,9 +228,6 @@ if(APPLE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     else()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       set(SANITIZER_MIN_OSX_VERSION 10.9)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if(SANITIZER_MIN_OSX_VERSION VERSION_LESS "10.7")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-      message(FATAL_ERROR "macOS deployment target '${SANITIZER_MIN_OSX_VERSION}' is too old.")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if(SANITIZER_MIN_OSX_VERSION VERSION_GREATER "10.9")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       message(WARNING "macOS deployment target '${SANITIZER_MIN_OSX_VERSION}' is too new, setting to '10.9' instead.")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       set(SANITIZER_MIN_OSX_VERSION 10.9)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/leopard-no-blocks.patch b/lang/llvm-8.0/files/leopard-no-blocks.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..06d40c4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/leopard-no-blocks.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2500edffc9f1f44983927351eb60d4fe1cee4bcd Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 7 Jan 2015 03:42:15 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] Leopard: Default to -fno-blocks
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lib/Driver/ToolChains.h | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 876bb01..27aa2ee 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/lib/Driver/ToolChains/Darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/lib/Driver/ToolChains/Darwin.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -257,7 +257,7 @@ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   bool IsBlocksDefault() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // Always allow blocks on Apple; users interested in versioning are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // expected to use /usr/include/Block.h.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return true;
</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;'>+   bool IsIntegratedAssemblerDefault() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     // Default integrated assembler to on for Apple's MachO targets.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+2.2.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/llvm-bin b/lang/llvm-8.0/files/llvm-bin
</span>new file mode 100755
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..30a8269
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/llvm-bin
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#!/bin/bash
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if [ -x /usr/bin/xcrun ] ; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    exec /usr/bin/xcrun EXEC_PATH "${@}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    exec EXEC_PATH "${@}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fi
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/llvm-bin-compat b/lang/llvm-8.0/files/llvm-bin-compat
</span>new file mode 100755
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..b060c1a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/llvm-bin-compat
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,2 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#!/bin/sh
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+exec EXEC_PATH "${@}"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/mp-clang-8.0 b/lang/llvm-8.0/files/mp-clang-8.0
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9d09697
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/mp-clang-8.0
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,34 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/c-index-test-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang++-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-format-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/scan-build-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/scan-view-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-apply-replacements-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-check-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-cl-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-query-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-rename-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/clang-tidy-mp-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;'>+-
</span><span style='display:block; white-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;'>+-
</span><span style='display:block; white-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;'>+-
</span><span style='display:block; white-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;color:#808080;'>diff --git a/lang/llvm-8.0/files/mp-llvm-8.0 b/lang/llvm-8.0/files/mp-llvm-8.0
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..beea328
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/mp-llvm-8.0
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,60 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/bugpoint-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llc-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/lli-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-ar-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-as-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-bcanalyzer-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-config-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-cov-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-diff-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-dis-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-dwarfdump-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-extract-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-link-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-mc-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-nm-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-objdump-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-ranlib-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-rtdyld-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-size-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-stress-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-symbolizer-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-tblgen-mp-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;'>+bin/opt-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-tblgen-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-readobj-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-profdata-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/dsymutil-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-cxxdump-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-c-test-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-dwp-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-lib-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-lto-mp-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/llvm-split-mp-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;'>+-
</span><span style='display:block; white-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;'>+-
</span><span style='display:block; white-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;'>+-
</span><span style='display:block; white-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;color:#808080;'>diff --git a/lang/llvm-8.0/files/openmp-locations.patch b/lang/llvm-8.0/files/openmp-locations.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..53419a2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/openmp-locations.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,39 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/lib/Driver/ToolChains/Clang.cpp b/lib/Driver/ToolChains/Clang.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 292cf72b56..d8c6327080 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/lib/Driver/ToolChains/Clang.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/lib/Driver/ToolChains/Clang.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3229,6 +3229,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case Driver::OMPRT_OMP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     case Driver::OMPRT_IOMP5:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       // Clang can generate useful OpenMP code for these two runtime libraries.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      // Automatically find MacPorts' omp.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      CmdArgs.push_back("-I@@PREFIX@@/include/libomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       CmdArgs.push_back("-fopenmp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       // If no option regarding the use of TLS in OpenMP codegeneration is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/lib/Driver/ToolChains/CommonArgs.cpp b/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 8a597b5b3a..9441bb8a56 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/lib/Driver/ToolChains/CommonArgs.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -444,15 +444,21 @@ bool tools::addOpenMPRuntime(ArgStringList &CmdArgs, const ToolChain &TC,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   switch (TC.getDriver().getOpenMPRuntime(Args)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case Driver::OMPRT_OMP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Automatically find MacPorts' libomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CmdArgs.push_back("-lomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case Driver::OMPRT_GOMP:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Automatically find MacPorts' libomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CmdArgs.push_back("-lgomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if (GompNeedsRT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       CmdArgs.push_back("-lrt");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case Driver::OMPRT_IOMP5:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Automatically find MacPorts' libomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     CmdArgs.push_back("-liomp5");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     break;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   case Driver::OMPRT_Unknown:
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/llvm-8.0/files/yosemite-no-clangd.patch b/lang/llvm-8.0/files/yosemite-no-clangd.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..0d34135
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/llvm-8.0/files/yosemite-no-clangd.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/tools/clang/tools/extra/CMakeLists.txt       2018-04-03 01:26:00.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/tools/clang/tools/extra/CMakeLists.txt       2018-04-03 14:05:29.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10,7 +10,6 @@ add_subdirectory(change-namespace)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(clang-doc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(clang-query)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(clang-move)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-add_subdirectory(clangd)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(include-fixer)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(pp-trace)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ add_subdirectory(tool-template)
</span></pre><pre style='margin:0'>

</pre>