irx.builder.runtime.features

irx.builder.runtime.features

Source: packages/irx/src/irx/builder/runtime/features.py

title: Runtime feature specifications and LLVM symbol helpers.

Functions

declare_external_function(module: ir.Module, name: str, fn_type: ir.FunctionType) -> ir.Function

title: Declare or reuse an external function in an LLVM module.
parameters:
  module:
    type: ir.Module
  name:
    type: str
  fn_type:
    type: ir.FunctionType
returns:
  type: ir.Function

Classes

NativeArtifact

title: Describe one native artifact required by a runtime feature.
attributes:
  kind:
    type: NativeArtifactKind
  path:
    type: Path
  include_dirs:
    type: tuple[Path, Ellipsis]
  compile_flags:
    type: tuple[str, Ellipsis]
  link_flags:
    type: tuple[str, Ellipsis]

ExternalSymbolSpec

title: Describe one external symbol exposed by a runtime feature.
attributes:
  name:
    type: str
  declare:
    type: RuntimeSymbolFactory

RuntimeFeature

title: Describe one optional native runtime feature.
attributes:
  name:
    type: str
  symbols:
    type: Mapping[str, ExternalSymbolSpec]
  artifacts:
    type: tuple[NativeArtifact, Ellipsis]
  linker_flags:
    type: tuple[str, Ellipsis]
  metadata:
    type: Mapping[str, object]