[package]
authors = ["The Cranelift Project Developers"]
name = "cranelift-codegen"
version = "0.73.0"
description = "Low-level code generator library"
license = "Apache-2.0 WITH LLVM-exception"
documentation = "https://docs.rs/cranelift-codegen"
repository = "https://github.com/bytecodealliance/wasmtime"
categories = ["no-std"]
readme = "README.md"
keywords = ["compile", "compiler", "jit"]
build = "build.rs"
edition = "2018"
[dependencies]
cranelift-codegen-shared = { path = "./shared", version = "0.73.0" }
cranelift-entity = { path = "../entity", version = "0.73.0" }
cranelift-bforest = { path = "../bforest", version = "0.73.0" }
hashbrown = { version = "0.9.1", optional = true }
target-lexicon = "0.12"
log = { version = "0.4.6", default-features = false }
serde = { version = "1.0.94", features = ["derive"], optional = true }
bincode = { version = "1.2.1", optional = true }
gimli = { version = "0.23.0", default-features = false, features = ["write"], optional = true }
smallvec = { version = "1.6.1" }
thiserror = "1.0.4"
byteorder = { version = "1.3.2", default-features = false }
peepmatic = { path = "../peepmatic", optional = true, version = "0.73.0" }
peepmatic-traits = { path = "../peepmatic/crates/traits", optional = true, version = "0.73.0" }
peepmatic-runtime = { path = "../peepmatic/crates/runtime", optional = true, version = "0.73.0" }
regalloc = { version = "0.0.31" }
souper-ir = { version = "2.1.0", optional = true }
wast = { version = "35.0.0", optional = true }
[build-dependencies]
cranelift-codegen-meta = { path = "meta", version = "0.73.0" }
[features]
default = ["std", "unwind"]
std = []
core = ["hashbrown"]
testing_hooks = []
unwind = ["gimli"]
x86 = []
arm64 = []
riscv = []
arm32 = []
experimental_x64 = []
old-x86-backend = []
all-arch = [
"x86",
"arm64",
"riscv"
]
enable-serde = [
"serde",
"regalloc/enable-serde",
"cranelift-entity/enable-serde",
"cranelift-codegen-shared/enable-serde"
]
regalloc-snapshot = ["bincode", "regalloc/enable-serde"]
rebuild-peephole-optimizers = ["peepmatic", "peepmatic-traits", "wast"]
enable-peepmatic = ["peepmatic-runtime", "peepmatic-traits", "serde"]
souper-harvest = ["souper-ir", "souper-ir/stringify"]
[badges]
maintenance = { status = "experimental" }