Compilation#

tvm.tirx.build#

tvm.tirx.build(mod: Function | IRModule, target: str | Target | None = None, pipeline: str | Pass | None = 'default')

Build a function with a signature, generating code for devices coupled with target information.

Parameters:
  • mod (Union[Function, IRModule]) – The input to be built.

  • target (Optional[Union[str, Target]]) – The target for compilation, including backend configuration defaults.

  • pipeline (Union[None, str, tvm.transform.Pass]) – The pipeline to use for compilation.

Returns:

A module combining both host and device code.

Return type:

tvm.runtime.Module

tvm.tirx.compilation_pipeline#

The TIR backend compilation pipeline.

tvm.tirx.compilation_pipeline.default_tir_pipeline()

The default pipeline for TIRx primitive functions.

tvm.tirx.compilation_pipeline.tirx_pipeline(*, prepare_only=False)

The TIRX pipeline used in tvm.tirx.build

tvm.tirx.compilation_pipeline.finalize_tir_pipeline()

Lower module-wide calling conventions after all dialects are prepared.

tvm.tirx.compilation_pipeline.finalize_host_passes()

The default finalization passes for TIR backend.

tvm.tirx.compilation_pipeline.finalize_device_passes()

The default finalization passes for TIR backend.

tvm.tirx.compilation_pipeline.finalize_device_passes_tirx()

The TIRx finalization passes for TIR backend.

tvm.tirx.compilation_pipeline.register_tir_pipeline(name: str, pipeline_factory) → None

Register a named TIR pipeline factory.

tvm.tirx.compilation_pipeline.get_tir_pipeline(name: str | None = None, **kwargs) → Pass

Get pre-build pipeline by name

Parameters:

name (Optional[str]) – Name of the pipeline

tvm.tirx.compilation_pipeline.register_default_tir_pipeline_selector(selector) → None

Register a callback returning a pipeline tuple or None for (module, target).

tvm.tirx.compilation_pipeline.get_default_tir_pipeline(target: Target | None, mod: IRModule | None = None) → Pass

Get the default pipeline for the input module and target.