Commit Graph

109 Commits

Author SHA1 Message Date
Jonathan Peyton 7881aa1b3a 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.

llvm-svn: 237959
2015-05-21 21:16:38 +00:00
Jonathan Peyton 057d77d8c1 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.

llvm-svn: 237916
2015-05-21 17:20:01 +00:00
Jonathan Peyton 7979a07611 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

llvm-svn: 237845
2015-05-20 22:33:24 +00:00
Jonathan Peyton dee6ce71ac 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

llvm-svn: 237727
2015-05-19 21:28:33 +00:00
Jonathan Peyton 41216393a4 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

llvm-svn: 237618
2015-05-18 21:38:50 +00:00
Jonathan Peyton f91cebf7c5 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

llvm-svn: 237615
2015-05-18 21:21:25 +00:00
Jonathan Peyton e70f810378 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

llvm-svn: 237472
2015-05-15 19:57:36 +00:00
Jonathan Peyton 38b54cb67b Testing commit privilege
Added comment to CMakeLists.txt about library install directory suffix option.

llvm-svn: 237384
2015-05-14 19:54:56 +00:00
Andrey Churbanov 708fa8e899 Cross compiler build fix [Important] - from J.Peyton, initial version from C.Bergstrom.
llvm-svn: 237360
2015-05-14 12:54:08 +00:00
Andrey Churbanov e3ebce6bdf Removed mentioning of OpenMP as unsupported feature (patch2 from A.Bokhanko)
llvm-svn: 237253
2015-05-13 13:42:59 +00:00
Andrey Churbanov 5a7a5d1dab patch to allow lib name at configure time (from C.Bergstrom)
llvm-svn: 237130
2015-05-12 13:31:57 +00:00
Andrey Churbanov 5c8f90b1ad Missing file runtime/src/include/41/ompt.h.var added; fixed build to optionally use added file.
llvm-svn: 237125
2015-05-12 13:10:54 +00:00
Andrey Churbanov 4dc2a6b704 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.
llvm-svn: 237124
2015-05-12 12:52:43 +00:00
Andrey Churbanov 820b25550b Change some text areas from saying Intel(R) OpenMP runtime library to LLVM OpenMP runtime library.
llvm-svn: 236884
2015-05-08 17:41:32 +00:00
Andrey Churbanov 535b6faaf0 D9306 omp 4.1 async offload support (partial): code changes
llvm-svn: 236753
2015-05-07 17:41:51 +00:00
Andrey Churbanov 062e198d93 D9306 omp 4.1 async offload support (partial): build changes for version 4.1
llvm-svn: 236746
2015-05-07 17:07:06 +00:00
Andrey Churbanov ea4fa5dd1d D9306 omp 4.1 async offload support (partial): added version 4.1 headers.
llvm-svn: 236744
2015-05-07 16:58:05 +00:00
Andrey Churbanov 5db6639225 D7631: added regression tests for hinted locks - to be integrated into testsuite.
llvm-svn: 236632
2015-05-06 19:40:54 +00:00
Andrey Churbanov 51aecb82cd D9302.partial2: cleanup of ittnotify checks, that eliminats redundant notifications in case of nested regions.
llvm-svn: 236631
2015-05-06 19:22:36 +00:00
Andrey Churbanov e6bfb73fd5 D9302.partial: bug fix for ittnotify: added missed timing on hierarchical barrier.
llvm-svn: 236623
2015-05-06 18:34:15 +00:00
Andrey Churbanov f39dc63053 Added missed symbol omp_in_final into include/module files.
llvm-svn: 236619
2015-05-06 18:13:52 +00:00
Andrey Churbanov c6317d55e4 ittnotify: change default notification mode to 3, which includes parallel regions, barriers + imbalance, loops, single regions reporting.
llvm-svn: 236616
2015-05-06 17:41:58 +00:00
Andrey Churbanov 8389e235e9 Liboffload: Patch for MPSS > 3.4.x (provided by Tim Cramer)
llvm-svn: 236588
2015-05-06 10:58:40 +00:00
Andrey Churbanov 648467ed05 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.

llvm-svn: 236534
2015-05-05 20:02:52 +00:00
Andrey Churbanov d7d088f815 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).
llvm-svn: 236122
2015-04-29 16:42:24 +00:00
Andrey Churbanov e5f4492e30 This patch contains the new files for OMPT and the needed changes to the build infrastructure
llvm-svn: 236117
2015-04-29 16:22:07 +00:00
Andrey Churbanov 8d09facaf2 This is a preparation patch to get information about the actual release status from nested locks for OMPT.
llvm-svn: 236114
2015-04-29 15:52:19 +00:00
Andrey Churbanov a951e21087 UH OpenMP testsuite update
llvm-svn: 236105
2015-04-29 14:36:38 +00:00
Andrey Churbanov 1021040de3 updated copyright date to 2015
llvm-svn: 235086
2015-04-16 11:10:17 +00:00
Andrey Churbanov aa1f2b6306 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.
llvm-svn: 234775
2015-04-13 18:51:59 +00:00
Andrey Churbanov 74bf17b8ff Replace some unsafe API calls with safe alternatives on Windows, prepare code for similar actions on other platforms - wrap unsafe API calls into macros.
llvm-svn: 233915
2015-04-02 13:27:08 +00:00
Andrey Churbanov 1362ae750f 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.
llvm-svn: 233914
2015-04-02 13:18:50 +00:00
Andrey Churbanov d39f11c026 fix for broken commit 231774
llvm-svn: 231781
2015-03-10 10:14:57 +00:00
Andrey Churbanov 16a1432176 issuing of incorrect warning fixed
llvm-svn: 231779
2015-03-10 09:34:38 +00:00
Andrey Churbanov 2b8ecbeeb6 cleanup: removed unused function __kmp_change_thread_affinity_mask
llvm-svn: 231778
2015-03-10 09:31:21 +00:00
Andrey Churbanov 94e569e0e6 proc_bind_disabled enum value removed, its usage replased with proc_bind_false
llvm-svn: 231776
2015-03-10 09:19:47 +00:00
Andrey Churbanov 1f037e495a cleanup: usages of mask size wrapped into macros
llvm-svn: 231775
2015-03-10 09:15:26 +00:00
Andrey Churbanov 7b2ab719fe Adding some 8-bit atomic operations for future use
llvm-svn: 231774
2015-03-10 09:03:42 +00:00
Andrey Churbanov 128755741f changed unsigned types to signed - caused by comments of Hal Finkel on one of earlier patches
llvm-svn: 231773
2015-03-10 09:00:36 +00:00
Andrey Churbanov 1b625ddc0d moved Windows-specific flags under the WINDOWS guard in CMake
llvm-svn: 231384
2015-03-05 17:50:48 +00:00
Andrey Churbanov 1035f5721a added KMP_NESTED_HOT_TEAMS macro definition
llvm-svn: 231383
2015-03-05 17:48:53 +00:00
Andrey Churbanov e4b9213f80 minor change: comment improved
llvm-svn: 231381
2015-03-05 17:46:50 +00:00
Andrey Churbanov bebb54050b Cleanup provided by Carlo Bertolli
llvm-svn: 231078
2015-03-03 16:19:57 +00:00
Andrey Churbanov f42e83cf72 Removed all header files for OpenMP 2.5
llvm-svn: 230521
2015-02-25 18:38:08 +00:00
Andrey Churbanov 2638298646 Export the common header files to exports/ with CMake
llvm-svn: 230520
2015-02-25 18:32:30 +00:00
Andrey Churbanov 6d313413a8 Set the Intel compiler as default when building for the MIC without CMake
llvm-svn: 230519
2015-02-25 18:30:50 +00:00
Andrey Churbanov e8595de647 Two warning messages fixed.
llvm-svn: 230035
2015-02-20 18:19:41 +00:00
Andrey Churbanov fda00d095f Misprint in comment fixed
llvm-svn: 230034
2015-02-20 18:17:03 +00:00
Andrey Churbanov 613edeb89b Detect Intel MIC architecture and set some defaults at run time instead of build time.
llvm-svn: 230033
2015-02-20 18:14:43 +00:00
Andrey Churbanov 723a6b64bb Removed unused varargs from __kmpc_flush function.
llvm-svn: 230032
2015-02-20 18:09:27 +00:00