summaryrefslogtreecommitdiff
path: root/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-10.1.0-aligned-new.patch
blob: f7a79eda6c44b85943f3469ef926c7d82f38eb72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Fix crash in VirtualGPU constructor with -march supporting AVX-512
Bug: https://github.com/ROCm/rocm-systems/issues/11256
Backports: https://github.com/ROCm/rocm-systems/pull/11257
--- a/rocclr/include/top.hpp
+++ b/rocclr/include/top.hpp
@@ -162,8 +162,19 @@ class ReferenceCountedObject {
  public:
   ReferenceCountedObject() : referenceCount_(1) {}
 
+  // size-only new hides ::operator new(size, align_val_t); over-aligned
+  // subclasses (VirtualGPU alignas(64) AQL packets) need these overloads.
   void* operator new(size_t size) { return ::operator new(size); }
+  void* operator new(size_t size, std::align_val_t align) {
+    return ::operator new(size, align);
+  }
   void operator delete(void* p) { return ::operator delete(p); }
+  void operator delete(void* p, std::align_val_t align) {
+    return ::operator delete(p, align);
+  }
+  void operator delete(void* p, size_t, std::align_val_t align) {
+    return ::operator delete(p, align);
+  }
   void* operator new(size_t size, size_t extSize) {
     return ReferenceCountedObject::operator new(size + extSize);
   };