[PATCH] D101977: [OpenMP] Create custom state machines for generic target regions

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 9 20:53:30 PDT 2021


jdoerfert added inline comments.


================
Comment at: llvm/lib/Transforms/IPO/OpenMPOpt.cpp:2747
+           "Kernel without __kmpc_target_init or __kmpc_target_deinit!");
+
+    // For kernels we need to register a simplification callback so that the Attributor
----------------
JonChesterfield wrote:
> I'm seeing this assert fire. The kernel contains both the init and deinit calls, but the InitRFI/DeinitRFI for each use doesn't see any uses, so StoreCallBase isn't called, and nothing is assumed to Storage. Kernel otherwise looks uninteresting, run into while trying to track down another bug.
> 
> For my reference, issue_001.c from aomp, debug clang build at trunk today, invoked as:
> 
> `clang  -O2 -fopenmp -fopenmp-targets=amdgcn-amd-amdhsa -Xopenmp-target=amdgcn-amd-amdhsa -march=gfx906  issue_001.c -o issue_001 `
> gets bitcode corruption, invalid record
> 
> If passed `-openmp-opt-disable=true`, no corruption seen. If that is used to extract amdgpu bitcode which is fed back into opt, this assert trips.
Can you emit the IR (module) before openmp-opt?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D101977



More information about the llvm-commits mailing list