| 75 | } |
| 76 | |
| 77 | hipError_t XExtModuleLaunchKernel(hipFunction_t f, uint32_t gwx, uint32_t gwy, uint32_t gwz, |
| 78 | uint32_t lwx, uint32_t lwy, uint32_t lwz, size_t shm, |
| 79 | hipStream_t stream, void** params, void** extra, |
| 80 | hipEvent_t start_event, hipEvent_t stop_event, uint32_t flags) |
| 81 | { |
| 82 | if (stream == nullptr) { |
| 83 | HipSyncBlockingXQueues(); |
| 84 | return Driver::ExtModuleLaunchKernel(f, gwx, gwy, gwz, lwx, lwy, lwz, shm, stream, |
| 85 | params, extra, start_event, stop_event, flags); |
| 86 | } |
| 87 | |
| 88 | auto xqueue = HwQueueManager::GetXQueue(GetHwQueueHandle(stream)); |
| 89 | if (xqueue == nullptr) { |
| 90 | return Driver::ExtModuleLaunchKernel(f, gwx, gwy, gwz, lwx, lwy, lwz, shm, stream, |
| 91 | params, extra, start_event, stop_event, flags); |
| 92 | } |
| 93 | |
| 94 | auto kernel = std::make_shared<HipExtModuleKernelLaunchCommand>( |
| 95 | f, gwx, gwy, gwz, lwx, lwy, lwz, shm, params, extra, start_event, stop_event, flags, xqueue != nullptr); |
| 96 | xqueue->Submit(kernel); |
| 97 | return hipSuccess; |
| 98 | } |
| 99 | |
| 100 | void** XRegisterFatBinary(const void* data) |
| 101 | { |
nothing calls this directly
no test coverage detected