runtimeverification / runtimeverification/evm-semantics
Segfaults on arm64 macOS
Nobody has claimed this yet.
- Dominant language
- KCL
- Stars
- 591
- Forks
- 156
- Avg merge
- 2h 19m
- Merged PRs (30d)
- 1
Description
While debugging an unrelated issue, I noticed that the default build-from-source instructions cause a lot of the EVM tests to segfault on my new arm64 mac.
This is in fact something that's been identified previously in the smoke-testing script for KEVM: https://github.com/runtimeverification/evm-semantics/blob/cd2e87a339cfa9d7046a519d86b7b044a1c63346/package/test-package.sh#L25-L32
The underlying issue is actually in upstream LLVM; I fixed it with a patch to LLVM that landed in LLVM 17. Unfortunately, we are currently blocked on making LLVM 17 available to Nix builds of K: https://github.com/runtimeverification/llvm-backend/pull/927. As a workaround, you can build K from source against LLVM 17 using Homebrew and point the KEVM build system at that K installation.
There isn't a fix for this issue as such; it will be resolved once Nix-built K can use LLVM 17.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the default build-from-source instructions and package/test-package.sh lines 25–32, then review the linked LLVM issue and llvm-backend pull request. There is no repository fix described; the issue is done when Nix-built K can use LLVM 17 and the arm64 macOS EVM tests no longer segfault.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100