<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Alexey<div class=""><br class=""></div><div class="">Looks like this is failing on Darwin, can you please take a look? Refer to <a href="http://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-incremental/58951/consoleFull" class="">http://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-incremental/58951/consoleFull</a>.</div><div class=""><br class=""></div><div class=""><span title="Regression test failed" style="box-sizing: border-box; font-family: monospace; font-size: 15px; white-space: pre-wrap; color: white; background-color: red;" class="">******************** TEST 'Clang :: Modules/builtins.m' FAILED ********************
</span><span style="caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); font-family: monospace; font-size: 15px; white-space: pre-wrap;" class="">Script:
--
: 'RUN: at line 1'; rm -rf /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp
: 'RUN: at line 2'; /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/bin/clang -cc1 -internal-isystem /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/lib/clang/9.0.0/include -nostdsysteminc -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp -fmodules -fimplicit-module-maps -I /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/builtins.m -verify
: 'RUN: at line 3'; /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/bin/clang -cc1 -internal-isystem /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/lib/clang/9.0.0/include -nostdsysteminc -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp -fmodules -fimplicit-module-maps -I /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs -x c /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/builtins.m -verify
: 'RUN: at line 4'; /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/bin/clang -cc1 -internal-isystem /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/lib/clang/9.0.0/include -nostdsysteminc -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp -fmodules -fimplicit-module-maps -I /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs -x objective-c++ /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/builtins.m -verify
: 'RUN: at line 6'; rm -rf /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp.pch.cache
: 'RUN: at line 7'; /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/bin/clang -cc1 -internal-isystem /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/lib/clang/9.0.0/include -nostdsysteminc -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp.pch.cache -fmodules -fimplicit-module-maps -I /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs -emit-pch -o /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp.pch -x objective-c-header /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs/use-builtin.h
: 'RUN: at line 8'; /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/bin/clang -cc1 -internal-isystem /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/lib/clang/9.0.0/include -nostdsysteminc -fmodules-cache-path=/Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp.pch.cache -fmodules -fimplicit-module-maps -I /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/Inputs /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/builtins.m -include-pch /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/clang-build/tools/clang/test/Modules/Output/builtins.m.tmp.pch /Users/buildslave/jenkins/workspace/clang-stage1-cmake-RA-incremental/llvm/tools/clang/test/Modules/builtins.m -verify
--
Exit Code: 134
Command Output (stderr):
--
</span><a id="-964495996d489585b-5106-414a-ac11-3ff90657619c" style="box-sizing: border-box; word-wrap: break-word; caret-color: rgb(51, 51, 51); color: rgb(51, 51, 51); font-family: monospace; font-size: 15px; white-space: pre-wrap; display: block; position: relative; top: -2em; visibility: hidden;" class=""></a><span title="Assertion failure" style="box-sizing: border-box; font-family: monospace; font-size: 15px; white-space: pre-wrap; color: white; background-color: red;" class="">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/Lex/PPDirectives.cpp, line 1952.</span><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Mar 11, 2019, at 12:51 PM, Alexey Bataev via cfe-commits <<a href="mailto:cfe-commits@lists.llvm.org" class="">cfe-commits@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Author: abataev<br class="">Date: Mon Mar 11 12:51:42 2019<br class="">New Revision: 355858<br class=""><br class="">URL: <a href="http://llvm.org/viewvc/llvm-project?rev=355858&view=rev" class="">http://llvm.org/viewvc/llvm-project?rev=355858&view=rev</a><br class="">Log:<br class="">[OPENMP]Fix codegen for declare target link in target regions.<br class=""><br class="">If the declare target link global is used in the target region<br class="">indirectly (used in the inner parallel, teams, etc. regions), we may<br class="">miss this variable and it leads to incorrect codegen.<br class=""><br class="">Modified:<br class=""> cfe/trunk/lib/Sema/SemaOpenMP.cpp<br class=""> cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp<br class=""><br class="">Modified: cfe/trunk/lib/Sema/SemaOpenMP.cpp<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOpenMP.cpp?rev=355858&r1=355857&r2=355858&view=diff" class="">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOpenMP.cpp?rev=355858&r1=355857&r2=355858&view=diff</a><br class="">==============================================================================<br class="">--- cfe/trunk/lib/Sema/SemaOpenMP.cpp (original)<br class="">+++ cfe/trunk/lib/Sema/SemaOpenMP.cpp Mon Mar 11 12:51:42 2019<br class="">@@ -147,6 +147,9 @@ private:<br class=""> /// Reference to the taskgroup task_reduction reference expression.<br class=""> Expr *TaskgroupReductionRef = nullptr;<br class=""> llvm::DenseSet<QualType> MappedClassesQualTypes;<br class="">+ /// List of globals marked as declare target link in this target region<br class="">+ /// (isOpenMPTargetExecutionDirective(Directive) == true).<br class="">+ llvm::SmallVector<DeclRefExpr *, 4> DeclareTargetLinkVarDecls;<br class=""> SharingMapTy(OpenMPDirectiveKind DKind, DeclarationNameInfo Name,<br class=""> Scope *CurScope, SourceLocation Loc)<br class=""> : Directive(DKind), DirectiveName(Name), CurScope(CurScope),<br class="">@@ -674,6 +677,31 @@ public:<br class=""> return StackElem.MappedClassesQualTypes.count(QT) != 0;<br class=""> }<br class=""><br class="">+ /// Adds global declare target to the parent target region.<br class="">+ void addToParentTargetRegionLinkGlobals(DeclRefExpr *E) {<br class="">+ assert(*OMPDeclareTargetDeclAttr::isDeclareTargetDeclaration(<br class="">+ E->getDecl()) == OMPDeclareTargetDeclAttr::MT_Link &&<br class="">+ "Expected declare target link global.");<br class="">+ if (isStackEmpty())<br class="">+ return;<br class="">+ auto It = Stack.back().first.rbegin();<br class="">+ while (It != Stack.back().first.rend() &&<br class="">+ !isOpenMPTargetExecutionDirective(It->Directive))<br class="">+ ++It;<br class="">+ if (It != Stack.back().first.rend()) {<br class="">+ assert(isOpenMPTargetExecutionDirective(It->Directive) &&<br class="">+ "Expected target executable directive.");<br class="">+ It->DeclareTargetLinkVarDecls.push_back(E);<br class="">+ }<br class="">+ }<br class="">+<br class="">+ /// Returns the list of globals with declare target link if current directive<br class="">+ /// is target.<br class="">+ ArrayRef<DeclRefExpr *> getLinkGlobals() const {<br class="">+ assert(isOpenMPTargetExecutionDirective(getCurrentDirective()) &&<br class="">+ "Expected target executable directive.");<br class="">+ return Stack.back().first.back().DeclareTargetLinkVarDecls;<br class="">+ }<br class=""> };<br class=""><br class=""> bool isImplicitTaskingRegion(OpenMPDirectiveKind DKind) {<br class="">@@ -2414,8 +2442,18 @@ public:<br class=""> // Define implicit data-sharing attributes for task.<br class=""> DVar = Stack->getImplicitDSA(VD, /*FromParent=*/false);<br class=""> if (isOpenMPTaskingDirective(DKind) && DVar.CKind != OMPC_shared &&<br class="">- !Stack->isLoopControlVariable(VD).first)<br class="">+ !Stack->isLoopControlVariable(VD).first) {<br class=""> ImplicitFirstprivate.push_back(E);<br class="">+ return;<br class="">+ }<br class="">+<br class="">+ // Store implicitly used globals with declare target link for parent<br class="">+ // target.<br class="">+ if (!isOpenMPTargetExecutionDirective(DKind) && Res &&<br class="">+ *Res == OMPDeclareTargetDeclAttr::MT_Link) {<br class="">+ Stack->addToParentTargetRegionLinkGlobals(E);<br class="">+ return;<br class="">+ }<br class=""> }<br class=""> }<br class=""> void VisitMemberExpr(MemberExpr *E) {<br class="">@@ -2573,7 +2611,13 @@ public:<br class=""> }<br class=""><br class=""> DSAAttrChecker(DSAStackTy *S, Sema &SemaRef, CapturedStmt *CS)<br class="">- : Stack(S), SemaRef(SemaRef), ErrorFound(false), CS(CS) {}<br class="">+ : Stack(S), SemaRef(SemaRef), ErrorFound(false), CS(CS) {<br class="">+ // Process declare target link variables for the target directives.<br class="">+ if (isOpenMPTargetExecutionDirective(S->getCurrentDirective())) {<br class="">+ for (DeclRefExpr *E : Stack->getLinkGlobals())<br class="">+ Visit(E);<br class="">+ }<br class="">+ }<br class=""> };<br class=""> } // namespace<br class=""><br class=""><br class="">Modified: cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp<br class="">URL: <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp?rev=355858&r1=355857&r2=355858&view=diff" class="">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp?rev=355858&r1=355857&r2=355858&view=diff</a><br class="">==============================================================================<br class="">--- cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp (original)<br class="">+++ cfe/trunk/test/OpenMP/declare_target_link_codegen.cpp Mon Mar 11 12:51:42 2019<br class="">@@ -37,10 +37,13 @@ int maini1() {<br class=""> {<br class=""> a = c;<br class=""> }<br class="">+#pragma omp target<br class="">+#pragma omp teams<br class="">+ c = a;<br class=""> return 0;<br class=""> }<br class=""><br class="">-// DEVICE: define weak void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-7]](i32* dereferenceable{{[^,]*}}<br class="">+// DEVICE: define weak void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-10]](i32* dereferenceable{{[^,]*}}<br class=""> // DEVICE: [[C_REF:%.+]] = load i32*, i32** @c_decl_tgt_link_ptr,<br class=""> // DEVICE: [[C:%.+]] = load i32, i32* [[C_REF]],<br class=""> // DEVICE: store i32 [[C]], i32* %<br class="">@@ -59,9 +62,10 @@ int maini1() {<br class=""> // HOST: [[BP0:%.+]] = getelementptr inbounds [2 x i8*], [2 x i8*]* [[BASEPTRS]], i{{[0-9]+}} 0, i{{[0-9]+}} 0<br class=""> // HOST: [[P0:%.+]] = getelementptr inbounds [2 x i8*], [2 x i8*]* [[PTRS]], i{{[0-9]+}} 0, i{{[0-9]+}} 0<br class=""> // HOST: call i32 @__tgt_target(i64 -1, i8* @{{[^,]+}}, i32 2, i8** [[BP0]], i8** [[P0]], i64* getelementptr inbounds ([2 x i64], [2 x i64]* [[SIZES]], i{{[0-9]+}} 0, i{{[0-9]+}} 0), i64* getelementptr inbounds ([2 x i64], [2 x i64]* [[MAPTYPES]], i{{[0-9]+}} 0, i{{[0-9]+}} 0))<br class="">-// HOST: call void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-26]](i32* %{{[^,]+}})<br class="">+// HOST: call void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-29]](i32* %{{[^,]+}})<br class="">+// HOST: call i32 @__tgt_target_teams(i64 -1, i8* @.__omp_offloading_{{.+}}_l40.region_id, i32 2, {{.+}})<br class=""><br class="">-// HOST: define internal void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-28]](i32* dereferenceable{{.*}})<br class="">+// HOST: define internal void @__omp_offloading_{{.*}}_{{.*}}maini1{{.*}}_l[[@LINE-32]](i32* dereferenceable{{.*}})<br class=""> // HOST: [[C:%.*]] = load i32, i32* @c,<br class=""> // HOST: store i32 [[C]], i32* %<br class=""><br class=""><br class=""><br class="">_______________________________________________<br class="">cfe-commits mailing list<br class=""><a href="mailto:cfe-commits@lists.llvm.org" class="">cfe-commits@lists.llvm.org</a><br class="">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits<br class=""></div></div></blockquote></div><br class=""></div></body></html>