Skip to content

Releases: llvm-mos/llvm-mos-sdk

SDK v22.7.0

27 Jan 18:24

Choose a tag to compare

New features

SDK v22.6.0

21 Jan 02:37

Choose a tag to compare

New features

#533 - Allow function style modifiers in assembly directives - @GorillaSapiens

Bug fixes

#535 - Fix legalizer validation issue in debug builds - @johnwbyrd
#536 - Correct depth arg type for return/frame address builtins - @johnwbyrd
#542 - Fix Tablegen issue for AsmPrinter - @johnwbyrd

SDK v22.5.0

11 Jan 23:34
e35d5ff

Choose a tag to compare

New features

Bug fixes

SDK v22.4.0

25 Nov 02:56
a5206c1

Choose a tag to compare

New targets

  • [fds] Initial support and wrappers for BIOS functions for the Famicom Disk System - @TheEssem

New features

Bug fixes

SDK v22.3.2

02 Oct 21:44

Choose a tag to compare

Bug fixes

  • llvm-mos/llvm-mos#507 - Fix undefined behaviors and incorrect type coercion - @johnwbyrd
  • #407 - mos-platform/neo6502/api/controller.c: fix return type and set parameter for neo_controller_read() - @patrick-flynn
  • Fix issue with usage of C inline in plasma.c example
  • Clean up some SDK warnings and errors

SDK v22.3.1

14 Aug 17:49

Choose a tag to compare

Bug fixes

SDK v22.3.0

15 Jul 22:09
4dfe9f4

Choose a tag to compare

New features

  • llvm-objcopy now accepts elf32-mos as a target. In particular, this enables the workflow of converting a raw binary file to a relocatable ELF object, with the contents of the raw binary file in a section. Thanks @davidgiven for reporting that this didn't work.

Bug fixes

Merge from upstream LLVM

Upstream revision: llvm/llvm-project@c384ec4 (13 Jul 2025)
Previous upstream revision: llvm/llvm-project@4984714 (25 Jun 2025)

SDK v22.2.1

02 Jul 21:13

Choose a tag to compare

Bug fixes

  • llvm-mos/llvm-mos#491 - Fix crash for certain adds of ternary ... ? 1 : -1.
    • This pattern was converted from a variable ADC to a INC and DEC by the MOSIncDecPhi pass, but the mechanism was always brittle, and it was difficult to repair it in the face of this issue. Accordingly, this pass has been removed. This may cause a slight regression in code size and performance, but it's expected to be in the noise compared to register allocation.

Merge from upstream LLVM

Upstream revision: llvm/llvm-project@4984714 (25 Jun 2025)
Previous upstream revision: llvm/llvm-project@b434bc4 (14 May 2025)

SDK v22.2.0

15 May 16:10
2257f41

Choose a tag to compare

New features

Bug fixes

  • #388 cpm_bios_seldsk_i now returns NULL on error, rather than an undefined result - @eduardocasino
  • mega65 examples are now correctly built by default with the SDK

Merge from upstream LLVM

Upstream revision: llvm/llvm-project@b434bc4 (14 May 2025)
Previous upstream revision: llvm/llvm-project@c99ffe58af23 (17 Apr 2025)

SDK v22.1.0

26 Apr 20:11

Choose a tag to compare

New features

  • #393 - nes/supervision: Add weak attribute to early and late init - @TheEssem
    • This allows almost-completely replacing the initialization routines for these systems with custom user code.

Merge from upstream LLVM

Upstream revision: llvm/llvm-project@c99ffe58af23 (17 Apr 2025)
Previous upstream revision: llvm/llvm-project@2f7ade4b5e39 (13 Jan 2025)

New features

  • LLD now has a --why-live=<glob> tag to report why symbols matching the given glob weren't removed by linker garbage collection (GC).
    • This can be useful for debugging why linker GC didn't strip something out.