cranelift-codegen 0.127.3

Low-level code generator library
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.89.0"
name = "cranelift-codegen"
version = "0.127.3"
authors = ["The Cranelift Project Developers"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Low-level code generator library"
documentation = "https://docs.rs/cranelift-codegen"
readme = "README.md"
keywords = [
    "compile",
    "compiler",
    "jit",
]
categories = ["no-std"]
license = "Apache-2.0 WITH LLVM-exception"
repository = "https://github.com/bytecodealliance/wasmtime"
resolver = "2"

[package.metadata.docs.rs]
features = ["all-arch"]

[features]
all-arch = [
    "all-native-arch",
    "pulley",
]
all-native-arch = [
    "x86",
    "arm64",
    "s390x",
    "riscv64",
]
arm64 = []
core = []
default = [
    "std",
    "unwind",
    "host-arch",
    "timing",
]
disas = [
    "anyhow",
    "capstone",
]
enable-serde = [
    "serde",
    "serde_derive",
    "cranelift-entity/enable-serde",
    "cranelift-bitset/enable-serde",
    "regalloc2/enable-serde",
    "smallvec/serde",
]
host-arch = []
incremental-cache = [
    "enable-serde",
    "postcard",
    "sha2",
]
isle-errors = ["cranelift-isle/fancy-errors"]
pulley = [
    "dep:pulley-interpreter",
    "pulley-interpreter/encode",
    "pulley-interpreter/disas",
    "cranelift-codegen-meta/pulley",
]
riscv64 = []
s390x = []
souper-harvest = [
    "souper-ir",
    "souper-ir/stringify",
]
std = ["serde?/std"]
timing = []
trace-log = ["regalloc2/trace-log"]
unwind = ["gimli"]
x86 = []

[lib]
name = "cranelift_codegen"
path = "src/lib.rs"

[dependencies.anyhow]
version = "1.0.100"
features = ["std"]
optional = true
default-features = false

[dependencies.bumpalo]
version = "3"

[dependencies.capstone]
version = "0.13.0"
optional = true

[dependencies.cranelift-assembler-x64]
version = "0.127.3"

[dependencies.cranelift-bforest]
version = "0.127.3"

[dependencies.cranelift-bitset]
version = "0.127.3"

[dependencies.cranelift-codegen-shared]
version = "0.127.3"

[dependencies.cranelift-control]
version = "0.127.3"

[dependencies.cranelift-entity]
version = "0.127.3"

[dependencies.gimli]
version = "0.32.3"
features = [
    "read",
    "write",
    "std",
]
optional = true
default-features = false

[dependencies.hashbrown]
version = "0.15"
default-features = false

[dependencies.log]
version = "0.4.28"
default-features = false

[dependencies.postcard]
version = "1.1.3"
features = ["alloc"]
optional = true
default-features = false

[dependencies.pulley-interpreter]
version = "=40.0.3"
optional = true

[dependencies.regalloc2]
version = "0.13.3"
features = ["checker"]

[dependencies.rustc-hash]
version = "2.1.1"

[dependencies.serde]
version = "1.0.228"
features = ["alloc"]
optional = true
default-features = false

[dependencies.serde_derive]
version = "1.0.228"
optional = true

[dependencies.sha2]
version = "0.10.2"
optional = true

[dependencies.smallvec]
version = "1.15.1"
features = ["union"]

[dependencies.souper-ir]
version = "2.1.0"
optional = true

[dependencies.target-lexicon]
version = "0.13.0"

[dependencies.wasmtime-math]
version = "=40.0.3"
package = "wasmtime-internal-math"

[dev-dependencies.criterion]
version = "0.7.0"
features = [
    "html_reports",
    "rayon",
]
default-features = false

[dev-dependencies.env_logger]
version = "0.11.5"

[dev-dependencies.proptest]
version = "1.0.0"

[dev-dependencies.similar]
version = "2.1.0"

[build-dependencies.cranelift-codegen-meta]
version = "0.127.3"

[build-dependencies.cranelift-isle]
version = "=0.127.3"

[lints.clippy]
allow_attributes_without_reason = "warn"
clone_on_copy = "warn"
extra_unused_type_parameters = "warn"
from_over_into = "warn"
manual_strip = "warn"
map_clone = "warn"
multiple_bound_locations = "warn"
redundant_field_names = "warn"
uninlined_format_args = "warn"
unnecessary_cast = "warn"
unnecessary_fallible_conversions = "warn"
unnecessary_mut_passed = "warn"
unnecessary_to_owned = "warn"
useless_conversion = "warn"

[lints.clippy.all]
level = "allow"
priority = -1

[lints.rust]
trivial_numeric_casts = "warn"
unstable_features = "warn"
unused-lifetimes = "warn"
unused-macro-rules = "warn"
unused_extern_crates = "warn"
unused_import_braces = "warn"

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
    "cfg(pulley_tail_calls)",
    "cfg(pulley_assume_llvm_makes_tail_calls)",
    "cfg(pulley_disable_interp_simd)",
]