[Openmp-commits] [openmp] [OpenMP] Fix issue of indirect function call in `__kmpc_fork_call_if` (PR #65436)
via Openmp-commits
openmp-commits at lists.llvm.org
Wed Sep 6 20:18:59 PDT 2023
dpalermo wrote:
Seeing the following compilation errors with this change:
`FAILED: openmp/runtime/src/CMakeFiles/omp.dir/kmp_csupport.cpp.o
...
/work1/omp-nightly/build/git/trunk17.0/llvm-project/openmp/runtime/src/kmp_csupport.cpp:359:7: error: no matching function for call to '__kmp_invoke_microtask'
359 | __kmp_invoke_microtask(VOLATILE_CAST(microtask_t) microtask, gtid,
| ^~~~~~~~~~~~~~~~~~~~~~
/work1/omp-nightly/build/git/trunk17.0/llvm-project/openmp/runtime/src/kmp.h:4037:12: note: candidate function not viable: requires 5 arguments, but 6 were provided
4037 | extern int __kmp_invoke_microtask(microtask_t pkfn, int gtid, int npr, int argc,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4038 | void *argv[]
| ~~~~~~~~~~~~
/work1/omp-nightly/build/git/trunk17.0/llvm-project/openmp/runtime/src/kmp_csupport.cpp:368:7: error: no matching function for call to '__kmp_invoke_microtask'
368 | __kmp_invoke_microtask(VOLATILE_CAST(microtask_t) microtask, gtid,
| ^~~~~~~~~~~~~~~~~~~~~~
/work1/omp-nightly/build/git/trunk17.0/llvm-project/openmp/runtime/src/kmp.h:4037:12: note: candidate function not viable: requires 5 arguments, but 6 were provided
4037 | extern int __kmp_invoke_microtask(microtask_t pkfn, int gtid, int npr, int argc,
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4038 | void *argv[]
| ~~~~~~~~~~~~
2 errors generated.
`
Can be fixed by replacing the added #ifdef OMPT_SUPPORT with #if OMPT_SUPPORT:
`
[r5 /work1/omp-nightly/build/git/trunk17.0/llvm-project]$ git diff
diff --git a/openmp/runtime/src/kmp_csupport.cpp b/openmp/runtime/src/kmp_csupport.cpp
index fb79adb93641..9eeaeb88fb9e 100644
--- a/openmp/runtime/src/kmp_csupport.cpp
+++ b/openmp/runtime/src/kmp_csupport.cpp
@@ -351,7 +351,7 @@ void __kmpc_fork_call_if(ident_t *loc, kmp_int32 argc, kmpc_micro microtask,
} else {
__kmpc_serialized_parallel(loc, gtid);
-#ifdef OMPT_SUPPORT
+#if OMPT_SUPPORT
void *exit_frame_ptr;
#endif
@@ -359,7 +359,7 @@ void __kmpc_fork_call_if(ident_t *loc, kmp_int32 argc, kmpc_micro microtask,
__kmp_invoke_microtask(VOLATILE_CAST(microtask_t) microtask, gtid,
/*npr=*/0,
/*argc=*/1, &args
-#ifdef OMPT_SUPPORT
+#if OMPT_SUPPORT
,
&exit_frame_ptr
#endif
@@ -369,7 +369,7 @@ void __kmpc_fork_call_if(ident_t *loc, kmp_int32 argc, kmpc_micro microtask,
/*npr=*/0,
/*argc=*/0,
/*args=*/nullptr
-#ifdef OMPT_SUPPORT
+#if OMPT_SUPPORT
,
&exit_frame_ptr
#endif
`
https://github.com/llvm/llvm-project/pull/65436
More information about the Openmp-commits
mailing list