| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
This patch generates call to "kmpc_push_num_threads(ident_t *loc, kmp_int32 global_tid, kmp_int32 num_threads);" library function before calling "kmpc_fork_call" each time there is an associated "num_threads" clause in the "omp parallel" directive.
Differential Revision: http://reviews.llvm.org/D5145
llvm-svn: 219599
|
|
|
|
| |
llvm-svn: 219504
|
|
|
|
|
|
| |
Includes parsing and semantic analysis for 'omp teams' directive support from OpenMP 4.0. Adds additional analysis to 'omp target' directive with 'omp teams' directive.
llvm-svn: 219385
|
|
|
|
|
|
|
|
| |
This patch generates some helper variables that used as private copies of the corresponding original variables inside an OpenMP 'parallel' directive. These generated variables are initialized by copy using values of the original variables (with the copy constructor, if any). For arrays, initializator is generated for single element and in the codegen procedure this initial value is automatically propagated between all elements of the private copy.
In outlined function, references to original variables are replaced by the references to these private helper variables. At the end of the initialization of the private variables an implicit barier is generated by calling __kmpc_barrier(...) runtime function to be sure that all threads were initialized using original values of the variables.
Differential Revision: http://reviews.llvm.org/D5140
llvm-svn: 219306
|
|
|
|
|
|
| |
Still troubles with OpenMP/parallel_firstprivate_codegen.cpp (now in ARM buildbots).
llvm-svn: 219298
|
|
|
|
|
|
|
|
| |
This patch generates some helper variables that used as private copies of the corresponding original variables inside an OpenMP 'parallel' directive. These generated variables are initialized by copy using values of the original variables (with the copy constructor, if any). For arrays, initializator is generated for single element and in the codegen procedure this initial value is automatically propagated between all elements of the private copy.
In outlined function, references to original variables are replaced by the references to these private helper variables. At the end of the initialization of the private variables an implicit barier is generated by calling __kmpc_barrier(...) runtime function to be sure that all threads were initialized using original values of the variables.
Differential Revision: http://reviews.llvm.org/D5140
llvm-svn: 219297
|
|
|
|
|
|
| |
To fix issues with test OpenMP/parallel_firstprivate_codegen.cpp
llvm-svn: 219296
|
|
|
|
|
|
|
|
| |
This patch generates some helper variables that used as private copies of the corresponding original variables inside an OpenMP 'parallel' directive. These generated variables are initialized by copy using values of the original variables (with the copy constructor, if any). For arrays, initializator is generated for single element and in the codegen procedure this initial value is automatically propagated between all elements of the private copy.
In outlined function, references to original variables are replaced by the references to these private helper variables. At the end of the initialization of the private variables an implicit barier is generated by calling __kmpc_barrier(...) runtime function to be sure that all threads were initialized using original values of the variables.
Differential Revision: http://reviews.llvm.org/D5140
llvm-svn: 219295
|
|
|
|
|
|
|
|
|
| |
semantic analysis for 'omp teams' directive support from OpenMP 4.0. Adds additional analysis to 'omp target' directive with 'omp teams' directive."
This reverts commit r219197 because it broke ARM self-hosting buildbots with
segmentation fault errors in many tests.
llvm-svn: 219289
|
|
|
|
|
|
| |
Includes parsing and semantic analysis for 'omp teams' directive support from OpenMP 4.0. Adds additional analysis to 'omp target' directive with 'omp teams' directive.
llvm-svn: 219197
|
|
|
|
| |
llvm-svn: 219113
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch implements collapsing of the loops (in particular, in
presense of clause 'collapse'). It calculates number of iterations N
and expressions nesessary to calculate the nested loops counters
values based on new iteration variable (that goes from 0 to N-1)
in Sema. It also adds Codegen for 'omp simd', which uses
(and tests) this feature.
Differential Revision: http://reviews.llvm.org/D5184
llvm-svn: 218743
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D5499
llvm-svn: 218660
|
|
|
|
| |
llvm-svn: 218299
|
|
|
|
| |
llvm-svn: 218110
|
|
|
|
| |
llvm-svn: 218029
|
|
|
|
|
|
| |
directives.
llvm-svn: 213925
|
|
|
|
|
|
| |
directive.
llvm-svn: 213846
|
|
|
|
|
|
| |
directive.
llvm-svn: 213842
|
|
|
|
|
|
| |
be private.
llvm-svn: 213835
|
|
|
|
|
|
| |
directive.
llvm-svn: 213735
|
|
|
|
|
|
| |
directive.
llvm-svn: 213728
|
|
|
|
|
|
| |
directive.
llvm-svn: 213717
|
|
|
|
| |
llvm-svn: 213639
|
|
|
|
| |
llvm-svn: 213616
|
|
|
|
| |
llvm-svn: 213512
|
|
|
|
| |
llvm-svn: 213510
|
|
|
|
| |
llvm-svn: 213363
|
|
|
|
| |
llvm-svn: 213360
|
|
|
|
| |
llvm-svn: 213355
|
|
|
|
| |
llvm-svn: 213262
|
|
|
|
| |
llvm-svn: 213257
|
|
|
|
| |
llvm-svn: 213237
|
|
|
|
| |
llvm-svn: 213232
|
|
|
|
|
|
| |
omp single'.
llvm-svn: 213040
|
|
|
|
| |
llvm-svn: 212804
|
|
|
|
| |
llvm-svn: 212516
|
|
|
|
| |
llvm-svn: 212453
|
|
|
|
| |
llvm-svn: 212156
|
|
|
|
|
|
| |
request from Samuel F Antao).
llvm-svn: 212034
|
|
|
|
| |
llvm-svn: 211886
|
|
|
|
| |
llvm-svn: 211774
|
|
|
|
| |
llvm-svn: 211767
|
|
|
|
| |
llvm-svn: 211685
|
|
|
|
|
|
| |
CollapsedNum member.
llvm-svn: 211672
|
|
|
|
| |
llvm-svn: 211660
|
|
|
|
| |
llvm-svn: 211589
|
|
|
|
| |
llvm-svn: 211566
|
|
|
|
| |
llvm-svn: 211489
|
|
|
|
| |
llvm-svn: 211352
|