[PATCH] D142569: [OpenMP] Introduce kernel environment

2023-08-04 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:4065 + Constant *KernelEnvironmentGV = new GlobalVariable( + M, KernelEnvironment, /* IsConstant */ true, GlobalValue::ExternalLinkage, + KernelEnvironmentInitializer,

[PATCH] D142569: [OpenMP] Introduce kernel environment

2023-08-04 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:4065 + Constant *KernelEnvironmentGV = new GlobalVariable( + M, KernelEnvironment, /* IsConstant */ true, GlobalValue::ExternalLinkage, + KernelEnvironmentInitializer,

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2023-04-04 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#4243260 , @jhuber6 wrote: > Fixed the Clang tests. Haven't touched the LLVM ones because this breaks > SPMDzation and state machine rewrites completely in those tests. Someone who > knows what this patch changes

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2023-04-04 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. I rebased the patch and regenerated the clang tests. I haven't regenerated the llvm tests. @jhuber6 @jdoerfert Please help regenerate the llvm tests. Several of the failing clang tests were regenerated earlier, they can perhaps be regenerated after the llvm tests

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2023-04-04 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 510706. dhruvachak added a comment. Herald added subscribers: jplehr, sunshaoce, kerbowa. Rebased and updated tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG1c9ec74e3f2a: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead… (authored by dhruvachak). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 506107. dhruvachak marked an inline comment as done. dhruvachak added a comment. Removed attributes (as original) from clang test OpenMP/target_map_codegen_hold.cpp. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak marked an inline comment as done. dhruvachak added inline comments. Comment at: clang/test/OpenMP/target_map_codegen_hold.cpp:211 +// CHECK-NOUSE-I386: @llvm.global_ctors = appending global [1 x { i32, ptr, ptr }] [{ i32, ptr, ptr } { i32 0, ptr

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 505987. dhruvachak added a comment. Fixed clang test OpenMP/target_map_codegen_hold.cpp. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145820/new/ https://reviews.llvm.org/D145820 Files:

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-13 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 504945. dhruvachak added a comment. Fixed LIT test failure, added new clang test OpenMP/bug60602.cpp. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145820/new/ https://reviews.llvm.org/D145820 Files:

[PATCH] D145820: [Clang][OpenMP] Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-13 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 504515. dhruvachak added a comment. Herald added subscribers: mattd, asavonic. Addressed comment. Using the alloca insert point for kernel args alloca. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D145820: Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-10 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D145820#4185695 , @jhuber6 wrote: > No tests updated? That's a TODO, coming soon. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145820/new/ https://reviews.llvm.org/D145820

[PATCH] D145820: Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-10 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. TODOs: Update existing LIT tests, add a new one. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D145820/new/ https://reviews.llvm.org/D145820 ___ cfe-commits mailing list

[PATCH] D145820: Insert alloca for kernel args at function entry block instead of the launch point.

2023-03-10 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak created this revision. Herald added a subscriber: hiraditya. Herald added a project: All. dhruvachak requested review of this revision. Herald added a reviewer: jdoerfert. Herald added subscribers: llvm-commits, cfe-commits, sstefan1. Herald added projects: clang, LLVM. If an inlined

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2023-01-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. After rebasing on top of main today and regenerating all the auto-update clang tests, here are the test results. The AST tests have to be updated manually as Johannes mentioned earlier. I haven't looked at the other clang test failures. The llvm tests need to be

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2023-01-17 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 490030. dhruvachak added a comment. Herald added a subscriber: pcwang-thead. Rebased. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 Files:

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-11-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. @jhuber6 Turns out a rebase on top of trunk had ~200 test conflicts. During my last update in Sep, I had resolved all of the clang test conflicts and failures, there were only llvm test failures. At this point, I checked out commit 92bc3fb5

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-11-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 475341. dhruvachak edited the summary of this revision. dhruvachak added a comment. Herald added subscribers: kosarev, jvesely. Rebased. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-11-11 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3921948 , @jhuber6 wrote: > @dhruvachak Do you still need help updating the LLVM tests? If you go a few messages back, there are some llvm tests that @jdoerfert said were not updated properly. Can someone help

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-23 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3812946 , @jdoerfert wrote: > In D102107#3812582 , @dhruvachak > wrote: > >> In D102107#3812554 , @dhruvachak >> wrote: >> >>>

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-23 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3812554 , @dhruvachak wrote: > Updated llvm tests. The following 3 tests still fail: > > LLVM :: Transforms/OpenMP/spmdization_constant_prop.ll > LLVM ::

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-23 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 462582. dhruvachak added a comment. Updated llvm tests. The following 3 tests still fail: LLVM :: Transforms/OpenMP/spmdization_constant_prop.ll LLVM :: Transforms/OpenMP/spmdization_guarding_two_reaching_kernels.ll LLVM ::

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-23 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak reopened this revision. dhruvachak added a comment. This revision is now accepted and ready to land. This patch was reverted. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. I reverted this commit while I fix the failing tests. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 ___ cfe-commits mailing list

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3791292 , @vitalybuka wrote: > check-llvm fails bunch of test for me > > > > Failed Tests (12): > > LLVM :: Transforms/OpenMP/custom_state_machines.ll > LLVM ::

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG7539e9cf811e: [OpenMP] Codegen aggregate for outlined function captures (authored by ggeorgakoudis, committed by dhruvachak). Repository: rG LLVM

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-09-14 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 460274. dhruvachak added a comment. Rebased Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 Files: clang/lib/CodeGen/CGOpenMPRuntime.cpp

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-08-03 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. Pointing out the recent changes at the corresponding source locations. Comment at: clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp:1570 + {llvm::ConstantInt::get(CGM.SizeTy, AllocSize)}); +

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-08-03 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. @jdoerfert Attached are the device IR files, generated with -save-temps. F24006188: remarks_parallel_in_multiple_target_state_machines-openmp-amdgcn-amd-amdhsa.ll F24006197:

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-28 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. All changes from my end are in. Please review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 ___ cfe-commits mailing list

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-28 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. @jdoerfert With this patch, additional remarks are being generated. Please check whether the new OMP121 remarks in the following tests are OK. Clang :: OpenMP/remarks_parallel_in_multiple_target_state_machines.c Clang ::

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-28 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. Rebased on top of a recent commit. Both check-clang and check-openmp (on amdgpu) pass. Testing Time: 30.73s Skipped : 4 Unsupported : 1480 Passed : 29554 Expectedly Failed:27 [100%] Built target check-clang On amdgpu:

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-28 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 448404. dhruvachak added a comment. Regenerated clang tests, make check-clang passes Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 Files:

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-15 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3648219 , @jdoerfert wrote: > > Can you share the output of the AST dump tests and the new check lines, so > what run produces and the file we give to Filechec to verify it. I looked at the AST test output and

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. make check-openmp passes on amdgpu. Need to check on nvptx. Testing Time: 39.95s Unsupported : 143 Passed : 563 Expectedly Failed: 14 [100%] Built target check-openmp [100%] Built target check-openmp Repository: rG LLVM Github Monorepo

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. Results from "make check-clang": Failed Tests (14): Clang :: AST/ast-dump-openmp-distribute-parallel-for-simd.c Clang :: AST/ast-dump-openmp-distribute-parallel-for.c Clang :: AST/ast-dump-openmp-target-teams-distribute-parallel-for-simd.c Clang ::

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: llvm/lib/Transforms/IPO/OpenMPOpt.cpp:4263 case OMPRTL___kmpc_nvptx_end_reduce_nowait: +case OMPRTL___kmpc_alloc_aggregate_arg: break; dhruvachak wrote: > @jdoerfert Is this enough to enable

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: llvm/lib/Transforms/IPO/OpenMPOpt.cpp:4263 case OMPRTL___kmpc_nvptx_end_reduce_nowait: +case OMPRTL___kmpc_alloc_aggregate_arg: break; @jdoerfert Is this enough to enable SPMDization or is further

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3640232 , @jdoerfert wrote: > In D102107#3640198 , @dhruvachak > wrote: > >> Thanks. I followed the above steps and regenerated a couple of the AST tests >> but they still

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak updated this revision to Diff 443399. dhruvachak added a comment. Herald added a subscriber: hiraditya. Fixed opaque pointer miscompile. Added alloc_aggregate_arg entry point to OpenMPOpt SPMD list. Fixed nocapture attribute of __kmpc_alloc_aggregate_arg, Added align attribute for call

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3639735 , @jdoerfert wrote: > F23722893: ast_dump_2_check.py >>! In > D102107#3639615 , @dhruvachak wrote: > >> In D102107#3639556

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3639556 , @jdoerfert wrote: > In D102107#3639551 , @dhruvachak > wrote: > >> Is there an llvm/utils script to update clang tests that have RUN lines at >> the top? An

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. Is there an llvm/utils script to update clang tests that have RUN lines at the top? An example is clang/test/OpenMP/debug_threadprivate_copyin.c. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp:3541 .getPointerType(CGF.getContext().getPointerType( CGF.getContext().VoidPtrTy)) .castAs());

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-07 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3633705 , @jdoerfert wrote: > Also, make sure to remove all deviceRTL files and probably reset the > autogenerated tests to upstream (and re-generate) before you merge (or > reupload). > > In D102107#3633678

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-07-06 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. I rebased and resolved conflicts just now and got the compiler built. I did not update the tests, hence not updating this review. I see the following outstanding issues: (1) make check-libomptarget produces a bunch of failures with the following compile-time

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-04-08 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added inline comments. Comment at: llvm/include/llvm/Frontend/OpenMP/OMPKinds.def:907 +__OMP_RTL_ATTRS(__kmpc_alloc_aggregate_arg, DefaultAttrs, ReturnPtrAttrs, +ParamAttrs(NoCaptureAttrs, NoCaptureAttrs)) + NoCapture attributes for

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-04-07 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. In D102107#3434733 , @ggeorgakoudis wrote: > In D102107#3417452 , @dhruvachak > wrote: > >> I added https://github.com/llvm/llvm-project/issues/54654 documenting what I >> found

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-03-30 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. As discussed in https://github.com/llvm/llvm-project/issues/54654, this needs to be added for SPMDization with this patch. Not sure whether further handling is required. diff --git a/llvm/lib/Transforms/IPO/OpenMPOpt.cpp b/llvm/lib/Transforms/IPO/OpenMPOpt.cpp

[PATCH] D102107: [OpenMP] Codegen aggregate for outlined function captures

2022-03-30 Thread Dhruva Chakrabarti via Phabricator via cfe-commits
dhruvachak added a comment. Herald added a project: All. I added https://github.com/llvm/llvm-project/issues/54654 documenting what I found when testing this patch on amdgpu. @ggeorgakoudis Can you please rebase this patch on top of main? Thanks. Repository: rG LLVM Github Monorepo CHANGES