Loom C API
Public Loom compiler C API
Loading...
Searching...
No Matches
compile_report.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_COMPILE_REPORT_H_
8#define LOOMC_COMPILE_REPORT_H_
9
10#include "loomc/base.h"
11
26
27#ifdef __cplusplus
28extern "C" {
29#endif
30
32#define LOOMC_ARTIFACT_FORMAT_COMPILE_REPORT_JSON "loom-compile-report-json"
33
35#define LOOMC_ARTIFACT_FORMAT_COMPILE_REPORT_TEXT "loom-compile-report-text"
36
45
57
98
110
117
118#ifdef __cplusplus
119} // extern "C"
120#endif
121
122#endif // LOOMC_COMPILE_REPORT_H_
Base types, descriptors, spans, and host allocation helpers.
#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
loomc_compile_report_mode_t
Compile report detail mode.
Definition compile_report.h:47
@ LOOMC_COMPILE_REPORT_MODE_SUMMARY
Requests stable target, status, artifact, and summary compiler facts.
Definition compile_report.h:52
@ LOOMC_COMPILE_REPORT_MODE_NONE
Does not request a compile report.
Definition compile_report.h:49
@ LOOMC_COMPILE_REPORT_MODE_DETAILS
Requests summary facts plus detail rows when producers support them.
Definition compile_report.h:55
loomc_string_view_t loomc_compile_report_mode_name(loomc_compile_report_mode_t mode)
Returns the stable JSON/CLI spelling for mode.
loomc_compile_report_format_t
Compile report serialization format.
Definition compile_report.h:38
@ LOOMC_COMPILE_REPORT_FORMAT_JSON
Emits the stable structured JSON representation.
Definition compile_report.h:40
@ LOOMC_COMPILE_REPORT_FORMAT_TEXT
Emits bounded human-readable text.
Definition compile_report.h:43
loomc_status_t loomc_compile_report_mode_parse(loomc_string_view_t value, loomc_compile_report_mode_t *out_mode)
Parses a stable compile report mode spelling.
Requests a result-owned target compile report.
Definition compile_report.h:74
loomc_compile_report_format_t format
Report serialization format. Zero selects structured JSON.
Definition compile_report.h:88
loomc_string_view_t identifier
Result artifact identifier.
Definition compile_report.h:96
loomc_compile_report_mode_t mode
Selected report detail mode.
Definition compile_report.h:85
const void * next
Next invocation option extension.
Definition compile_report.h:82
loomc_structure_type_t type
Structure type. Must be LOOMC_STRUCTURE_TYPE_COMPILE_REPORT_OPTIONS.
Definition compile_report.h:76
loomc_host_size_t structure_size
Size of this structure in bytes.
Definition compile_report.h:79
Non-owning string view over bytes that need not be NUL-terminated.
Definition base.h:63