<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/openmp/runtime/src/kmp_utility.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[OpenMP] Remove unused logical/physical CPUID information (#83298)</title>
<updated>2024-03-12T18:37:01+00:00</updated>
<author>
<name>Jonathan Peyton</name>
<email>jonathan.l.peyton@intel.com</email>
</author>
<published>2024-03-12T18:37:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6272500e0b1456a87256f0c8659fdc86cfe3ef9a'/>
<id>6272500e0b1456a87256f0c8659fdc86cfe3ef9a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[openmp][wasm] Allow compiling OpenMP to WebAssembly  (#71297)</title>
<updated>2023-12-14T19:48:01+00:00</updated>
<author>
<name>Andrew Brown</name>
<email>andrew.brown@intel.com</email>
</author>
<published>2023-12-14T19:48:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=68ea91dd8b506764c0a89e9220cfcefcf3790973'/>
<id>68ea91dd8b506764c0a89e9220cfcefcf3790973</id>
<content type='text'>
This change allows building the static OpenMP runtime, `libomp.a`, as
WebAssembly. It builds on the work done in [D142593] but goes further in
several ways:
 - it makes the OpenMP CMake files more WebAssembly-aware
- it conditions much more code (or code that had been refactored since
[D142593]) for `KMP_ARCH_WASM` and `KMP_OS_WASI`
- it fixes a Clang crash due to unimplemented common symbols in
WebAssembly

The commit messages have more details. Please understand this PR as a
start, not the completed work, for WebAssembly support in OpenMP.
Getting the tests running somehow would be a good next step, e.g.; but
what is contained here works, at least with recent versions of
[wasi-sdk] and engines that support [wasi-threads]. I suspect the same
is true for Emscripten and browsers, but I have not tested that
workflow.

[D142593]: https://reviews.llvm.org/D142593
[wasi-sdk]: https://github.com/WebAssembly/wasi-sdk
[wasi-threads]: https://github.com/WebAssembly/wasi-threads

---------

Co-authored-by: Atanas Atanasov &lt;atanas.atanasov@intel.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This change allows building the static OpenMP runtime, `libomp.a`, as
WebAssembly. It builds on the work done in [D142593] but goes further in
several ways:
 - it makes the OpenMP CMake files more WebAssembly-aware
- it conditions much more code (or code that had been refactored since
[D142593]) for `KMP_ARCH_WASM` and `KMP_OS_WASI`
- it fixes a Clang crash due to unimplemented common symbols in
WebAssembly

The commit messages have more details. Please understand this PR as a
start, not the completed work, for WebAssembly support in OpenMP.
Getting the tests running somehow would be a good next step, e.g.; but
what is contained here works, at least with recent versions of
[wasi-sdk] and engines that support [wasi-threads]. I suspect the same
is true for Emscripten and browsers, but I have not tested that
workflow.

[D142593]: https://reviews.llvm.org/D142593
[wasi-sdk]: https://github.com/WebAssembly/wasi-sdk
[wasi-threads]: https://github.com/WebAssembly/wasi-threads

---------

Co-authored-by: Atanas Atanasov &lt;atanas.atanasov@intel.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] Solve potential VERSION script error w/ OMPT symbols</title>
<updated>2023-01-03T21:47:12+00:00</updated>
<author>
<name>JP Lehr</name>
<email>JanPatrick.Lehr@amd.com</email>
</author>
<published>2022-12-22T23:28:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=263962545daef2973cf41ad71718c1d1653d58da'/>
<id>263962545daef2973cf41ad71718c1d1653d58da</id>
<content type='text'>
The patch adds the symbols if OMPT_SUPPORT is not defined.
Github issue: https://github.com/llvm/llvm-project/issues/59660

Reviewed By: jhuber6

Differential Revision: https://reviews.llvm.org/D140591
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The patch adds the symbols if OMPT_SUPPORT is not defined.
Github issue: https://github.com/llvm/llvm-project/issues/59660

Reviewed By: jhuber6

Differential Revision: https://reviews.llvm.org/D140591
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP][mingw] Fix build for aarch64 target</title>
<updated>2022-11-08T13:27:03+00:00</updated>
<author>
<name>Alvin Wong</name>
<email>alvin@alvinhc.com</email>
</author>
<published>2022-11-04T22:22:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a356782426f5bf54a00570e1f925345e5fda7b2e'/>
<id>a356782426f5bf54a00570e1f925345e5fda7b2e</id>
<content type='text'>
This patch changes AArch64 + `__GNUC__` to use `__sync` builtins to
implement internal atomic macros just like for Unix, because mingw-w64
is missing some of the intrinsics which the MSVC codepath is using.

Then some remaining intel-only functions are removed from dllexport to
fix linking.

This should fix https://github.com/llvm/llvm-project/issues/56349.

Reviewed By: natgla

Differential Revision: https://reviews.llvm.org/D137168
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch changes AArch64 + `__GNUC__` to use `__sync` builtins to
implement internal atomic macros just like for Unix, because mingw-w64
is missing some of the intrinsics which the MSVC codepath is using.

Then some remaining intel-only functions are removed from dllexport to
fix linking.

This should fix https://github.com/llvm/llvm-project/issues/56349.

Reviewed By: natgla

Differential Revision: https://reviews.llvm.org/D137168
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP][host runtime] Add initial hybrid CPU support</title>
<updated>2021-10-14T21:49:42+00:00</updated>
<author>
<name>Peyton, Jonathan L</name>
<email>jonathan.l.peyton@intel.com</email>
</author>
<published>2021-10-14T21:41:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=acb3b187c4c88650a6a717a1bcb234d27d0d7f54'/>
<id>acb3b187c4c88650a6a717a1bcb234d27d0d7f54</id>
<content type='text'>
Detect, through CPUID.1A, and show user different core types through
KMP_AFFINITY=verbose mechanism. Offer future runtime optimizations
 __kmp_is_hybrid_cpu() to know whether running on a hybrid system or not.

Differential Revision: https://reviews.llvm.org/D110435
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Detect, through CPUID.1A, and show user different core types through
KMP_AFFINITY=verbose mechanism. Offer future runtime optimizations
 __kmp_is_hybrid_cpu() to know whether running on a hybrid system or not.

Differential Revision: https://reviews.llvm.org/D110435
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP][host runtime] small fixup of RTM CPUID bit check</title>
<updated>2021-10-14T21:49:42+00:00</updated>
<author>
<name>Peyton, Jonathan L</name>
<email>jonathan.l.peyton@intel.com</email>
</author>
<published>2021-10-14T21:37:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b840d3ab0d8a1953fe7d39a87970260088b9ac41'/>
<id>b840d3ab0d8a1953fe7d39a87970260088b9ac41</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP][host runtime] Introduce kmp_cpuinfo_flags_t to replace integer flags</title>
<updated>2021-10-01T16:08:39+00:00</updated>
<author>
<name>Peyton, Jonathan L</name>
<email>jonathan.l.peyton@intel.com</email>
</author>
<published>2021-09-20T18:24:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=343b9e8590db6bc815df3a3fec5bb25c23261476'/>
<id>343b9e8590db6bc815df3a3fec5bb25c23261476</id>
<content type='text'>
Store CPUID support flags as bits instead of using entire integers.

Differential Revision: https://reviews.llvm.org/D110091
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Store CPUID support flags as bits instead of using entire integers.

Differential Revision: https://reviews.llvm.org/D110091
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] Remove unused cpu_stackoffset member</title>
<updated>2021-03-15T21:52:04+00:00</updated>
<author>
<name>Peyton, Jonathan L</name>
<email>jonathan.l.peyton@intel.com</email>
</author>
<published>2021-03-15T21:48:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7085f045739544b303e9147ab4e11f323bc782de'/>
<id>7085f045739544b303e9147ab4e11f323bc782de</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP][NFC] clang-format the whole openmp project</title>
<updated>2021-02-20T17:46:32+00:00</updated>
<author>
<name>Shilei Tian</name>
<email>tianshilei1992@gmail.com</email>
</author>
<published>2021-02-20T17:46:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=309b00a42e902e816dad03c2c2f1a9e41ba130bc'/>
<id>309b00a42e902e816dad03c2c2f1a9e41ba130bc</id>
<content type='text'>
Same script as D95318. Test files are excluded.

Reviewed By: AndreyChurbanov

Differential Revision: https://reviews.llvm.org/D97088
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Same script as D95318. Test files are excluded.

Reviewed By: AndreyChurbanov

Differential Revision: https://reviews.llvm.org/D97088
</pre>
</div>
</content>
</entry>
<entry>
<title>[OpenMP] libomp: Handle implicit conversion warnings</title>
<updated>2020-12-30T21:39:57+00:00</updated>
<author>
<name>Terry Wilmarth</name>
<email>terry.l.wilmarth@intel.com</email>
</author>
<published>2020-12-30T21:39:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6b316febb4388764789677f81f03aff373ec35b2'/>
<id>6b316febb4388764789677f81f03aff373ec35b2</id>
<content type='text'>
This patch partially prepares the runtime source code to be built with
-Wconversion, which should trigger warnings if any implicit conversions
can possibly change a value. For builds done with icc or gcc, all such
warnings are handled in this patch. clang gives a much longer list of
warnings, particularly for sign conversions, which the other compilers
don't report. The -Wconversion flag is commented into cmake files, but
I'm not going to turn it on. If someone thinks it is important, and wants
to fix all the clang warnings, they are welcome to.

Types of changes made here involve either improving the consistency of types
used so that no conversion is needed, or else performing careful explicit
conversions, when we're sure a problem won't arise.

Patch is a combination of changes by Terry Wilmarth and Johnny Peyton.

Differential Revision: https://reviews.llvm.org/D92942
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch partially prepares the runtime source code to be built with
-Wconversion, which should trigger warnings if any implicit conversions
can possibly change a value. For builds done with icc or gcc, all such
warnings are handled in this patch. clang gives a much longer list of
warnings, particularly for sign conversions, which the other compilers
don't report. The -Wconversion flag is commented into cmake files, but
I'm not going to turn it on. If someone thinks it is important, and wants
to fix all the clang warnings, they are welcome to.

Types of changes made here involve either improving the consistency of types
used so that no conversion is needed, or else performing careful explicit
conversions, when we're sure a problem won't arise.

Patch is a combination of changes by Terry Wilmarth and Johnny Peyton.

Differential Revision: https://reviews.llvm.org/D92942
</pre>
</div>
</content>
</entry>
</feed>
