Skip to main content

asmslicer

asmslicer is the LOCI static-analysis service. It slices ELF binaries (embedded firmware and executables) into:

  • ASM basic blocks and linear execution segments, including CFG info.
  • Callgraph between functions.
  • Symbol and variable-access information.

and additionally provides binary diffing, worst-case stack-depth estimation, ROM/RAM memory-usage reports, and cross-artifact symbol dependency resolution.

Documentation

Full documentation lives in docs/ — start with the overview.

1. Overview and scope What the service does; scope boundary vs. the TDMP trace pipeline
2. Architecture Processing pipeline, disassembly engines, data flow
3. CLI reference Subcommands slice, diff, stack-depth, memmap, deps; exit codes
4. Output formats Normative schemas of all CSV/DOT/JSON artifacts
5. Analyses Methods, assumptions, guarantees, blind spots
6. Platform support aarch64 / Cortex-M / TriCore support matrix
7. Deployment and operations Docker image, env vars, security posture
8. Dependencies Third-party inventory and licenses
9. Quality assurance Test suites and golden-data regression evidence
10. Limitations and determinism Soundness limits, reproducibility statement
11. Release and versioning CI/CD, image tagging, provenance

How do I get set up?

  • asmslicer uses uv for Python project and dependency management; install uv first.

External dependencies

The following system tools are required for full functionality:

  • binutils — provides c++filt for C++ symbol demangling
  • llvm-18 — provides llvm-ifs-18 for interface stub generation
  • rustfilt — for Rust symbol demangling

On Debian/Ubuntu:

sudo apt-get update && sudo apt-get install binutils rustfilt
wget -qO- https://apt.llvm.org/llvm.sh | sudo bash -s -- 18

For CUDA binary analysis (optional):

# Requires NVIDIA CUDA toolkit
sudo apt-get install cuda-cuxxfilt-13-0 cuda-cuobjdump-13-0 cuda-nvdisasm-13-0
  • Then configure the venv using uv:
uv venv
source .venv/bin/activate
uv sync
  • Once the venv is set up you can run the service CLI locally:
loci-service-asmslicer --help
loci-service-asmslicer slice path/to/app.elf ./out
  • The Docker container image can also be built in the standard way:
docker build -t loci-platform/loci-service-static-analysis .

Contribution guidelines

  • The project uses the main branch for active development.
  • Changes are merged by creating a pull request targeting main.
  • Merging to main automatically triggers a build pipeline which deploys the Docker container to AWS ECR with the latest tag.
  • Creating an annotated tag with an x.y.z version number triggers a pipeline build which deploys the Docker container to AWS ECR with the x.y.z tag. See docs/11-versioning.md.

Who do I talk to?

  • Repo owner or admin.

Metadata

Release files for loci-service-asmslicer 1.1.14

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for loci-service-asmslicer 1.1.14
File
loci_service_asmslicer-1.1.14-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
loci_service_asmslicer-1.1.14-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details

Total release size: 38.1 MB

Release files / loci_service_asmslicer-1.1.14-cp312-cp312-win_amd64.whl

Download URL loci_service_asmslicer-1.1.14-cp312-cp312-win_amd64.whl
Size 3.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
3a443b2beb79a25ed913fff1fc6b92b4cb35c7b5c307a46f188c4e31208c5d87
BLAKE2b-256 checksum
How to use checksums
6b0083dce330828505a23a225e0f4c4df747fa7791dd1b7fbb85afe0bfe5a232
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release files / loci_service_asmslicer-1.1.14-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL loci_service_asmslicer-1.1.14-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 27.1 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
26eb1fe1e5b27de1cedd1b47e7e2dec7764c9cfb7bc5dc33190ba600f3c9a1ba
BLAKE2b-256 checksum
How to use checksums
87b6a01a95fc38fc3eecd6a2b46ad14dad144125975177f6938feabe7d410ffd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.7

Release files / loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_x86_64.whl

Download URL loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_x86_64.whl
Size 3.9 MB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
a2f929d8a34b43d420904f9e4159c95e053ab020a0cc4b9e68d76a8c8b26f43e
BLAKE2b-256 checksum
How to use checksums
263c550ac6d6825c5436166fed4770668075345198734da417839b51d7883a2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release files / loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_arm64.whl

Download URL loci_service_asmslicer-1.1.14-cp312-cp312-macosx_11_0_arm64.whl
Size 3.7 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
17d7a4bc892ffc3f3c908e89ce743beecbb76a57ff12ddf4b3f21c723ebd04a6
BLAKE2b-256 checksum
How to use checksums
20675ed54f17aeb225e1e6ccdcb1c3fd0438031563f05d6a92f6a3828fbe95b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.13

Release history Release notifications | RSS feed

1.1.15

4 release files

This release

1.1.14 This release

4 release files

1.1.13

4 release files

1.1.10

4 release files

1.1.9

4 release files

1.1.8

4 release files

1.1.7

4 release files

1.1.6

4 release files

1.1.5

4 release files

1.1.4

4 release files

1.1.3

4 release files

1.1.2

4 release files

1.1.1

4 release files

1.1.0

4 release files

1.0.17

4 release files

1.0.16

4 release files

1.0.14

4 release files

1.0.13

4 release files

1.0.12

4 release files

1.0.9

4 release files

1.0.8

4 release files

1.0.7

4 release files

1.0.6

4 release files

1.0.5

4 release files

1.0.4

4 release files

1.0.3

4 release files

1.0.2

4 release files

1.0.1

4 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page