[flang-commits] [flang] [llvm] [Flang][OpenMP] Add global address space to globals for target device (PR #119585)

Sergio Afonso via flang-commits flang-commits at lists.llvm.org
Fri Jan 24 04:34:47 PST 2025


================
@@ -1350,14 +1399,34 @@ struct EmboxCommonConversion : public fir::FIROpConversion<OP> {
             ? fir::NameUniquer::getTypeDescriptorAssemblyName(recType.getName())
             : fir::NameUniquer::getTypeDescriptorName(recType.getName());
     mlir::Type llvmPtrTy = ::getLlvmPtrType(mod.getContext());
+
+    // We allow the module to be set to a default layout if it's a regular module
+    // however, we prevent this if it's a GPU module, as the datalayout in these
+    // cases will currently be the union of the GPU Module and the parent builtin
+    // module, with the GPU module overriding the parent where there are duplicates.
+    // However, if we force the default layout onto a GPU module, with no datalayout
+    // it'll result in issues as the infrastructure does not support the union of
+    // two layouts with builtin data layout entries currently (and it doesn't look
+    // like it was intended to).
----------------
skatrak wrote:

```suggestion
    // We allow the module to be set to a default layout if it's a regular module.
    // However, we prevent this if it's a GPU module, as the datalayout in these
    // cases will currently be the union of the GPU Module and the parent builtin
    // module, with the GPU module overriding the parent where there are duplicates.
    // However, if we force the default layout onto a GPU module, with no datalayout
    // it'll result in issues as the infrastructure does not support the union of
    // two layouts with builtin data layout entries.
```

https://github.com/llvm/llvm-project/pull/119585


More information about the flang-commits mailing list