[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-23 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Sema/Sema.h:10333 + /// Check if there is an active global `omp begin assumes` directive. + bool isInOpenMPAssumeScope() { return !OMPAssumeScoped.empty(); } + ABataev wrote: > ABataev wrote: > >

[PATCH] D91979: [Clang][Attr] Introduce the `assume` function attribute

2020-11-23 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 307194. jdoerfert added a comment. Generalize check lines [NFC] Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91979/new/ https://reviews.llvm.org/D91979 Files: clang/docs/LanguageExtensions.rst clang/inc

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-24 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Sema/Sema.h:10333 + /// Check if there is an active global `omp begin assumes` directive. + bool isInOpenMPAssumeScope() { return !OMPAssumeScoped.empty(); } + ABataev wrote: > jdoerfert wrote: >

[PATCH] D91944: OpenMP 5.0 metadirective

2020-11-24 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. This looks close to an OpenMP 5.0 implementation. I left comments inlined. We need tests that show how non-selected alternatives *do not* impact the program. As an example, a template instantiation inside of a non-selected alternative is not actually performed. We al

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-24 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Sema/Sema.h:10333 + /// Check if there is an active global `omp begin assumes` directive. + bool isInOpenMPAssumeScope() { return !OMPAssumeScoped.empty(); } + ABataev wrote: > jdoerfert wrote: >

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-24 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 307479. jdoerfert added a comment. Improve template handling. Do not annotate template instantiations with scoped assumptions for now. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Sema/Sema.h:10333 + /// Check if there is an active global `omp begin assumes` directive. + bool isInOpenMPAssumeScope() { return !OMPAssumeScoped.empty(); } + ABataev wrote: > jdoerfert wrote: >

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 307697. jdoerfert marked 8 inline comments as done. jdoerfert added a comment. Addressed comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews.llvm.org/D91980 Files: clang/inclu

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D91980#2416950 , @ABataev wrote: > Why don't yo want to try to implement the scheme similar to the declare > target? Because it is not clear that the standard even says that right now. Even if, as you noted, what is the use

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-11-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D91980#2417129 , @ABataev wrote: > In D91980#2417049 , @jdoerfert wrote: > >> In D91980#2416950 , @ABataev wrote: >> >>> Why don't yo want to tr

[PATCH] D92297: [CodeGen] -fno-delete-null-pointer-checks: change dereferenceable to dereferenceable_or_null

2020-11-30 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D92297#2422568 , @bkramer wrote: > While it would be nice for `dereferenceable` to not imply nonnull, the > implementation currently assumes it does and will speculate loads based on > that. See `llvm::Value::getPointerDeref

[PATCH] D92189: [OpenMPIRBuilder] forward arguments as pointers to outlined function

2020-12-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. While only partially related, can you leave a FIXME saying that more than 15 arguments need to be packed in a structure? Comment at: clang/test/OpenMP/parallel_codegen.cpp:139 // CHECK: call {{.*}}void (%struct.ident_t*, i32, void (i32*, i32*,

[PATCH] D92189: [OpenMPIRBuilder] forward arguments as pointers to outlined function

2020-12-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM, one comment and two nits. Feel free to commit if you agree with the suggestions or come back with concerns. Thanks for working on this and taking the time to fix it like this! =

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert marked 6 inline comments as done. jdoerfert added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:3210 + +SmallVector DeclContexts; +DeclContexts.push_back(CurContext); ABataev wrote: > jdoerfert wrote: > > ABataev wrote: > > > jdoerf

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 308817. jdoerfert marked an inline comment as done. jdoerfert added a comment. Addressed comments, lambda handling and more Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews.llvm.org/D9

[PATCH] D92439: Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert requested changes to this revision. jdoerfert added inline comments. This revision now requires changes to proceed. Comment at: clang/lib/Basic/Targets/SPIR.h:108 + + virtual bool hasInt128Type() const { return false; } }; Not virtual but override.

[PATCH] D92439: Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. So, NVPTX seems to do something sensible with i128, though I haven't done rigorous testing. Comment at: clang/lib/Sema/Sema.cpp:241 + (Context.getAuxTargetInfo() && + Context.getAuxTargetInfo()->hasInt128Type())) { // If either of the

[PATCH] D92439: Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Still unsure if we should also error out for NVPTX but that is a different story. Looks OK from my side, assuming you address the earlier comment. Maybe someone else should accept though. Comment at: clang/lib/Sema/Sema.cpp:241 + (Context.getAu

[PATCH] D92439: [CLANG] Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D92439#2429815 , @jyu2 wrote: > In D92439#2429511 , @jdoerfert wrote: > >> Still unsure if we should also error out for NVPTX but that is a different >> story. Looks OK from my side, a

[PATCH] D92439: [CLANG] Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D92439#2431270 , @aaron.ballman wrote: > In D92439#2431256 , @jdoerfert wrote: > >> In D92439#2429815 , @jyu2 wrote: >> >>> In D92439#2429511 <

[PATCH] D91944: OpenMP 5.0 metadirective

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Serialization/ASTBitCodes.h:1952 - STMT_MS_DEPENDENT_EXISTS, // MSDependentExistsStmt - EXPR_LAMBDA,// LambdaExpr STMT_COROUTINE_BODY, alokmishra.besu wrote: > jdo

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 309340. jdoerfert marked 4 inline comments as done. jdoerfert added a comment. Addressed comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews.llvm.org/D91980 Files: clang/inclu

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/lib/Sema/SemaLambda.cpp:999-1002 + // OpenMP lambdas might get assumumption attributes. + if (LangOpts.OpenMP) +ActOnFinishedFunctionDefinitionInOpenMPAssumeScope(Method); + ABataev wrote: > Are there any o

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/lib/Sema/SemaOpenMP.cpp:3203-3206 + if (!SkippedClauses && Assumptions.empty()) +Diag(Loc, diag::err_omp_no_clause_for_directive) +<< llvm::omp::getAllAssumeClauseOptions() +<< llvm::omp::getOpenMPDirectiveNa

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 309381. jdoerfert added a comment. Early exit Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews.llvm.org/D91980 Files: clang/include/clang/Basic/DiagnosticParseKinds.td clang/inclu

[PATCH] D92655: [OPENMP]Fix PR48387: disable warning messages caused by internal conversions.

2020-12-04 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92655/new/ https://reviews.llvm.org/D92655 __

[PATCH] D91980: [OpenMP] Add initial support for `omp [begin/end] assumes`

2020-12-04 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 309584. jdoerfert marked 2 inline comments as done. jdoerfert added a comment. Addressed comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D91980/new/ https://reviews.llvm.org/D91980 Files: clang/inclu

[PATCH] D92682: [OPENMP]Fix PR48394: need to capture variables used in atomic constructs.

2020-12-04 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM, thanks for the quick fix! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92682/new/ https://reviews.llvm.org/D92682

[PATCH] D92439: [CLANG] Fix missing error for use of 128-bit integer inside SPIR64 device code.

2020-12-04 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LG CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92439/new/ https://reviews.llvm.org/D92439 ___ cfe-commits mailing list cfe-commits

[PATCH] D68410: [AttrDocs] document always_inline

2020-12-04 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. LGTM Comment at: clang/include/clang/Basic/AttrDocs.td:4401 +disabled. Does not guarantee that inline substitution actually occurs. +}]; + let Heading = "always_inline"; nickdesaulniers wrote: > lebedev.ri wrote: > > jdoerfert wrote:

[PATCH] D89696: [OpenMP] Fixing OpenMP/driver.c failing on 32-bit hosts

2020-10-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89696/new/ https://reviews.llvm.org/D89696 ___

[PATCH] D88978: [WIP] Attach debug intrinsics to allocas, and use correct address space

2020-10-20 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. I have no idea what from the commit message what this has to do with the OpenMP code gen but I saw this randomly while looking for something else so here we go: In D88978#2326036 , @scott.linder wrote: > In D88978#2325991

[PATCH] D89844: [Clang][OpenMP][WIP] Fixed an issue of segment fault when using target nowait

2020-10-20 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Generally OK. Unclear if we want to keep a flag so we don't need to test the pointer, but I guess it is fine too. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89844/new/ https://reviews.llvm.org/D89844

[PATCH] D89844: [Clang][OpenMP][WIP] Fixed an issue of segment fault when using target nowait

2020-10-21 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. can we add the reproducer to the tests please. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89844/new/ https://reviews.llvm.org/D89844 ___ cfe-commits mailing list cfe-commits

[PATCH] D76211: OpenMP Metadirective with user defined condition

2020-10-21 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. reverse ping. Do you have an estimate when you update this? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76211/new/ https://reviews.llvm.org/D76211 ___ cfe-commits mailing lis

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, ye-luo, tra, yaxunl. Herald added subscribers: guansong, bollu. Herald added a project: clang. jdoerfert requested review of this revision. Herald added a subscriber: sstefan1. Reported by Colleen Bertoni after running t

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. This should fix the last OvO math test (I think C++11) we fail. While those tests are "simple" they are fairly exhaustive and it's a good sign to pass them ;) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89971/new/ htt

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D89971#2347762 , @JonChesterfield wrote: > Change obviously good. Am I right in reading this as all of OvO then passes > for trunk, nvptx? C++11 math tests on one system. These are system dependent to some degree so I woul

[PATCH] D89974: [driver][CUDA] Use CMake's FindCUDA as default --cuda-path.

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. > I think the default should still let clang search for CUDA or require the > user to provide correct CUDA path. "Use CUDA path discovered by CMake at > build time" should be a non-default configuration option if/when it's needed > and appropriate. > Having an opti

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D89971#2347909 , @tra wrote: >> The template overload > > function overload. > >> is still hidden behind an ifdef for OpenMP. In the >> future we probably want to remove the ifdef but that requires further >> testing. > > I do

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-22 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/lib/Headers/__clang_cuda_cmath.h:330 double>::type remquo(__T1 __x, __T2 __y, int *__quo) { return std::remquo((double)__x, (double)__y, __quo); tra wrote: > jdoerfert wrote: > > The template overload I

[PATCH] D89994: [libomptarget][nvptx] Undef, internal shared variables

2020-10-23 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp:2858 TransferMedium = new llvm::GlobalVariable( -M, Ty, /*isConstant=*/false, llvm::GlobalVariable::CommonLinkage, -llvm::Constant::getNullValue(Ty), TransferMediumName, +

[PATCH] D90101: [Clang][OpenMP][WIP] Avoid unnecessary privatization of mapper array when there is no user defined mapper

2020-10-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. 4 tests seem to fail still, otherwise this LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90101/new/ https://reviews.llvm.org/D90101

[PATCH] D86844: [LoopDeletion] Allows deletion of possibly infinite side-effect free loops

2020-10-25 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM. Comment at: llvm/lib/Transforms/Scalar/LoopDeletion.cpp:60 +// Make sure all exiting blocks produce the same incoming value for the +// block. If there ar

[PATCH] D89844: [Clang][OpenMP] Fixed an issue of segment fault when using target nowait

2020-10-26 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89844/new/ https://reviews.llvm.org/D89844 ___

[PATCH] D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API

2020-10-26 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Looks generally good. We seem to have way to many places dealing with the mapping stuff but that is not your fault. One thing I found weird though: Comment at: clang/lib/CodeGen/CGOpenMPRuntime.cpp:8078 + for (auto LI = C->component_lists_begin(

[PATCH] D90099: [Clang][OpenMP][WIP] Added the support for target data nowait

2020-10-26 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90099/new/ https://reviews.llvm.org/D90099 ___

[PATCH] D89802: [OpenMP] Add Passing in Original Declaration Names To Mapper API

2020-10-27 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. Nit: Add '.' add the end of comments and make them sentences. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89802/new/ https://revi

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-27 Thread Johannes Doerfert 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 rGb1a90e1599a6: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)` (authored by jdoerfert). Repository: rG LLVM Github Monorepo CHA

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-10-27 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Tests missing (on all levels), was there an RFC? What is the expected usage of this? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90275/new/ https://reviews.llvm.org/D90275 _

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-10-27 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. (To clarify, I am not opposing this, my comment before was brief but not meant to be negative. I'm generally for new attributes and this one is already in existing source so that is even better.) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION http

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-10-27 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D90275#2357931 , @mcgrathr wrote: > There is an RFC going out with this prototype as reference. When there is > consensus on the RFC, this will get in shape for landing with complete tests > and all. Great. I didn't find a

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-10-27 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D90275#2357951 , @gulfem wrote: > In D90275#2357945 , @jdoerfert wrote: > >> In D90275#2357931 , @mcgrathr wrote: >> >>> There is an RFC going o

[PATCH] D90248: [libomptarget][nvptx] Undef, weak shared variables

2020-10-28 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM, not totally convinced about weak linkage but ok Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90248/new/ https://reviews.llvm.org/D9

[PATCH] D89971: [OpenMP][CUDA] Add missing overload for `remquo(float,float,int*)`

2020-10-28 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D89971#2359398 , @tra wrote: > Never mind. I see that you've fixed it in > 17c8251bca83072d2f3e00f936d6ce24500e6b02 > Yeah, as I write in the commit mess

[PATCH] D90415: [OpenMP] Use __OPENMP_NVPTX__ instead of _OPENMP in complex wrapper headers.

2020-10-29 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. You need to define & undefine the macro around the includes of `__clang_cuda_complex_builtins.h` in `clang/lib/Headers/openmp_wrappers/complex` and `clang/lib/Headers/openmp_wrappers/co

[PATCH] D90440: [OpenMP][NFC] Clang format ParseOpenMP

2020-10-29 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, ABataev. Herald added subscribers: guansong, bollu, yaxunl. Herald added a project: clang. jdoerfert requested review of this revision. Herald added a subscriber: sstefan1. ParseOpenMP.cpp was pretty much clang-formatted

[PATCH] D90415: [OpenMP] Use __OPENMP_NVPTX__ instead of _OPENMP in complex wrapper headers.

2020-10-29 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D90415#2363056 , @fodinabor wrote: > Thanks, will land it later. > > For the bug see: https://bugs.llvm.org/show_bug.cgi?id=48014 > Do I have to create a new phabricator review, too? > I'm currently building the release/11.x b

[PATCH] D90440: [OpenMP][NFC] Clang format ParseOpenMP

2020-10-29 Thread Johannes Doerfert 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 rG2c58fa54e8fa: [OpenMP][NFC] Clang format ParseOpenMP (authored by jdoerfert). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION htt

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-11-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/include/clang/Basic/AttrDocs.td:3910 +Functions marked as ``leaf`` attribute are not allowed to enter their caller's translation unit. +Therefore, they cannot use or modify any data that does not escape the current compilation

[PATCH] D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction

2020-11-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. LGTM, some nits Comment at: clang/lib/CodeGen/CGStmt.cpp:801 + } else if (LanguageRequiresProgress()) +LoopMustProgress = true; + Nit: Add braces

[PATCH] D90275: [clang][IR] Add support for leaf attribute

2020-11-03 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added subscribers: aqjune, fhahn, efriedma, reames. jdoerfert added a comment. The more I think about it, the more I think we should never create a `leaf`/`nocallback` definition. Only declarations should carry that attribute. I'm also still not convinced `nocallback` is a good name. @

[PATCH] D95976: [OpenMP] Simplify offloading parallel call codegen

2021-05-12 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: openmp/libomptarget/deviceRTLs/common/generated_microtask_cases.gen:1 +case 0: +((void (*)(kmp_int32 *, kmp_int32 * JonChesterfield wrote: > This is not very pretty. Why do we need runtime dispatch to a function > po

[PATCH] D101976: [OpenMP] Unified entry point for SPMD & generic kernels in the device RTL

2021-05-12 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 344918. jdoerfert added a comment. Herald added a subscriber: jvesely. Update tests Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101976/new/ https://reviews.llvm.org/D101976 Files: clang/lib/CodeGen/CGOpe

[PATCH] D102361: [OpenMP] Add Module metadata for OpenMP compilation

2021-05-12 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. tests missing. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102361/new/ https://reviews.llvm.org/D102361 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.

[PATCH] D102558: [Utils] Check for generated functions inline if possible

2021-05-15 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: greened, arichardson, ggeorgakoudis. Herald added a subscriber: bollu. jdoerfert requested review of this revision. Herald added subscribers: cfe-commits, sstefan1. Herald added projects: clang, LLVM. With D83004

[PATCH] D101849: [OpenMP][NFC] Refactor Clang OpenMP tests using update_cc_test_checks

2021-05-17 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a subscriber: ABataev. jdoerfert added a comment. In D101849#2764703 , @mikerice wrote: >> // RUN: %clang_cc1 -verify -triple x86_64-apple-darwin10 -O1 -fopenmp-simd >> -emit-llvm %s -o - | FileCheck %s --check-prefix=CHECK10 > > Is there

[PATCH] D102558: [Utils] Check for generated functions inline if possible

2021-05-17 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 346030. jdoerfert marked 4 inline comments as done. jdoerfert added a comment. Skip duplicates in the line2spell_and_mangled_list as that causes functions to be missed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llv

[PATCH] D102558: [Utils] Check for generated functions inline if possible

2021-05-17 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added inline comments. Comment at: clang/test/utils/update_cc_test_checks/Inputs/generated-funcs.c.generated.expected:100 + } +} ggeorgakoudis wrote: > The checks for the outlined function are missing? Good catch. It turns out functions that showed up

[PATCH] D101849: [OpenMP][NFC] Refactor Clang OpenMP tests using update_cc_test_checks

2021-05-18 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D101849#2766411 , @mikerice wrote: > In D101849#2764825 , @ABataev wrote: > >> No, it is not required. Most probably, needed to simplify test checks, >> nothing else. > > Thanks. I'

[PATCH] D101973: [OpenMP][NFC] Remove SIMD check lines for non-simd tests

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 346579. jdoerfert added a comment. Make the script remove leftover `CHECK:` lines that would now trigger given the absence of a specific check prefix for the -fopenmp-simd invocations. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION http

[PATCH] D101973: [OpenMP][NFC] Remove SIMD check lines for non-simd tests

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 346604. jdoerfert added a comment. Accidentally deleted too many check lines this time ... Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101973/new/ https://reviews.llvm.org/D101973 Files: clang/test/OpenM

[PATCH] D102558: [Utils] Check for generated functions inline if possible

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert planned changes to this revision. jdoerfert added a comment. This doesn't work properly yet :( Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102558/new/ https://reviews.llvm.org/D102558 ___ cfe

[PATCH] D101973: [OpenMP][NFC] Remove SIMD check lines for non-simd tests

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG6ff380f43987: [OpenMP][NFC] Remove SIMD check lines for non-simd tests (authored by jdoerfert). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101973/new/ ht

[PATCH] D101976: [OpenMP] Unified entry point for SPMD & generic kernels in the device RTL

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 346621. jdoerfert added a comment. Drop the `weak` attribute, will solve the problem differently Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D101976/new/ https://reviews.llvm.org/D101976 Files: clang/lib/

[PATCH] D101973: [OpenMP][NFC] Remove SIMD check lines for non-simd tests

2021-05-19 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D101973#2770283 , @JonChesterfield wrote: > I can't see a change to a script in this diff. Should there be one? Looks > like the test change was done programmatically It was, but I did not expect to need the script in the

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

2021-05-23 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. This allows us to remove the switch in the device runtime, right? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102107/new/ https://reviews.llvm.org/D102107 ___ cfe-commits mai

[PATCH] D96418: [clang] Refactor mustprogress handling, add it to all loops in c++11+.

2021-05-26 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D96418#2783541 , @leonardchan wrote: >> Well, no, I'm afraid it is actually clear that that code does have UB >> according to the C++ standard. Perhaps you mean that it *shouldn't* have >> UB, or that Clang should define it

[PATCH] D93040: [InlineFunction] Use llvm.experimental.noalias.scope.decl for noalias arguments.

2021-01-23 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D93040#2517758 , @xbolva00 wrote: > http://llvm-compile-time-tracker.com/compare.php?from=344afa853fcfcc085cb5c957b4a07c7ea013bb1b&to=2b9a834c43cb1f93d33958c14b695896bb4e9c1e&stat=size-text > > Codesize regression 1% for tramp

[PATCH] D94315: [OpenMP][FIX] Enforce a function boundary for a new data environment

2021-01-25 Thread Johannes Doerfert via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGbd756286d2e7: [OpenMP][FIX] Enforce a function boundary for a new data environment (authored by jdoerfert). Herald added a reviewer: bollu. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D95665: [Builtins][FIX] Allow targets to opt-out of `long double` builtins

2021-01-28 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: tra, hliao, yaxunl, ldionne, compnerd, Fznamznon, erichkeane, rsmith, mclow.lists. Herald added subscribers: kerbowa, nhaehnle, jvesely, jholewinski. Herald added a reviewer: bollu. jdoerfert requested review of this revision. Herald adde

[PATCH] D78513: [hip] Claim builtin type `__float128` supported if the host target supports it.

2021-01-28 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D78513#1993210 , @hliao wrote: > In D78513#1993115 , @yaxunl wrote: > >> Currently if instructions of float128 get to amdgpu backend, are we going to >> crash? > > As `Float128Format`

[PATCH] D95665: [Builtins][FIX] Allow targets to opt-out of `long double` builtins

2021-01-30 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert abandoned this revision. jdoerfert added a comment. I guess this doesn't work then. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95665/new/ https://reviews.llvm.org/D95665 ___ cfe-commits mail

[PATCH] D95764: [OpenMP] Do not propagate match extensions to nested contexts

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, tianshilei1992. Herald added subscribers: guansong, yaxunl. Herald added a reviewer: bollu. jdoerfert requested review of this revision. Herald added subscribers: cfe-commits, sstefan1. Herald added a project: clang. If w

[PATCH] D95765: [OpenMP] Introduce the `disable_selector_propagation` variant selector trait

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, tianshilei1992. Herald added subscribers: guansong, yaxunl. Herald added a reviewer: bollu. Herald added a reviewer: aaron.ballman. jdoerfert requested review of this revision. Herald added subscribers: llvm-commits, cfe-c

[PATCH] D95764: [OpenMP] Do not propagate match extensions to nested contexts

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D95764#2532875 , @tianshilei1992 wrote: > So I suppose D95765 can replace this patch, > right? I think we want both. Propagating match clauses doesn't make sense to me so we should never d

[PATCH] D95764: [OpenMP] Do not propagate match extensions to nested contexts

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 320371. jdoerfert added a comment. Herald added a reviewer: aaron.ballman. Update docs Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95764/new/ https://reviews.llvm.org/D95764 Files: clang/include/clang/Ba

[PATCH] D95764: [OpenMP] Do not propagate match extensions to nested contexts

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D95764#2532908 , @tianshilei1992 wrote: > In D95764#2532877 , @jdoerfert wrote: > >> In D95764#2532875 , @tianshilei1992 >> wrote: >> >>> So I

[PATCH] D95764: [OpenMP] Do not propagate match extensions to nested contexts

2021-01-31 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. In D95764#2532927 , @JonChesterfield wrote: > I would have expected a nested match statement to hit on a subset of those > that matched in the parent. > > If (match x64) > If (match Intel) > > - expect x64 and intel to be true

[PATCH] D94961: [OpenMP] Add OpenMP offloading toolchain for AMDGPU

2021-02-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Overall, looks reasonable. I'm not a fan of the way things are hooked up but that is also true for the NVPTX toolchain and for now unavoidable I guess. Some nits below. Comment at: clang/lib/Driver/Driver.cpp:2999 +if (VStr.startswith("-

[PATCH] D94961: [OpenMP] Add OpenMP offloading toolchain for AMDGPU

2021-02-01 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert added a comment. Generally OK, the more I look at it the more things pop up. Other than my comments, I'm fine with this going in. Comment at: clang/lib/Driver/Driver.cpp:767 + } + TC = AMDGPUOpenMPTC.get(); } else --

[PATCH] D94961: [OpenMP] Add OpenMP offloading toolchain for AMDGPU

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert accepted this revision. jdoerfert added a comment. This revision is now accepted and ready to land. fine with me, assuming this doesn't disturb anything outside the AMD pipeline. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D94961/new/ ht

[PATCH] D95903: [OpenMP][NFC] Pre-commit test changes regarding PR48933

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, grokos, ABataev, Fznamznon. Herald added subscribers: guansong, yaxunl. Herald added a reviewer: bollu. jdoerfert requested review of this revision. Herald added subscribers: cfe-commits, sstefan1. Herald added a project:

[PATCH] D95903: [OpenMP][NFC] Pre-commit test changes regarding PR48933

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 320944. jdoerfert added a comment. Add more examples and TODOs Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95903/new/ https://reviews.llvm.org/D95903 Files: clang/test/OpenMP/nvptx_unsupported_type_messa

[PATCH] D95903: [OpenMP][NFC] Pre-commit test changes regarding PR48933

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 320945. jdoerfert added a comment. More TODOs Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95903/new/ https://reviews.llvm.org/D95903 Files: clang/test/OpenMP/nvptx_unsupported_type_messages.cpp Index:

[PATCH] D95912: [OpenMP] Attribute target diagnostics properly

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, grokos, ABataev, Fznamznon. Herald added subscribers: guansong, yaxunl. Herald added a reviewer: bollu. jdoerfert requested review of this revision. Herald added a subscriber: sstefan1. Herald added a project: clang. Type

[PATCH] D95903: [OpenMP][NFC] Pre-commit test changes regarding PR48933

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 321010. jdoerfert added a comment. Add more tests Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95903/new/ https://reviews.llvm.org/D95903 Files: clang/test/OpenMP/nvptx_unsupported_type_messages.cpp Inde

[PATCH] D95903: [OpenMP][NFC] Pre-commit test changes regarding PR48933

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 321011. jdoerfert added a comment. Add *not* to TODOs Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95903/new/ https://reviews.llvm.org/D95903 Files: clang/test/OpenMP/nvptx_unsupported_type_messages.cpp

[PATCH] D95912: [OpenMP] Attribute target diagnostics properly

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert updated this revision to Diff 321012. jdoerfert added a comment. Rebase on top of D95903 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95912/new/ https://reviews.llvm.org/D95912 Files: clang/include/cl

[PATCH] D95928: [OpenMP] Delay more diagnostics of potentially non-emitted code

2021-02-02 Thread Johannes Doerfert via Phabricator via cfe-commits
jdoerfert created this revision. jdoerfert added reviewers: JonChesterfield, grokos, ABataev, Fznamznon, tra, yaxunl. Herald added a reviewer: bollu. Herald added a subscriber: guansong. jdoerfert requested review of this revision. Herald added a subscriber: sstefan1. Herald added a project: clang

<    4   5   6   7   8   9   10   11   12   13   >