Commit Graph
106 Commits
Author SHA1 Message Date
Jonathan Peyton bbb8bf893d Allow gcc 5.x to compile library.
Change check of __GNUC__ macro from:
__GNUC__ == 4 to __GNUC__ >= 4


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238347 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-27 18:57:33 +00:00
Jonathan Peyton 29ed987b04 Change macro GUIDEDLL_EXPORTS to KMP_DYNAMIC_LIB
A while back, Hal suggested updating the GUIDEDLL_EXPORTS macro guard to 
a more descriptive name.  It represents a dynamic library build so 
KMP_DYNAMIC_LIB is a more suitable name.

Differential Revision: http://reviews.llvm.org/D9899


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238221 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-26 17:32:53 +00:00
Jonathan Peyton 0b4c1d5ffa Change CMake file formatting
Removing unnecessary spaces. For CACHE variables, putting the description string
on its own line which mimics libcxx. There are no logic changes.

Differential Revision: http://reviews.llvm.org/D9945


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238219 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-26 17:27:01 +00:00
Jonathan Peyton ae9c8b86e4 One line fix for possible out-of-bounds issue in kmp_runtime.c
The variable j is now checked so there is no possible
out-of-bounds issue when accessing __kmp_nested_nth.nth[] array.



git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238216 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-26 16:38:26 +00:00
Jonathan Peyton 066dde2994 One line fix for possible out-of-bounds issue in kmp_error.c
This off-by-one error could lead to an out-of-bounds access on the
cons_text_c[] array.



git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238215 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-26 16:30:41 +00:00
Andrey Churbanov 030d077d4b fixed missed arch renaming (from C.Bergstrom)
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238153 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-25 20:01:16 +00:00
Jonathan Peyton 336e25ce53 Fix doxygen comments
These fixes make doxygen happy.


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238061 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-22 22:37:22 +00:00
Jonathan Peyton 6590b366d3 Fix spelling errors
These spelling errors are in comments and some debug messages.


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@238060 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-22 22:35:51 +00:00
Jonathan Peyton b9f584cb60 One line fix - bug with final clause of task construct
Should be looking at parent_task->td_flags.final instead of the recently allocated task.


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237959 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-21 21:16:38 +00:00
Jonathan Peyton 78445f97d8 Fix task team synchronization
The fix simply syncs up the new threads to have the same task_state and
task_team as the old threads.  The master thread is skipped,
because it shouldn't at this point have the team's task_team value yet
-- it should still have parent_team's task_team.  It gets pointed at
the new team's task_team later, after __kmp_allocate_team returns, and
the master has stored a memo of it's old task_state.



git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237916 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-21 17:20:01 +00:00
Jonathan Peyton 3913441f89 Change CMake variable prefix to LIBOMP
Cached CMake variables need to have a prefix so they don't collide with other
projects. This change (a lot of simple changes) simply prefixes cached variables
with LIBOMP_ and sets all of these variables to UPPERCASE which is convention.
e.g., os => LIBOMP_OS, ompt_support => LIBOMP_OMPT_SUPPORT.

Differential Revision: http://reviews.llvm.org/D9829


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237845 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-20 22:33:24 +00:00
Jonathan Peyton 97212dc34e Makefile fix for testsuite -- Follow up to r237618
This changes INCLUDE_PATH to C_INCLUDE_PATH and misspelled CLASH to SLASH

Patch by Sunita Chandrasekaran


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237727 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-19 21:28:33 +00:00
Jonathan Peyton 02f4d88433 Fix for testsuite including omp.h
When calling the testsuite, clang could not locate omp.h.  The
proper environment variable was modified to include:
exports/common/omp.h.  Documentation was also updated to be more
clear.

Patch by Sunita Chandrasekaran


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237618 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-18 21:38:50 +00:00
Jonathan Peyton 3a7707192b Delete old CMake build system
Remove runtime/CMakeLists.txt.old and runtime/src/CMakeLists.txt as
they no longer worked and were not being kept up to date.

Differential Revision: http://reviews.llvm.org/D9756


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237615 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-18 21:21:25 +00:00
Jonathan Peyton 8e7493dbf1 Small fix to allow FreeBSD build to work.
Add xexpand macro to the FTN_IS_INITIAL_DEVICE api function

Patch by Davide Italiano

Differential Revision: http://reviews.llvm.org/D9798


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237472 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-15 19:57:36 +00:00
Jonathan Peyton be30a9edec Testing commit privilege
Added comment to CMakeLists.txt about library install directory suffix option.


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237384 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-14 19:54:56 +00:00
Andrey Churbanov 95876670b8 Cross compiler build fix [Important] - from J.Peyton, initial version from C.Bergstrom.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237360 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-14 12:54:08 +00:00
Andrey Churbanov 41ab51f237 patch to allow lib name at configure time (from C.Bergstrom)
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237130 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-12 13:31:57 +00:00
Andrey Churbanov a6bafed791 Missing file runtime/src/include/41/ompt.h.var added; fixed build to optionally use added file.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237125 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-12 13:10:54 +00:00
Andrey Churbanov d4f09d3c11 D9576: Updates documentation to include all possible architecture builds, synchronizes runtime/README.txt and www/README.txt, updates the building-with-CMake documentation. This change also changes references of Intel(R) OpenMP Library to LLVM OpenMP Library.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@237124 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-12 12:52:43 +00:00
Andrey Churbanov 1fd47b8943 Change some text areas from saying Intel(R) OpenMP runtime library to LLVM OpenMP runtime library.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236884 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-08 17:41:32 +00:00
Andrey Churbanov 4af0f3a6a7 D9306 omp 4.1 async offload support (partial): code changes
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236753 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-07 17:41:51 +00:00
Andrey Churbanov 941ff3cfec D9306 omp 4.1 async offload support (partial): build changes for version 4.1
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236746 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-07 17:07:06 +00:00
Andrey Churbanov d3bad19554 D9306 omp 4.1 async offload support (partial): added version 4.1 headers.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236744 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-07 16:58:05 +00:00
Andrey Churbanov efb6bb2106 D9302.partial2: cleanup of ittnotify checks, that eliminats redundant notifications in case of nested regions.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236631 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-06 19:22:36 +00:00
Andrey Churbanov 730074da8d D9302.partial: bug fix for ittnotify: added missed timing on hierarchical barrier.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236623 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-06 18:34:15 +00:00
Andrey Churbanov 08a240ddea Added missed symbol omp_in_final into include/module files.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236619 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-06 18:13:52 +00:00
Andrey Churbanov 00a59d4327 ittnotify: change default notification mode to 3, which includes parallel regions, barriers + imbalance, loops, single regions reporting.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236616 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-06 17:41:58 +00:00
Andrey Churbanov afd2c6c3fd Integrate libiomp CMake into LLVM CMake build system.
This patch integrates the libiomp CMake build system into the LLVM CMake build 
system so that users can checkout libiomp into the projects directory of llvm 
and build llvm,clang, and libiomp all together.  These changes specifically 
introduce a new install target which will put libraries and headers into the 
correct locations when either a standalone build or part of llvm.
The copy_recipe() method has been removed in favor of the POST_BUILD method 
to move headers into the exports subdirectory.  And lastly, the MicroTests.cmake 
file was refactored which led to simpler target dependencies and a new target, 
make libiomp-micro-tests, which performs the 5 small tests (test-relo, 
test-touch, etc.) when called.


git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236534 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-05 20:02:52 +00:00
Andrey Churbanov 98270aa879 These are the actual changes in the runtime to issue OMPT-related functions. All of them are surrounded by #if OMPT_SUPPORT and can be disabled (which is the default).
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236122 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-29 16:42:24 +00:00
Andrey Churbanov 7866075b26 This patch contains the new files for OMPT and the needed changes to the build infrastructure
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236117 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-29 16:22:07 +00:00
Andrey Churbanov 107fb0e39e This is a preparation patch to get information about the actual release status from nested locks for OMPT.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236114 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-29 15:52:19 +00:00
Andrey Churbanov 1d0ad7f8a7 UH OpenMP testsuite update
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@236105 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-29 14:36:38 +00:00
Andrey Churbanov 97f7eb4877 The generation of the hierarchy used by hierarchical barrier improved in how the generation reacts to affinity set to none, or disabled, or no affinity available, or oversubscription. Some cleanup actions based on review comments to follow: need to use meaningful names instead of digital constants, e.g. use enumerators.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@234775 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-13 18:51:59 +00:00
Andrey Churbanov 8c2806cda5 Replace some unsafe API calls with safe alternatives on Windows, prepare code for similar actions on other platforms - wrap unsafe API calls into macros.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@233915 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-02 13:27:08 +00:00
Andrey Churbanov 1e585c2e08 Eliminated the write to depth field of the machine_hierarchy data structure in __kmp_get_hierarchy(), thus fixing race condition. Now local variable used by each thread.
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@233914 91177308-0d34-0410-b5e6-96231b3b80d8
2015-04-02 13:18:50 +00:00
Andrey Churbanov 03e9d1a623 fix for broken commit 231774
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231781 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 10:14:57 +00:00
Andrey Churbanov de7026a553 issuing of incorrect warning fixed
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231779 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:34:38 +00:00
Andrey Churbanov 37d0af3296 cleanup: removed unused function __kmp_change_thread_affinity_mask
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231778 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:31:21 +00:00
Andrey Churbanov 890e8fd276 proc_bind_disabled enum value removed, its usage replased with proc_bind_false
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231776 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:19:47 +00:00
Andrey Churbanov f2d8bd6591 cleanup: usages of mask size wrapped into macros
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231775 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:15:26 +00:00
Andrey Churbanov 24a57ca394 Adding some 8-bit atomic operations for future use
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231774 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:03:42 +00:00
Andrey Churbanov 20b8da7236 changed unsigned types to signed - caused by comments of Hal Finkel on one of earlier patches
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231773 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-10 09:00:36 +00:00
Andrey Churbanov 8b78c4a5dc moved Windows-specific flags under the WINDOWS guard in CMake
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231384 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-05 17:50:48 +00:00
Andrey Churbanov 3fa7333224 added KMP_NESTED_HOT_TEAMS macro definition
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231383 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-05 17:48:53 +00:00
Andrey Churbanov 137f02169d minor change: comment improved
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231381 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-05 17:46:50 +00:00
Andrey Churbanov 1f60457c77 Cleanup provided by Carlo Bertolli
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@231078 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-03 16:19:57 +00:00
Andrey Churbanov f22e087f7c Removed all header files for OpenMP 2.5
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@230521 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-25 18:38:08 +00:00
Andrey Churbanov 893d25d72c Export the common header files to exports/ with CMake
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@230520 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-25 18:32:30 +00:00
Andrey Churbanov 45ed5c3e63 Set the Intel compiler as default when building for the MIC without CMake
git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@230519 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-25 18:30:50 +00:00