search for: __kmpc_fork_call

Displaying 7 results from an estimated 7 matches for "__kmpc_fork_call".

2016 Jul 31
0
[Openmp-dev] How to get the function definition of a kmpc_micro call
...I was looking for. However, I solved my issue by finding that the BitCastInst used when outlining OpenMP parallel region offers a method for retrieving the original value within the bitcast via stripPointerCasts(). So what I did to retrieve omp_outlined..45 is: //bitcast is the third argument of __kmpc_fork_call Value *vcall = callInst->getArgOperand(2); //This will return the outlined function in __kmpc_fork_call Function *f = dyn_cast<Function>(vcall->stripPointerCasts()); f->getName returns ".omp_outlined..45" So this worked. Thanks again, Dounia On Sat, Jul 30, 2016 at 6:47...
2016 Jul 30
0
How to get the function definition of a kmpc_micro call
Hello, The third argument of the OpenMP runtime call __kmpc_fork_call is the outlined function resulting from omp parallel directive; this is of type kmpc_micro. I can get this argument as an LLVM value by using (callInst->getArgOperand...), but once I get this value, i am stuck in knowing its class type. An example of this value can be: void (i32*, i32*, ...)* bi...
2015 Oct 11
2
How to add NOP?
Can you send the IR you are using? Volkan On Thu, Oct 8, 2015 at 6:28 AM Erdem Derebaşoğlu < erdemderebasoglu at hotmail.com> wrote: > Thanks. I enabled my pass. I have one resolved issue though: > MachineMemOperand::getAddrSpace() always returns zero. How can I use it to > distinguish private memory accesses? > > Erdem > > ------------------------------ > From:
2020 Feb 14
4
About OpenMP dialect in MLIR
Thanks for the reply! It sounds like LLVM IR is being considered for optimizations in OpenMP constructs. There seems to be plans regarding improvement of LLVM IR Framework for providing things required for OpenMP / flang(?) Are there any design considerations which contain pros and cons about using the MLIR vs LLVM IR for various OpenMP related optimizations/ transformations? The latest RFC [
2020 Aug 10
2
[EXTERNAL] Re: Orc JIT v2 breaks OpenMP in 11.x branch?
...lobal %struct.ident_t.21 { i32 0, i32 2, i32 0, i32 0, i8* getelementptr inbounds ([23 x i8], [23 x i8]* @.str, i32 0, i32 0) }, align 8 Call parameter type does not match function signature! %struct.ident_t.21* @2 %struct.ident_t* call void (%struct.ident_t*, i32, void (i32*, i32*, ...)*, ...) @__kmpc_fork_call(%struct.ident_t.21* @2, i32 4, void (i32*, i32*, ...)* bitcast (void (i32*, i32*, i64*, %"class.std::vector.22"*, %"class.std::vector.22"*, float*)* @.omp_outlined. to void (i32*, i32*, ...)*), i64* %_n, %"class.std::vector.22"* %5, %"class.std::vector.22"* %...
2020 Aug 10
2
[EXTERNAL] Re: Orc JIT v2 breaks OpenMP in 11.x branch?
...32 > 2, i32 0, i32 0, i8* getelementptr inbounds ([23 x i8], [23 x i8]* > @.str, i32 0, i32 0) }, align 8 > > Call parameter type does not match function signature! > %struct.ident_t.21* @2 > %struct.ident_t* call void (%struct.ident_t*, i32, void (i32*, i32*, > ...)*, ...) @__kmpc_fork_call(%struct.ident_t.21* @2, i32 4, void > (i32*, i32*, ...)* bitcast (void (i32*, i32*, i64*, > %"class.std::vector.22"*, %"class.std::vector.22"*, float*)* > @.omp_outlined. to void (i32*, i32*, ...)*), i64* %_n, > %"class.std::vector.22"* %5, %"class.std...
2020 Aug 10
2
[EXTERNAL] Re: Orc JIT v2 breaks OpenMP in 11.x branch?
Thanks, Joseph and Johannes. I have not merged in anything, I am using the code from the repository as is. What is this -debug-only option, and to whom would I pass it? I am running our own JIT application, which uses clang to compile modules on the fly via clang::CompilerInstance::ExecuteAction(). Working on the assumption that there is a mismatch in the declared type of an OpenMP runtime