r326922 - [OPENMP] Fix lifetime of the loop counters.

2018-03-07 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Mar 7 10:17:06 2018 New Revision: 326922 URL: http://llvm.org/viewvc/llvm-project?rev=326922&view=rev Log: [OPENMP] Fix lifetime of the loop counters. We may emit incorrect lifetime info during codegen for loop counters in OpenMP constructs because of automatic scope cl

r327008 - [OPENMP] Emit sizes/init ptrs etc. data for task reductions before

2018-03-08 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 8 07:24:08 2018 New Revision: 327008 URL: http://llvm.org/viewvc/llvm-project?rev=327008&view=rev Log: [OPENMP] Emit sizes/init ptrs etc. data for task reductions before using. We may emit the code in wrong order because of incorrect implementation of the runtime fu

r327136 - [OPENMP] Fix the address of the original variable in task reductions.

2018-03-09 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Mar 9 07:20:30 2018 New Revision: 327136 URL: http://llvm.org/viewvc/llvm-project?rev=327136&view=rev Log: [OPENMP] Fix the address of the original variable in task reductions. If initialization of the task reductions requires pointer to original variable, which is stor

r327636 - [OPENMP] Codegen for `omp declare target` construct.

2018-03-15 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 15 08:47:20 2018 New Revision: 327636 URL: http://llvm.org/viewvc/llvm-project?rev=327636&view=rev Log: [OPENMP] Codegen for `omp declare target` construct. Added initial codegen for device side of declarations inside `omp declare target` construct + codegen for impl

r327654 - [OPENMP, NVPTX] Improve globalization of the variables captured by value.

2018-03-15 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 15 11:10:54 2018 New Revision: 327654 URL: http://llvm.org/viewvc/llvm-project?rev=327654&view=rev Log: [OPENMP, NVPTX] Improve globalization of the variables captured by value. If the variable is captured by value and the corresponding parameter in the outlined func

r327867 - [OPENMP, NVPTX] Emit correct thread id.

2018-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Mar 19 10:04:07 2018 New Revision: 327867 URL: http://llvm.org/viewvc/llvm-project?rev=327867&view=rev Log: [OPENMP, NVPTX] Emit correct thread id. We emitted fake thread id for the outined function in NVPTX codegen. Patch adds emission of the real thread id. Modified:

r327868 - [OPENMP] Fix build with MSVC, NFC.

2018-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Mar 19 10:18:13 2018 New Revision: 327868 URL: http://llvm.org/viewvc/llvm-project?rev=327868&view=rev Log: [OPENMP] Fix build with MSVC, NFC. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp URL: htt

r327873 - [OPENMP, NVPTX] Reworked castToType() function, NFC.

2018-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Mar 19 10:53:56 2018 New Revision: 327873 URL: http://llvm.org/viewvc/llvm-project?rev=327873&view=rev Log: [OPENMP, NVPTX] Reworked castToType() function, NFC. Reworked function castToType to use more frontend functionality rather than the backend. Modified: cfe/tr

r327985 - [OPENMP, NVPTX] Globalization of the private redeclarations.

2018-03-20 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 20 07:45:59 2018 New Revision: 327985 URL: http://llvm.org/viewvc/llvm-project?rev=327985&view=rev Log: [OPENMP, NVPTX] Globalization of the private redeclarations. If the generic codegen is enabled and private copy of the original variable escapes the declaration co

r327990 - [OPENMP, NVPTX] Codegen for target distribute parallel combined

2018-03-20 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 20 08:41:05 2018 New Revision: 327990 URL: http://llvm.org/viewvc/llvm-project?rev=327990&view=rev Log: [OPENMP, NVPTX] Codegen for target distribute parallel combined constructs in generic mode. Fixed codegen for distribute parallel combined constructs. We have to p

r334962 - [OPENMP, NVPTX] Emit simple reduction if requested.

2018-06-18 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Jun 18 10:11:45 2018 New Revision: 334962 URL: http://llvm.org/viewvc/llvm-project?rev=334962&view=rev Log: [OPENMP, NVPTX] Emit simple reduction if requested. If simple reduction is requested, use the simple reduction instead of the runtime functions calls. Modified:

r335285 - [OPENMP, NVPTX] Fix globalization of the variables passed to orphaned

2018-06-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Jun 21 13:26:33 2018 New Revision: 335285 URL: http://llvm.org/viewvc/llvm-project?rev=335285&view=rev Log: [OPENMP, NVPTX] Fix globalization of the variables passed to orphaned parallel region. If the current construct requires sharing of the local variable in the inner

r335377 - [OPENMP, NVPTX] Fix reduction of the big data types/structures.

2018-06-22 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Jun 22 12:10:38 2018 New Revision: 335377 URL: http://llvm.org/viewvc/llvm-project?rev=335377&view=rev Log: [OPENMP, NVPTX] Fix reduction of the big data types/structures. If the shuffle is required for the reduced structures/big data type, current code may cause compile

r344049 - [OPENMP][NVPTX] Support memory coalescing for globalized variables.

2018-10-09 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Oct 9 07:49:00 2018 New Revision: 344049 URL: http://llvm.org/viewvc/llvm-project?rev=344049&view=rev Log: [OPENMP][NVPTX] Support memory coalescing for globalized variables. Added support for memory coalescing for better performance for globalized variables. From now o

r344273 - [OPENMP][NVPTX]Reduce memory use for globalized vars in

2018-10-11 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Oct 11 11:30:31 2018 New Revision: 344273 URL: http://llvm.org/viewvc/llvm-project?rev=344273&view=rev Log: [OPENMP][NVPTX]Reduce memory use for globalized vars in target/teams/distribute regions. Previously introduced globalization scheme that uses memory coalescing sch

r344356 - [OPENMP][NVPTX]Reduce memory usage in orphaned functions.

2018-10-12 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Oct 12 09:04:20 2018 New Revision: 344356 URL: http://llvm.org/viewvc/llvm-project?rev=344356&view=rev Log: [OPENMP][NVPTX]Reduce memory usage in orphaned functions. if the function has globalized variables and called in context of target/teams/distribute regions, it doe

r344413 - [OPENMP][NVPTX]Reduce memory usage in target region.

2018-10-12 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Oct 12 13:19:59 2018 New Revision: 344413 URL: http://llvm.org/viewvc/llvm-project?rev=344413&view=rev Log: [OPENMP][NVPTX]Reduce memory usage in target region. Additional reduction of the global memory usage in the target regions without parallel regions. Modified:

r344574 - [OPENMP][NVPTX]Increment iterator only when it is used, NFC.

2018-10-15 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Oct 15 17:09:06 2018 New Revision: 344574 URL: http://llvm.org/viewvc/llvm-project?rev=344574&view=rev Log: [OPENMP][NVPTX]Increment iterator only when it is used, NFC. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp Modified: cfe/trunk/lib/CodeGen/CGOpenMP

Re: r344356 - [OPENMP][NVPTX]Reduce memory usage in orphaned functions.

2018-10-15 Thread Alexey Bataev via cfe-commits
en.cpp Clang :: OpenMP/nvptx_target_teams_distribute_parallel_for_simd_codegen.cpp Clang :: OpenMP/nvptx_teams_codegen.cpp Clang :: OpenMP/nvptx_teams_reduction_codegen.cpp On Fri, Oct 12, 2018 at 9:06 AM Alexey Bataev via cfe-commits mailto:cfe-commits@lists.llvm.org>> wrote: Aut

r345177 - [OPENMP]Fix PR39366: do not try to private field if it is not captured.

2018-10-24 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Oct 24 11:53:12 2018 New Revision: 345177 URL: http://llvm.org/viewvc/llvm-project?rev=345177&view=rev Log: [OPENMP]Fix PR39366: do not try to private field if it is not captured. The compiler is crashing if we trying to post-capture the fields implicitly captured inside

r345180 - Do not always request an implicit taskgroup region inside the kmpc_taskloop function

2018-10-24 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Oct 24 12:06:37 2018 New Revision: 345180 URL: http://llvm.org/viewvc/llvm-project?rev=345180&view=rev Log: Do not always request an implicit taskgroup region inside the kmpc_taskloop function Summary: For the following code: ``` int i; #pragma omp taskloop

r345277 - [OPENMP]Fix PR39422: variables are not firstprivatized in task context.

2018-10-25 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Oct 25 08:35:27 2018 New Revision: 345277 URL: http://llvm.org/viewvc/llvm-project?rev=345277&view=rev Log: [OPENMP]Fix PR39422: variables are not firstprivatized in task context. According to the OpenMP standard, In a task generating construct, if no default clause is p

r345505 - [OPENMP] Do not capture private loop counters.

2018-10-29 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Oct 29 08:01:58 2018 New Revision: 345505 URL: http://llvm.org/viewvc/llvm-project?rev=345505&view=rev Log: [OPENMP] Do not capture private loop counters. If the loop counter is not declared in the context of the loop and it is private, such loop counters should not be c

r345609 - [OPENMP] Support for mapping of the lambdas in target regions.

2018-10-30 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Oct 30 08:50:12 2018 New Revision: 345609 URL: http://llvm.org/viewvc/llvm-project?rev=345609&view=rev Log: [OPENMP] Support for mapping of the lambdas in target regions. Added support for mapping of lambdas in the target regions. It scans all the captures by reference i

r352421 - [OPENMP][NVPTX]Emit service debug variable for NVPTX.

2019-01-28 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Jan 28 12:03:02 2019 New Revision: 352421 URL: http://llvm.org/viewvc/llvm-project?rev=352421&view=rev Log: [OPENMP][NVPTX]Emit service debug variable for NVPTX. In case of the empty module, the ptxas tool may emit error message about empty debug info sections. This patc

r352526 - [OPENMP]Make the loop with unsigned counter countable.

2019-01-29 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Jan 29 10:51:58 2019 New Revision: 352526 URL: http://llvm.org/viewvc/llvm-project?rev=352526&view=rev Log: [OPENMP]Make the loop with unsigned counter countable. According to the report, better to keep the original strict compare operation as the loop condition with uns

r352543 - [OPENMP]Fix PR40513: lastprivate taskloop counter.

2019-01-29 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Jan 29 13:12:28 2019 New Revision: 352543 URL: http://llvm.org/viewvc/llvm-project?rev=352543&view=rev Log: [OPENMP]Fix PR40513: lastprivate taskloop counter. We don't need to use the predetermined data-sharing attributes for the loop counters if the user explicitly spec

r352669 - [OPENMP]Fix PR40536: Do not emit __kmpc_push_target_tripcount if not

2019-01-30 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Jan 30 12:49:52 2019 New Revision: 352669 URL: http://llvm.org/viewvc/llvm-project?rev=352669&view=rev Log: [OPENMP]Fix PR40536: Do not emit __kmpc_push_target_tripcount if not required. Function __kmpc_push_target_tripcount should be emitted only if the offloading entry

r345978 - [OPENMP][NVPTX]Improve emission of the globalized variables for

2018-11-02 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 2 07:54:07 2018 New Revision: 345978 URL: http://llvm.org/viewvc/llvm-project?rev=345978&view=rev Log: [OPENMP][NVPTX]Improve emission of the globalized variables for target/teams/distribute regions. Target/teams/distribute regions exist for all the time the kernel

r345982 - [OPENMP]Change the mapping type for lambda captures.

2018-11-02 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 2 08:25:06 2018 New Revision: 345982 URL: http://llvm.org/viewvc/llvm-project?rev=345982&view=rev Log: [OPENMP]Change the mapping type for lambda captures. The previously used combination `PTR_AND_OBJ | PRIVATE` could be used for mapping of some data in Fortran. Ch

r345991 - [OPENMP][NVPTX]Use __kmpc_data_sharing_coalesced_push_stack function.

2018-11-02 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 2 09:08:31 2018 New Revision: 345991 URL: http://llvm.org/viewvc/llvm-project?rev=345991&view=rev Log: [OPENMP][NVPTX]Use __kmpc_data_sharing_coalesced_push_stack function. Coalesced memory access requires use of the new function `__kmpc_data_sharing_coalesced_push_

r346343 - [OPENMP]Fix handling of the globals during compilation for the device.

2018-11-07 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Nov 7 11:11:14 2018 New Revision: 346343 URL: http://llvm.org/viewvc/llvm-project?rev=346343&view=rev Log: [OPENMP]Fix handling of the globals during compilation for the device. Fixed lookup for the target regions in unused virtual functions + fixed processing of the gl

r346408 - [OPENMP]Make lambda mapping follow reqs for PTR_AND_OBJ mapping.

2018-11-08 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Nov 8 07:47:39 2018 New Revision: 346408 URL: http://llvm.org/viewvc/llvm-project?rev=346408&view=rev Log: [OPENMP]Make lambda mapping follow reqs for PTR_AND_OBJ mapping. The base pointer for the lambda mapping must point to the lambda capture placement and pointer mus

r346507 - [OPENMP][NVPTX]Allow to use shared memory for the

2018-11-09 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 9 08:18:04 2018 New Revision: 346507 URL: http://llvm.org/viewvc/llvm-project?rev=346507&view=rev Log: [OPENMP][NVPTX]Allow to use shared memory for the target|teams|distribute variables. If the total size of the variables, declared in target|teams|distribute region

r346551 - [OPENMP][NVPTX]Extend number of constructs executed in SPMD mode.

2018-11-09 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 9 12:03:19 2018 New Revision: 346551 URL: http://llvm.org/viewvc/llvm-project?rev=346551&view=rev Log: [OPENMP][NVPTX]Extend number of constructs executed in SPMD mode. If the statements between target|teams|distribute directives does not require execution in master

r347081 - [OPENMP][NVPTX]Emit correct reduction code for teams/parallel

2018-11-16 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 16 11:38:21 2018 New Revision: 347081 URL: http://llvm.org/viewvc/llvm-project?rev=347081&view=rev Log: [OPENMP][NVPTX]Emit correct reduction code for teams/parallel reductions. Fixed previously committed code for the reduction support in teams/parallel constructs ta

r347096 - [OPENMP]Fix PR39694: do not capture `this` in non-`this` region.

2018-11-16 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Nov 16 13:13:33 2018 New Revision: 347096 URL: http://llvm.org/viewvc/llvm-project?rev=347096&view=rev Log: [OPENMP]Fix PR39694: do not capture `this` in non-`this` region. If lambda is used inside of the OpenMP region and captures `this`, we should recapture it in the O

r347409 - [OPENMP]Fix handling of the LCVs in loop-based directives.

2018-11-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Nov 21 11:41:10 2018 New Revision: 347409 URL: http://llvm.org/viewvc/llvm-project?rev=347409&view=rev Log: [OPENMP]Fix handling of the LCVs in loop-based directives. Loop-control variables with the default data-sharing attributes should not be captured in the OpenMP reg

r347425 - [OPENMP][NVPTX]Emit default locations as constant with undefined mode.

2018-11-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Nov 21 13:04:34 2018 New Revision: 347425 URL: http://llvm.org/viewvc/llvm-project?rev=347425&view=rev Log: [OPENMP][NVPTX]Emit default locations as constant with undefined mode. For the NVPTX target default locations should be emitted as constants + additional info must

r347583 - [OPENMP][NVPTX]Emit default locations with the correct Exec|Runtime

2018-11-26 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Nov 26 10:37:09 2018 New Revision: 347583 URL: http://llvm.org/viewvc/llvm-project?rev=347583&view=rev Log: [OPENMP][NVPTX]Emit default locations with the correct Exec|Runtime modes. If the region is inside target|teams|distribute region, we can emit the locations with t

r347715 - [OPENMP][NVPTX]Basic support for reductions across the teams.

2018-11-27 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Nov 27 13:24:54 2018 New Revision: 347715 URL: http://llvm.org/viewvc/llvm-project?rev=347715&view=rev Log: [OPENMP][NVPTX]Basic support for reductions across the teams. Added basic codegen support for the reductions across the teams. Modified: cfe/trunk/lib/CodeGen

r347793 - [OPENMP]Fix emission of the target regions in virtual functions.

2018-11-28 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Nov 28 11:00:07 2018 New Revision: 347793 URL: http://llvm.org/viewvc/llvm-project?rev=347793&view=rev Log: [OPENMP]Fix emission of the target regions in virtual functions. Fixed emission of the target regions found in the virtual functions. Previously we may end up with

r347919 - [OPENMP][NVPTX]Call get __kmpc_global_thread_num in worker after

2018-11-29 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Nov 29 13:21:32 2018 New Revision: 347919 URL: http://llvm.org/viewvc/llvm-project?rev=347919&view=rev Log: [OPENMP][NVPTX]Call get __kmpc_global_thread_num in worker after initialization. Function __kmpc_global_thread_num should be called only after initialization, not

r348271 - [OPENMP][NVPTX]Mark __kmpc_barrier functions as convergent.

2018-12-04 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Dec 4 07:03:25 2018 New Revision: 348271 URL: http://llvm.org/viewvc/llvm-project?rev=348271&view=rev Log: [OPENMP][NVPTX]Mark __kmpc_barrier functions as convergent. __kmpc_barrier runtime functions must be marked as convergent to prevent some dangerous optimizations.

r348272 - [OPENMP][NVPTX]Fixed emission of the critical region.

2018-12-04 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Dec 4 07:25:01 2018 New Revision: 348272 URL: http://llvm.org/viewvc/llvm-project?rev=348272&view=rev Log: [OPENMP][NVPTX]Fixed emission of the critical region. Critical regions in NVPTX are the constructs, which, generally speaking, are not supported by the NVPTX targe

r348492 - [OPENMP][NVPTX] Fix globalization of the mapped array sections.

2018-12-06 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Dec 6 07:35:13 2018 New Revision: 348492 URL: http://llvm.org/viewvc/llvm-project?rev=348492&view=rev Log: [OPENMP][NVPTX] Fix globalization of the mapped array sections. If the array section is based on pointer and this sections is mapped in target region + then it is

r354925 - [OPENMP]Delay emission for unsupported va_arg expression.

2019-02-26 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Feb 26 12:52:16 2019 New Revision: 354925 URL: http://llvm.org/viewvc/llvm-project?rev=354925&view=rev Log: [OPENMP]Delay emission for unsupported va_arg expression. If the OpenMP device is NVPTX and va_arg is used, delay emission of the error for va_arg unless it is use

r354928 - [OPENMP][CUDA]Do not emit warnings for variables in late-reported asm

2019-02-26 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Feb 26 13:51:16 2019 New Revision: 354928 URL: http://llvm.org/viewvc/llvm-project?rev=354928&view=rev Log: [OPENMP][CUDA]Do not emit warnings for variables in late-reported asm statements. If the assembler instruction is not generated and the delayed diagnostic is emitt

r355027 - [OPENMP]Delay emission of the error for unsupported types.

2019-02-27 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Feb 27 12:29:45 2019 New Revision: 355027 URL: http://llvm.org/viewvc/llvm-project?rev=355027&view=rev Log: [OPENMP]Delay emission of the error for unsupported types. If the type is unsupported on the device side, it still must be emitted, but we should emit errors for o

r355418 - [OPENMP]Target region: emit const firstprivates as globals with constant

2019-03-05 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 5 09:47:18 2019 New Revision: 355418 URL: http://llvm.org/viewvc/llvm-project?rev=355418&view=rev Log: [OPENMP]Target region: emit const firstprivates as globals with constant memory. If the variable with the constant non-scalar type is firstprivatized in the target

r355614 - [OPENMP 5.0]Add initial support for 'allocate' directive.

2019-03-07 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 7 09:54:44 2019 New Revision: 355614 URL: http://llvm.org/viewvc/llvm-project?rev=355614&view=rev Log: [OPENMP 5.0]Add initial support for 'allocate' directive. Added parsing/sema analysis/serialization/deserialization support for 'allocate' directive. Added: c

r355729 - [OPENMP]Remove debug service variable.

2019-03-08 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Mar 8 12:48:54 2019 New Revision: 355729 URL: http://llvm.org/viewvc/llvm-project?rev=355729&view=rev Log: [OPENMP]Remove debug service variable. Removed not required service variable for the debug info. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp

r355858 - [OPENMP]Fix codegen for declare target link in target regions.

2019-03-11 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Mar 11 12:51:42 2019 New Revision: 355858 URL: http://llvm.org/viewvc/llvm-project?rev=355858&view=rev Log: [OPENMP]Fix codegen for declare target link in target regions. If the declare target link global is used in the target region indirectly (used in the inner paralle

Re: r355858 - [OPENMP]Fix codegen for declare target link in target regions.

2019-03-11 Thread Alexey Bataev via cfe-commits
ssertion failed: ((Imported == nullptr || Imported == SuggestedModule.getModule()) && "the imported module is different than the suggested one"), function HandleIncludeDirective, file /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/lib/Lex/P

Re: r355858 - [OPENMP]Fix codegen for declare target link in target regions.

2019-03-11 Thread Alexey Bataev via cfe-commits
: -- Assertion failed: ((Imported == nullptr || Imported == SuggestedModule.getModule()) && "the imported module is different than the suggested one"), function HandleIncludeDirective, file /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/lib/Le

r355952 - [OPENMP 5.0]Initial support for 'allocator' clause.

2019-03-12 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 12 11:52:33 2019 New Revision: 355952 URL: http://llvm.org/viewvc/llvm-project?rev=355952&view=rev Log: [OPENMP 5.0]Initial support for 'allocator' clause. Added parsing/sema analysis/serialization/deserialization for the 'allocator' clause of the 'allocate' directiv

r355960 - [OPENMP]Allow to redefine entry for the variables definitions.

2019-03-12 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 12 13:05:17 2019 New Revision: 355960 URL: http://llvm.org/viewvc/llvm-project?rev=355960&view=rev Log: [OPENMP]Allow to redefine entry for the variables definitions. If the variable was declared and marked as declare target, a new offload entry with size 0 is create

r356072 - [OPENMP][NVPTX]Fix PR40893: Size doesn't match for

2019-03-13 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Mar 13 11:21:10 2019 New Revision: 356072 URL: http://llvm.org/viewvc/llvm-project?rev=356072&view=rev Log: [OPENMP][NVPTX]Fix PR40893: Size doesn't match for '_openmp_teams_reductions_buffer_$_. nvlink does not handle weak linkage correctly, same symbols with the differ

r356089 - [OPENMP]Disable ADL in C for user-defined reductions.

2019-03-13 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Mar 13 12:31:34 2019 New Revision: 356089 URL: http://llvm.org/viewvc/llvm-project?rev=356089&view=rev Log: [OPENMP]Disable ADL in C for user-defined reductions. C does not support ADL, disable it for C to prevent compiler crash. Modified: cfe/trunk/lib/Sema/SemaOpe

r356098 - [OPENMP]Fix PR37283: Assertion failure on openmp task with by reference

2019-03-13 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Mar 13 13:46:28 2019 New Revision: 356098 URL: http://llvm.org/viewvc/llvm-project?rev=356098&view=rev Log: [OPENMP]Fix PR37283: Assertion failure on openmp task with by reference array. If the firstprivate variable is a reference, we may incorrectly classify the kind of

r356198 - [OPENMP]Fix crash for the ordered(n) clause.

2019-03-14 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 14 13:36:00 2019 New Revision: 356198 URL: http://llvm.org/viewvc/llvm-project?rev=356198&view=rev Log: [OPENMP]Fix crash for the ordered(n) clause. If the doacross lop construct is used and the loop counter is declare outside of the loop, the compiler might crash tr

r356388 - [OPENMP] Set scheduling for doacross loops as schedule, 1.

2019-03-18 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Mar 18 11:40:00 2019 New Revision: 356388 URL: http://llvm.org/viewvc/llvm-project?rev=356388&view=rev Log: [OPENMP] Set scheduling for doacross loops as schedule, 1. The default scheduling for doacross loops is changed from static to static, 1. Modified: cfe/trunk/

r356472 - [OPENMP] Codegen for local variables with the allocate pragma.

2019-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 19 09:41:16 2019 New Revision: 356472 URL: http://llvm.org/viewvc/llvm-project?rev=356472&view=rev Log: [OPENMP] Codegen for local variables with the allocate pragma. Added initial codegen for the local variables with the #pragma omp allocate directive. Instead of al

r356480 - [OPENMP]Remove unused parameter, NFC.

2019-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 19 10:09:52 2019 New Revision: 356480 URL: http://llvm.org/viewvc/llvm-project?rev=356480&view=rev Log: [OPENMP]Remove unused parameter, NFC. Parameter CodeGenModule &CGM is not required for CGOpenMPRuntime member functions, since class holds the reference to the CGM

r356496 - [OPENMP]Check that global vars require predefined allocator.

2019-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 19 11:39:11 2019 New Revision: 356496 URL: http://llvm.org/viewvc/llvm-project?rev=356496&view=rev Log: [OPENMP]Check that global vars require predefined allocator. According to OpenMP, 2.11.3 allocate Directive, Restrictions, C / C++, if a list item has a static sto

r356513 - [OPENMP]Warn if the different allocator is used for the variable.

2019-03-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Mar 19 13:33:44 2019 New Revision: 356513 URL: http://llvm.org/viewvc/llvm-project?rev=356513&view=rev Log: [OPENMP]Warn if the different allocator is used for the variable. If the allocator was specified for the variable and next one is found with the different allocato

r356607 - [OPENMP]Improve detection of omp_allocator_handle_t type and predefined

2019-03-20 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Mar 20 13:14:22 2019 New Revision: 356607 URL: http://llvm.org/viewvc/llvm-project?rev=356607&view=rev Log: [OPENMP]Improve detection of omp_allocator_handle_t type and predefined allocators. It is better to deduce omp_allocator_handle_t type from the predefined allocato

r356699 - [OPENMP]Simplify the check for the predefined allocators, NFC.

2019-03-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 21 12:05:07 2019 New Revision: 356699 URL: http://llvm.org/viewvc/llvm-project?rev=356699&view=rev Log: [OPENMP]Simplify the check for the predefined allocators, NFC. Previously implemented check required the reevaluation of the already evaluated predefined allocator

r356702 - [OPENMP]Codegen support for allocate directive on global variables.

2019-03-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 21 12:35:27 2019 New Revision: 356702 URL: http://llvm.org/viewvc/llvm-project?rev=356702&view=rev Log: [OPENMP]Codegen support for allocate directive on global variables. For the global variables the allocate directive must specify only the predefined allocator. Thi

r356710 - [OPENMP] Simplify codegen for allocate directive on local variables.

2019-03-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 21 13:36:16 2019 New Revision: 356710 URL: http://llvm.org/viewvc/llvm-project?rev=356710&view=rev Log: [OPENMP] Simplify codegen for allocate directive on local variables. Simplified codegen for the allocate directive for local variables, initial implementation of t

r356715 - [OPENMP]Fix a warning about unused variable, NFC.

2019-03-21 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 21 13:52:04 2019 New Revision: 356715 URL: http://llvm.org/viewvc/llvm-project?rev=356715&view=rev Log: [OPENMP]Fix a warning about unused variable, NFC. Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPTX.cpp Modified: cfe/trunk/lib/CodeGen/CGOpenMPRuntimeNVPT

r356752 - [OPENMP]Emit error message for allocate directive without allocator

2019-03-22 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Mar 22 07:41:39 2019 New Revision: 356752 URL: http://llvm.org/viewvc/llvm-project?rev=356752&view=rev Log: [OPENMP]Emit error message for allocate directive without allocator clause in target region. According to the OpenMP 5.0, 2.11.3 allocate Directive, Restrictions,

r356758 - [OPENMP]Allow no allocator clause in target regions with requires

2019-03-22 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Mar 22 08:25:12 2019 New Revision: 356758 URL: http://llvm.org/viewvc/llvm-project?rev=356758&view=rev Log: [OPENMP]Allow no allocator clause in target regions with requires dynamic_allocators. According to the OpenMP 5.0, 2.11.3 allocate Directive, Restrictions, allocat

r356759 - [OPENMP]Add missing comment, NFC.

2019-03-22 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Mar 22 08:32:02 2019 New Revision: 356759 URL: http://llvm.org/viewvc/llvm-project?rev=356759&view=rev Log: [OPENMP]Add missing comment, NFC. Modified: cfe/trunk/lib/Sema/SemaOpenMP.cpp Modified: cfe/trunk/lib/Sema/SemaOpenMP.cpp URL: http://llvm.org/viewvc/llvm-pr

r357205 - [OPENMP]Add check for undefined behavior with thread allocators on

2019-03-28 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Mar 28 12:15:36 2019 New Revision: 357205 URL: http://llvm.org/viewvc/llvm-project?rev=357205&view=rev Log: [OPENMP]Add check for undefined behavior with thread allocators on target and task-based directives. According to OpenMP 5.0, 2.11.4 allocate Clause, Restrictions,

r357390 - [OPENMP] Check that allocated variables are used in private clauses.

2019-04-01 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Apr 1 07:25:31 2019 New Revision: 357390 URL: http://llvm.org/viewvc/llvm-project?rev=357390&view=rev Log: [OPENMP] Check that allocated variables are used in private clauses. According to OpenMP 5.0 standard, 2.11.4 allocate Clause, Restrictions, For any list item that

r357412 - [OPENMP]Allocate clause allocator in target region.

2019-04-01 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Apr 1 09:56:59 2019 New Revision: 357412 URL: http://llvm.org/viewvc/llvm-project?rev=357412&view=rev Log: [OPENMP]Allocate clause allocator in target region. According to OpenMP 5.0, 2.11.4 allocate Clause, Restrictions, allocate clauses that appear on a target constru

r357488 - [OPENMP]Fix mapping of the pointers captured by reference.

2019-04-02 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 2 09:03:40 2019 New Revision: 357488 URL: http://llvm.org/viewvc/llvm-project?rev=357488&view=rev Log: [OPENMP]Fix mapping of the pointers captured by reference. If the pointer is captured by reference, it must be mapped as _PTR_AND_OBJ kind of mapping to correctly

r357514 - [OPENMP]Add codegen for private vars with allocate clause.

2019-04-02 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 2 12:44:46 2019 New Revision: 357514 URL: http://llvm.org/viewvc/llvm-project?rev=357514&view=rev Log: [OPENMP]Add codegen for private vars with allocate clause. Added codegen/test for the privatized variables with the allocate clause. Modified: cfe/trunk/lib/C

r357612 - Revert "[LibTooling] Add Transformer, a library for source-to-source transformations."

2019-04-03 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 3 10:34:04 2019 New Revision: 357612 URL: http://llvm.org/viewvc/llvm-project?rev=357612&view=rev Log: Revert "[LibTooling] Add Transformer, a library for source-to-source transformations." This reverts commit r357576 to fix the problem with the cyclic dependencies

r357617 - [OPENMP]Add codegen for firstprivate vars with allocate clause.

2019-04-03 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 3 10:57:06 2019 New Revision: 357617 URL: http://llvm.org/viewvc/llvm-project?rev=357617&view=rev Log: [OPENMP]Add codegen for firstprivate vars with allocate clause. Added codegen/test for the firstprivatized variables with the allocate clause. Modified: cfe/t

r357625 - [OPENMP]Add codegen for lastprivate vars with allocate clause, NFC.

2019-04-03 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 3 12:12:47 2019 New Revision: 357625 URL: http://llvm.org/viewvc/llvm-project?rev=357625&view=rev Log: [OPENMP]Add codegen for lastprivate vars with allocate clause, NFC. Added test for the lastprivatized variables with the allocate clause. Modified: cfe/trunk/

r357629 - [OPENMP]Add codegen for reduction vars with allocate clause, NFC.

2019-04-03 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 3 12:59:09 2019 New Revision: 357629 URL: http://llvm.org/viewvc/llvm-project?rev=357629&view=rev Log: [OPENMP]Add codegen for reduction vars with allocate clause, NFC. Added test for the reduction variables with the allocate clause. Modified: cfe/trunk/test/Op

r357708 - [OPENMP]Fix lookup of the user-defined reductions in C.

2019-04-04 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Apr 4 10:28:22 2019 New Revision: 357708 URL: http://llvm.org/viewvc/llvm-project?rev=357708&view=rev Log: [OPENMP]Fix lookup of the user-defined reductions in C. Fixed the regression of the lookup of user-defined reductions for C. Modified: cfe/trunk/lib/Sema/Sema

r357712 - [OPENMP]Add codegen for linear vars with allocate clause, NFC.

2019-04-04 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Apr 4 11:06:53 2019 New Revision: 357712 URL: http://llvm.org/viewvc/llvm-project?rev=357712&view=rev Log: [OPENMP]Add codegen for linear vars with allocate clause, NFC. Added test for the linear variables with the allocate clause. Modified: cfe/trunk/test/OpenMP/f

r357717 - [OPENMP]Add codegen for task reduction vars with allocate clause, NFC.

2019-04-04 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Apr 4 11:58:17 2019 New Revision: 357717 URL: http://llvm.org/viewvc/llvm-project?rev=357717&view=rev Log: [OPENMP]Add codegen for task reduction vars with allocate clause, NFC. Added test for the task reduction variables with the allocate clause. Modified: cfe/tru

r357923 - [OPENMP][NVPTX]Fixed processing of memory management directives.

2019-04-08 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Apr 8 09:53:57 2019 New Revision: 357923 URL: http://llvm.org/viewvc/llvm-project?rev=357923&view=rev Log: [OPENMP][NVPTX]Fixed processing of memory management directives. Added special processing of the memory management directives/clauses for NVPTX target. For private

r357933 - [OPENMP] Sync __kmpc_alloc/_kmpc_free function with the runtime.

2019-04-08 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Apr 8 12:06:42 2019 New Revision: 357933 URL: http://llvm.org/viewvc/llvm-project?rev=357933&view=rev Log: [OPENMP] Sync __kmpc_alloc/_kmpc_free function with the runtime. Functions __kmpc_alloc/__kmpc_free are updated with the new interfaces. Patch synchronizes the com

r358016 - [OPENMP]Allow allocate directive on parameters.

2019-04-09 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 9 09:31:37 2019 New Revision: 358016 URL: http://llvm.org/viewvc/llvm-project?rev=358016&view=rev Log: [OPENMP]Allow allocate directive on parameters. Patch allows to use allocate directives on the function parameters. Modified: cfe/trunk/lib/Sema/SemaOpenMP.cp

r358126 - [OPENMP]Improve detection of number of teams, threads in target

2019-04-10 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 10 12:11:33 2019 New Revision: 358126 URL: http://llvm.org/viewvc/llvm-project?rev=358126&view=rev Log: [OPENMP]Improve detection of number of teams, threads in target regions. Added more complex analysis for number of teams and number of threads in the target region

r358445 - [OPENMP][NVPTX]Run parallel regions with num_threads clauses in SPMD

2019-04-15 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Mon Apr 15 13:38:10 2019 New Revision: 358445 URL: http://llvm.org/viewvc/llvm-project?rev=358445&view=rev Log: [OPENMP][NVPTX]Run parallel regions with num_threads clauses in SPMD mode. After the previous patch with the more correct handling of the number of threads in para

r358490 - [AArch64] Implement Vector Funtion ABI name mangling.

2019-04-16 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 16 06:56:21 2019 New Revision: 358490 URL: http://llvm.org/viewvc/llvm-project?rev=358490&view=rev Log: [AArch64] Implement Vector Funtion ABI name mangling. Summary: The name mangling scheme is defined in section 3.5 of the "Vector function application binary inter

r358493 - [OPENMP]Require aarch arch for the tests, NFC.

2019-04-16 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 16 07:26:10 2019 New Revision: 358493 URL: http://llvm.org/viewvc/llvm-project?rev=358493&view=rev Log: [OPENMP]Require aarch arch for the tests, NFC. Modified: cfe/trunk/test/OpenMP/declare_simd_aarch64.c cfe/trunk/test/OpenMP/declare_simd_aarch64.cpp cf

r358503 - [OPENMP][NVPTX]Run combined constructs with if clause in SPMD mode.

2019-04-16 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Tue Apr 16 08:39:12 2019 New Revision: 358503 URL: http://llvm.org/viewvc/llvm-project?rev=358503&view=rev Log: [OPENMP][NVPTX]Run combined constructs with if clause in SPMD mode. Combined constructs with parallel and if clauses without modifiers may be executed in SPMD mode

r358595 - [OPENMP][NVPTX]Run combined constructs with if clause in SPMD mode.

2019-04-17 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 17 09:53:08 2019 New Revision: 358595 URL: http://llvm.org/viewvc/llvm-project?rev=358595&view=rev Log: [OPENMP][NVPTX]Run combined constructs with if clause in SPMD mode. All target-parallel-based constructs can be run in SPMD mode from now on. Even if num_threads c

r358766 - [OPENMP][NVPTX] target [teams distribute] simd maybe run without

2019-04-19 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Fri Apr 19 09:48:38 2019 New Revision: 358766 URL: http://llvm.org/viewvc/llvm-project?rev=358766&view=rev Log: [OPENMP][NVPTX] target [teams distribute] simd maybe run without runtime. target [teams distribute] simd costructs do not require full runtime for the correct exec

r359132 - [OPENMP]Initial support for non-rectangular loop nest.

2019-04-24 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Wed Apr 24 12:58:30 2019 New Revision: 359132 URL: http://llvm.org/viewvc/llvm-project?rev=359132&view=rev Log: [OPENMP]Initial support for non-rectangular loop nest. Added basic semantic analysis for the non-rectangular loop nests for OpenMP 5.0 support. Modified: cfe/

Re: r358490 - [AArch64] Implement Vector Funtion ABI name mangling.

2019-04-25 Thread Alexey Bataev via cfe-commits
64a01de5ac24f6c17cddb391ec3e02c)"} ^~~ I reckon this will fail about 1 in 100 times when built from a git repository. Please could you improve the test to avoid this issue? Thanks Russ On Tue, 16 Apr 2019 at 14:54, Alexey Bataev via cfe-commits mailt

r359193 - [OPENMP][AARCH64]Fix the test for declare simd, NFC.

2019-04-25 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Apr 25 07:04:37 2019 New Revision: 359193 URL: http://llvm.org/viewvc/llvm-project?rev=359193&view=rev Log: [OPENMP][AARCH64]Fix the test for declare simd, NFC. Renamed function a01 in the test to fix possible problems with the git hash match during testing. Modified:

r359200 - [OPENMP] Improved check for the linear dependency in the non-rectangular

2019-04-25 Thread Alexey Bataev via cfe-commits
Author: abataev Date: Thu Apr 25 09:21:13 2019 New Revision: 359200 URL: http://llvm.org/viewvc/llvm-project?rev=359200&view=rev Log: [OPENMP] Improved check for the linear dependency in the non-rectangular loop nests. Added a checks that the initializer/condition expressions depend only only of

<    1   2   3   4   5   6   7   8   9   10   >