<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi<br>
<br>
This the summary and status update I promised for work done on the
LLVM OpenMP runtime since December's code drop.<br>
<br>
We're now building on FreeBSD and OS X with clang ToT, and
KMP_AFFINITY_SUPPORTED has been introduced to selectively
enable/disable the feature which simplifies the addition of new
ports. Apart from typo fixes to some strings there have been no
functional changes to existing platforms.<br>
<br>
(The commits list isn't working so I'm posting a log of recent
changes at the end of this mail.)<br>
<br>
These topics have come up during the work where feedback would be
appreciated:<br>
<br>
<ul>
<li>Open questions:<br>
</li>
<ul>
<li>"GCC compatibility (versioned symbols)" - which platforms do
we want this enabled on? It's currently only for KMP_OS_LINUX
but I've noticed some third-party forks disable it completely.</li>
<li>C++ code in C sources: __kmp_join_call() in kmp.h has a C++
default argument so the C sources currently have to be
compiled as C++. The options are either to (a) make the header
C-compatible or (b) switch the remainder of the sources to C++
-- any preferences?</li>
</ul>
<li>FreeBSD tasks:</li>
<ul>
<li>GUIDED_ANALYTICAL_WORKAROUND: We need disclosure of this
problem report to complete support for FreeBSD. Jim, could you
provide a summary of Intel C75803?</li>
<li>KMP_TDATA_GTID implementation with TLS for FreeBSD</li>
<li>__kmp_is_address_mapped() implementation for FreeBSD</li>
</ul>
<li>Roadmap:</li>
<ul>
<li>CMake build system: For integration with the LLVM project a
CMake build system has been proposed. There's an early version
in the works now.</li>
<li>Release plan: Are we aiming for inclusion in +1 (3.5)?
soname, versioning?<br>
</li>
</ul>
</ul>
<br>
<br>
And the commit log:<br>
<br>
<br>
commit 2c3c8184e8811ee920ba25e2d5d049bb9e69a6e9<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Sun Mar 2 04:12:06 2014 +0000<br>
<br>
Make affinity support conditional on KMP_AFFINITY_SUPPORTED<br>
<br>
The feature was previously guarded with KMP_OS_LINUX ||
KMP_OS_WINDOWS but can<br>
now be enabled/disabled independently to simplify porting.<br>
<br>
Completes the work started in r202478.<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202613">https://llvm.org/svn/llvm-project/openmp/trunk@202613</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit 97a872b516f412617939b11740f4e552f5c01513<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Fri Feb 28 09:42:41 2014 +0000<br>
<br>
Add support for FreeBSD<br>
<br>
Port the OpenMP runtime to FreeBSD along with associated build
system changes.<br>
<br>
Also begin to generalize affinity capabilities so they aren't
tied explicitly<br>
to Windows and Linux.<br>
<br>
The port builds with stock clang and gmake and has no additional
runtime<br>
dependencies.<br>
<br>
All but a handful of the validation suite tests are now passing
on FreeBSD 10<br>
x86_64.<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202478">https://llvm.org/svn/llvm-project/openmp/trunk@202478</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit 816f7882c3c7f262a82b272818dae416c5bd8e8a<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Tue Feb 25 22:04:37 2014 +0000<br>
<br>
Restore string match behavior following changes in r202018<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202197">https://llvm.org/svn/llvm-project/openmp/trunk@202197</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit e49a05da06734f67e5937ae8bb641f6ff1ce04c5<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Tue Feb 25 00:38:58 2014 +0000<br>
<br>
Silence -Wdeprecated-register warnings with clang<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202095">https://llvm.org/svn/llvm-project/openmp/trunk@202095</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit 936e0d0480372239d90b1e2a46a0706364da6e66<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Mon Feb 24 12:29:14 2014 +0000<br>
<br>
Fix linking and get the build working on OS X<br>
<br>
No version of clang installed by XCode, ToT or otherwise
recognizes the flag<br>
'-no-intel-extensions' and more recent versions error out on it.<br>
<br>
Prospectively conditionalize the flag behind "icc" to fix the
mainline build<br>
with clang.<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202030">https://llvm.org/svn/llvm-project/openmp/trunk@202030</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit 724ef6a592261750079e17c369c6039211ec646b<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Mon Feb 24 12:29:09 2014 +0000<br>
<br>
Fix clang compiler detection on OS X<br>
<br>
check-tools.pl was hard-wired to expect the Apple compiler
version string which<br>
doesn't make much sense, especially for a LLVM project.<br>
<br>
The correctness and value of these compiler version checks still
isn't clear<br>
following this build fix but they are retained for now.<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202029">https://llvm.org/svn/llvm-project/openmp/trunk@202029</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit c3b8311f916acba81315bbdf1d741cdf0438128f<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Mon Feb 24 11:47:00 2014 +0000<br>
<br>
clang build fix: don't check for gnu tools by default<br>
<br>
gcc/g++ don't exist on modern OS X development environments so
the failed<br>
checks for gcc were causing the build to break even with 'make
compiler=clang'.<br>
<br>
(The rationale for the check refers to a file 'touch-test.c'
which no longer<br>
exists in the codebase.)<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202027">https://llvm.org/svn/llvm-project/openmp/trunk@202027</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
commit 4bf04f627e8005bc19be5ced4eb6ca8fe1812559<br>
Author: Alp Toker <a class="moz-txt-link-rfc2396E" href="mailto:alp@nuanti.com"><alp@nuanti.com></a><br>
Date: Mon Feb 24 10:40:15 2014 +0000<br>
<br>
Fix typos<br>
<br>
git-svn-id:
<a class="moz-txt-link-freetext" href="https://llvm.org/svn/llvm-project/openmp/trunk@202018">https://llvm.org/svn/llvm-project/openmp/trunk@202018</a>
91177308-0d34-0410-b5e6-96231b3b80d8<br>
<br>
<br>
Alp.<br>
<br>
<pre class="moz-signature" cols="72">--
<a class="moz-txt-link-freetext" href="http://www.nuanti.com">http://www.nuanti.com</a>
the browser experts
</pre>
</body>
</html>