[PATCH] D155794: [OpenMP][OpenMPIRBuilder] Migrate setPropertyExecutionMode() from Clang to OpenMPIRBuilder.

Jan-Patrick Lehr via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jul 21 01:24:06 PDT 2023


jplehr added inline comments.


================
Comment at: clang/lib/CodeGen/CodeGenModule.h:1009
+  std::vector<llvm::WeakTrackingVH> getLLVMCompilerUsed() {
+    return static_cast<std::vector<llvm::WeakTrackingVH> &>(LLVMCompilerUsed);
+  }
----------------
I believe that this can be simplified to

```
std::vector<llvm::WeakTrackingVH> &getLLVMCompilerUsed() {
  return LLVMCompilerUsed;
}
```


================
Comment at: llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:1509
+  setPropertyExecutionMode(StringRef Name, bool isSPMDMode,
+                           std::vector<llvm::WeakTrackingVH> LLVMCompilerUsed);
+
----------------
```...., bool IsSPMDMode, std::vector<llvm::WeakTrackingVH> &LLVMCompilerUsed);```


================
Comment at: llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:4905
+    StringRef Name, bool isSPMDMode,
+    std::vector<llvm::WeakTrackingVH> LLVMCompilerUsed) {
+  auto *GVMode = new llvm::GlobalVariable(
----------------
```...., std::vector<llvm::WeakTrackingVH> &LLVMCompilerUsed) {````


================
Comment at: llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:4914
+  GVMode->setVisibility(llvm::GlobalVariable::ProtectedVisibility);
+  assert(!GVMode->isDeclaration() &&
+         "Only globals with definition can force usage.");
----------------
Can this assertion ever be not be met? I'm just curious, given that you create that `GVMode` yourself.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D155794



More information about the cfe-commits mailing list