chore(ios): update MLX backend binary with compiled-execution path#1235
Merged
Conversation
Rebuilds libbackend_mlx_ios.a (and the ExecutorchLib xcframework that embeds it) from the updated ExecuTorch MLX backend: RMSNorm fusion, mx::compile compiled-execution path, rope_t custom op, tensor-based index_copy, and copy-mode constant loading with a residency guard. Required to run the compile-friendly Gemma 4 E2B MLX .pte exports. Authored with Claude. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
benITo47
approved these changes
Jun 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Updates the prebuilt iOS MLX backend binary (
libbackend_mlx_ios.aand theExecutorchLib.xcframeworkthat embeds it) with the latest ExecuTorch MLX backend.New backend capabilities baked into the binary:
mx::compilecompiled-execution path — traces the interpreter once per input signature and replays the fused graph, cutting per-token Metal kernel encoding.rope_tcustom op — tensor-offset RoPE so the decode graph has no.item()(required formx::compile).index_copy— KV-cache update without an eval-during-trace sync.This binary is required to run the compile-friendly Gemma 4 E2B MLX
.pteexports; the previous binary would not execute them correctly.Introduces a breaking change?
Type of change
Tested on
Testing instructions
compiled execution: enabledon first inference).Screenshots
Related issues
Checklist
Additional notes
This PR contains only the rebuilt binary artifacts. The corresponding backend source lives in the ExecuTorch fork; this updates the prebuilt that the iOS app links against. The simulator variant (
libbackend_mlx_simulator.a) is unchanged in this PR.This PR was authored with Claude.