RepoJournal
Mobile platforms

Mobile platforms

Flutter, Swift, and Kotlin - the mobile platforms developers ship on

Pick a date

The Wire · Showcase

SWIFT COMPILER GETS NATIVE INSTRUCTION ORDERING, FLUTTER DOCS TARGETING CONTRIBUTOR PAIN

By RepoJournal · Filed · About Mobile platforms

Apple's Swift team shipped a foundational compiler optimization that replaces on-demand instruction indexing with persistent per-instruction ordering, cutting O(n) overhead from every pass that needs to compare instruction positions.

The Swift changes land across three related commits: native instruction ordering via persistent indices [1], a new LargeCustomBits structure to support larger instruction indices [3], and removal of the old InstructionIndices data structure [4]. This is the kind of underneath-the-hood work that doesn't ship features but makes the compiler faster and cleaner. LinearLifetimeChecker, SILVerifier, and BoundsCheckOpts all stopped maintaining their own copies and now use a single persistent ordering mechanism.

On the Flutter side, the packages team is tightening contributor onboarding by reworking the CHANGELOG documentation [2]. New contributors were misusing the NEXT section at alarming rates because the docs led with the uncommon case instead of the common one. The rework puts the standard version bump workflow first, edge cases second, which is how documentation should work for people learning the codebase.

Swift's embedded layer also got cleaner this cycle [5]. The allocation and free operations now take a flags parameter set that can extend in the future (currently just calloc-like memory clearing), and the naming shifted from _swift_aligned* to _swift_allocate and _swift_free with ptrdiff_t instead of int for better Swift type mapping.

On the Kotlin side, the JS backend is implementing supertype approximation in TypeScript export [6], and the compiler got better diagnostics for inapplicable fallbacks [7]. These are smaller wins but they're shipping across all three major mobile platform ecosystems.

Action items

References

  1. [1] SIL: native instruction ordering via persistent instruction indices ↗ apple/swift
  2. [2] Rework docs for flutter/packages changelogs ↗ flutter/flutter
  3. [3] SIL: add LargeCustomBits in SILNode to support large instruction indices apple/swift
  4. [4] SIL: remove `InstructionIndices` and use `SILInstruction::isBeforeInBlock` instead apple/swift
  5. [5] [Embedded] Clean up the abstraction layer and add alloc/free flags ↗ apple/swift
  6. [6] [JS] Implement supertype approximation in Analysis API-based TypeScript export ↗ JetBrains/kotlin
  7. [7] KT-86482: separate diagnostic for inapplicable fallback ↗ JetBrains/kotlin

FAQ

What changed in Mobile platforms on June 15, 2026?
Apple's Swift team shipped a foundational compiler optimization that replaces on-demand instruction indexing with persistent per-instruction ordering, cutting O(n) overhead from every pass that needs to compare instruction positions.
What should Mobile platforms teams do about it?
Monitor Swift builds for instruction ordering changes - revert if basic block ordering breaks • Review Flutter CHANGELOG docs if you're managing packages - new structure takes effect now • Test Kotlin JS backends if you export to TypeScript - supertype approximation may change output
Which Mobile platforms repositories shipped on June 15, 2026?
apple/swift, flutter/flutter, JetBrains/kotlin

For your repos

The showcase is a teaser.
Your wire is the product.

Same engine. Different stack. Below: what changes when the wire is yours.

Showcase wire

  • 14 famous open source orgs
  • One wire per day
  • Public, generic
  • Read on the web, when you remember

Your wire

  • Up to 1,500 of your repos - orgs, deps, vendors
  • Morning and evening briefs
  • Action items routed to your team
  • Slack delivery, email, breaking-news CVE alerts

Want a hands-on demo first? Ask a current user for an invite link.