blob: 24d6ab458d9556386ec52fa474c60f0b77d599bb [file] [log] [blame]
// Copyright 2021 The IREE Authors
//
// Licensed under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#include "experimental/webgpu/platform/native/native_driver.h"
#include "experimental/webgpu/registration/driver_module.h"
#include "iree/base/api.h"
// TODO(#4298): remove this driver registration and wrapper.
static iree_status_t iree_hal_webgpu_native_driver_factory_enumerate(
void* self, const iree_hal_driver_info_t** out_driver_infos,
iree_host_size_t* out_driver_info_count) {
return iree_make_status(
IREE_STATUS_UNIMPLEMENTED,
"WebGPU native driver is only for testing compilation");
}
static iree_status_t iree_hal_webgpu_native_driver_factory_try_create(
void* self, iree_hal_driver_id_t driver_id, iree_allocator_t host_allocator,
iree_hal_driver_t** out_driver) {
return iree_make_status(
IREE_STATUS_UNIMPLEMENTED,
"WebGPU native driver is only for testing compilation");
}
IREE_API_EXPORT iree_status_t
iree_hal_webgpu_driver_module_register(iree_hal_driver_registry_t* registry) {
static const iree_hal_driver_factory_t factory = {
.self = NULL,
.enumerate = iree_hal_webgpu_native_driver_factory_enumerate,
.try_create = iree_hal_webgpu_native_driver_factory_try_create,
};
return iree_hal_driver_registry_register_factory(registry, &factory);
}