Disassemble a binary and print out which instruction set extensions it uses. Despite the utterly misleading name, this tool supports ELF and MachO binaries, and perhaps other formats as well, and has preliminary support for ARM64 as well as X86/64. It used to be a lot more limited!
I have no idea what I'm doing here, but it seems to work. There are several Rust crates that make this pretty easy to do.
See the CHANGELOG on the release branch for news about what has changed between releases.
This tool is installable through a few package managers:
If you are interested in packaging elfx86exts
in a new packaging system, or
have already done so, please submit a PR to add it to this list.
If a package is not available, in most cases it will be straightforward to
build elfx86exts
yourself. Dependencies are:
Both of these dependencies are available through a wide variety of package managers. Once they’re set up, you don’t even need to check out this repository to install the latest release. Simply run:
cargo install elfx86exts
… and the tool will be installed in your Cargo binary directory, usually
~/.cargo/bin/
. When using this method, you need to add the --force
flag to
upgrade from one version to the next.
This is hardly any more difficult than the above. Check out this repository, then run:
cargo install --path .
To develop the program, use the cargo build
and cargo run
commands. For
more information, see
The Cargo Book.
Contributions are welcome! Please submit PRs against this repository, or file issues for discussion. The only important rule is that all participants are expected to abide by the spirit of a standard Contributor Covenant code of conduct. All contributions will be assumed to be licensed under the terms described below unless you explicitly state otherwise.
Licensed under the MIT License.