thermite 0.2.1

High-performance, generic, ISA-portable SIMD library with a policy-configurable transcendental math 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.95"
name = "thermite"
version = "0.2.1"
authors = ["novacrazy <novacrazy@gmail.com>"]
build = false
include = [
    "/src",
    "/README.md",
    "/GUIDE.md",
    "/katex-header.html",
    "/LICENSE-APACHE",
    "/LICENSE-MIT",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-performance, generic, ISA-portable SIMD library with a policy-configurable transcendental math library"
homepage = "https://github.com/raygon-renderer/thermite"
readme = "README.md"
keywords = [
    "simd",
    "vector",
    "math",
    "no-std",
    "performance",
]
categories = [
    "no-std",
    "mathematics",
    "hardware-support",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/raygon-renderer/thermite"
resolver = "1"

[package.metadata.docs.rs]
features = [
    "document_registers",
    "std",
    "avx2-f16c",
]
rustdoc-args = [
    "--cfg",
    "docsrs",
    "--html-in-header",
    "katex-header.html",
]

[features]
algebraic-scalar = []
avx2-f16c = ["thermite-macros/avx2-f16c"]
avx2-pclmul = ["thermite-macros/avx2-pclmul"]
avx512-tier1 = []
avx512-tier2 = ["avx512-tier1"]
avx512-tier3 = ["avx512-tier2"]
avx512-tier4 = ["avx512-tier3"]
bitvec = [
    "dep:bitvec",
    "generic-array/bitvec",
]
default = [
    "document_registers",
    "bitvec",
    "avx2-f16c",
    "avx2-pclmul",
]
disable_dispatch = []
disable_fast_fma = []
document_registers = []
ignore_denormals = []
nightly = []
partial-ord = []
preserve_denormals = []
spirv = ["nightly"]
std = ["num-traits/std"]
strict_ieee754 = [
    "preserve_denormals",
    "disable_fast_fma",
]
wasm = []

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

[dependencies.bitvec]
version = "1.0.1"
optional = true
default-features = false

[dependencies.cfg-if]
version = "1"
default-features = false

[dependencies.const-default]
version = "1.0.0"
default-features = false

[dependencies.crunchy]
version = "0.2"

[dependencies.fast_polynomial]
version = "0.4"
default-features = false

[dependencies.generic-array]
version = "1.4.0"

[dependencies.hexf]
version = "0.2.1"

[dependencies.libm]
version = "0.2.13"
features = ["arch"]
default-features = false

[dependencies.num-traits]
version = "0.2.19"
default-features = false

[dependencies.paste]
version = "1.0.15"

[dependencies.rand]
version = "0.10"
optional = true
default-features = false

[dependencies.rustversion]
version = "1"

[dependencies.thermite-macros]
version = "=0.2.1"

[dev-dependencies.glam]
version = "0.33"

[dev-dependencies.image]
version = "0.25"
features = ["png"]
default-features = false

[dev-dependencies.num-traits]
version = "0.2.19"
default-features = true

[dev-dependencies.rand]
version = "0.10"

[target.'cfg(any(target_arch = "x86", target_arch = "x86_64"))'.dependencies.thermite-macros]
version = "=0.2.1"
features = ["x86"]

[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", all(target_arch = "aarch64", target_env = "gnu")))'.dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]

[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", all(target_arch = "aarch64", target_env = "gnu")))'.dev-dependencies.nalgebra]
version = "0.35"

[target.'cfg(any(target_arch = "x86", target_arch = "x86_64", all(target_arch = "aarch64", target_env = "gnu")))'.dev-dependencies.simba]
version = "0.10"
features = ["wide"]

[target.'cfg(target_arch = "aarch64")'.dependencies.thermite-macros]
version = "=0.2.1"
features = ["neon"]

[target.'cfg(target_arch = "spirv")'.dependencies.spirv-std-macros]
version = "0.9.0"

[target.'cfg(target_arch = "spirv")'.dependencies.thermite-macros]
version = "=0.2.1"
features = ["spirv"]

[target.'cfg(target_arch = "wasm32")'.dependencies.thermite-macros]
version = "=0.2.1"
features = ["wasm"]

[target.'cfg(target_arch = "wasm64")'.dependencies.thermite-macros]
version = "=0.2.1"
features = ["wasm"]

[lints.rust.unexpected_cfgs]
level = "allow"
priority = 0
check-cfg = [
    'cfg(target_arch, values("spirv"))',
    "cfg(tarpaulin_include)",
    "cfg(thermite_unstable_spirv)",
    "cfg(thermite_legacy_map)",
]