Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
spirv/iree_hal.h
Go to the documentation of this file.
1// Copyright 2026 The IREE Authors
2//
3// Licensed under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
7#ifndef LOOMC_TARGET_SPIRV_IREE_HAL_H_
8#define LOOMC_TARGET_SPIRV_IREE_HAL_H_
9
12
50
51#ifdef __cplusplus
52extern "C" {
53#endif
54
77
102 loomc_target_environment_t* target_environment,
104 loomc_allocator_t allocator, loomc_target_profile_t** out_profile,
105 loomc_result_t** out_result);
106
114
115#ifdef __cplusplus
116} // extern "C"
117#endif
118
119#endif // LOOMC_TARGET_SPIRV_IREE_HAL_H_
#define LOOMC_API_EXPORT
Exports a public Loom C API symbol from a shared library build.
Definition base.h:34
size_t loomc_host_size_t
Host allocation and container size type.
Definition base.h:45
loomc_structure_type_t
Structure type values used by extensible public descriptors.
Definition base.h:181
struct iree_status_handle_t * loomc_status_t
Opaque status handle.
Definition base.h:55
Optional target-profile router for IREE HAL devices.
struct loomc_result_t loomc_result_t
Immutable operation result.
Definition result.h:63
loomc_status_t loomc_target_profile_create_spirv_iree_hal(loomc_target_environment_t *target_environment, const loomc_spirv_iree_hal_profile_options_t *options, loomc_allocator_t allocator, loomc_target_profile_t **out_profile, loomc_result_t **out_result)
Creates a SPIR-V target profile from an IREE HAL Vulkan device.
const loomc_iree_hal_profile_provider_t * loomc_spirv_iree_hal_profile_provider(void)
Returns the generic IREE HAL router provider for SPIR-V/Vulkan devices.
SPIR-V target profile facts.
Host allocator used for persistent Loom object storage.
Definition base.h:375
One linked IREE HAL profile provider.
Definition iree_hal.h:104
SPIR-V profile options for an IREE HAL Vulkan device.
Definition spirv/iree_hal.h:56
loomc_host_size_t structure_size
Size of this structure in bytes.
Definition spirv/iree_hal.h:62
iree_hal_device_t * device
IREE HAL device borrowed for the duration of the call.
Definition spirv/iree_hal.h:71
loomc_structure_type_t type
Structure type.
Definition spirv/iree_hal.h:59
loomc_string_view_t identifier
Stable profile identifier used in diagnostics.
Definition spirv/iree_hal.h:68
iree_hal_physical_device_affinity_t physical_device_affinity
Optional physical-device set the selected profile must fully cover.
Definition spirv/iree_hal.h:74
const void * next
Reserved extension chain.
Definition spirv/iree_hal.h:65
Non-owning string view over bytes that need not be NUL-terminated.
Definition base.h:63
struct loomc_target_environment_t loomc_target_environment_t
Prepared immutable target environment.
Definition target.h:123
struct loomc_target_profile_t loomc_target_profile_t
Prepared immutable target profile.
Definition target.h:135