[PATCH] D106980: [OpenMP] Emit remark on the captured call instead of the variable

Joseph Huber via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 4 14:51:07 PST 2022


This revision was automatically updated to reflect the committed changes.
Closed by commit rG6b78526b1b87: [OpenMP] Emit remark on the captured call instead of the variable (authored by jhuber6).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D106980/new/

https://reviews.llvm.org/D106980

Files:
  llvm/lib/Transforms/IPO/AttributorAttributes.cpp
  llvm/test/Transforms/OpenMP/globalization_remarks.ll
  llvm/test/Transforms/OpenMP/remove_globalization.ll


Index: llvm/test/Transforms/OpenMP/remove_globalization.ll
===================================================================
--- llvm/test/Transforms/OpenMP/remove_globalization.ll
+++ llvm/test/Transforms/OpenMP/remove_globalization.ll
@@ -93,7 +93,7 @@
 ;
 entry:
   %0 = call i8* @__kmpc_alloc_shared(i64 4), !dbg !13
-  call void @share(i8* %0)
+  call void @share(i8* %0), !dbg !13
   call void @__kmpc_free_shared(i8* %0, i64 4)
   ret void
 }
Index: llvm/test/Transforms/OpenMP/globalization_remarks.ll
===================================================================
--- llvm/test/Transforms/OpenMP/globalization_remarks.ll
+++ llvm/test/Transforms/OpenMP/globalization_remarks.ll
@@ -17,13 +17,13 @@
   %0 = call i8* @__kmpc_alloc_shared(i64 4), !dbg !10
   %x_on_stack = bitcast i8* %0 to i32*
   %1 = bitcast i32* %x_on_stack to i8*
-  call void @share(i8* %1)
+  call void @share(i8* %1), !dbg !10
   call void @__kmpc_free_shared(i8* %0)
   call void @__kmpc_target_deinit(%struct.ident_t* null, i1 false, i1 true)
   ret void
 }
 
-define void @share(i8* %x) {
+define internal void @share(i8* %x) {
 entry:
   store i8* %x, i8** @S
   ret void
@@ -31,9 +31,10 @@
 
 declare i8* @__kmpc_alloc_shared(i64)
 
-declare void @__kmpc_free_shared(i8*)
+declare void @__kmpc_free_shared(i8* nocapture)
 
 declare i32 @__kmpc_target_init(%struct.ident_t*, i1, i1, i1);
+
 declare void @__kmpc_target_deinit(%struct.ident_t*, i1, i1)
 
 !llvm.dbg.cu = !{!0}
Index: llvm/lib/Transforms/IPO/AttributorAttributes.cpp
===================================================================
--- llvm/lib/Transforms/IPO/AttributorAttributes.cpp
+++ llvm/lib/Transforms/IPO/AttributorAttributes.cpp
@@ -6316,7 +6316,7 @@
 
           if (ValidUsesOnly &&
               AI.LibraryFunctionId == LibFunc___kmpc_alloc_shared)
-            A.emitRemark<OptimizationRemarkMissed>(AI.CB, "OMP113", Remark);
+            A.emitRemark<OptimizationRemarkMissed>(CB, "OMP113", Remark);
 
           LLVM_DEBUG(dbgs() << "[H2S] Bad user: " << *UserI << "\n");
           ValidUsesOnly = false;


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106980.406111.patch
Type: text/x-patch
Size: 2082 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220204/7a05e8ca/attachment.bin>


More information about the llvm-commits mailing list