[llvm] [OFFLOAD] Add plugin with support for Intel oneAPI Level Zero (PR #158900)

Alex Duran via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 25 05:01:14 PDT 2025


================
@@ -16,17 +16,93 @@
 #include <list>
 #include <memory>
 #include <mutex>
+#include <type_traits>
+
+template <typename ObjectType> struct PerThread {
----------------
adurang wrote:

The TLS tables are defined in L0Plugin.h:
```
  // Table containing per-thread information using TLS
  L0ThreadTblTy ThreadTLSTable;
  // Table containing per-thread information for each device using TLS
  L0DeviceTLSTableTy DeviceTLSTable;
  // Table containing per-thread information for each Context using TLS
  L0ContextTLSTableTy ContextTLSTable;
```

For details on every table you can check here: [TLS.h](https://github.com/adurang/llvm-project/blob/3dba3c3f28abee9da36d8d42c4d01e6527bfd502/offload/plugins-nextgen/level_zero/include/TLS.h#L27), [L0Context.h](https://github.com/adurang/llvm-project/blob/3dba3c3f28abee9da36d8d42c4d01e6527bfd502/offload/plugins-nextgen/level_zero/include/L0Context.h#L23) and [L0Device.h](https://github.com/adurang/llvm-project/blob/3dba3c3f28abee9da36d8d42c4d01e6527bfd502/offload/plugins-nextgen/level_zero/include/L0Device.h#L80)

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


More information about the llvm-commits mailing list