ChezScheme icon indicating copy to clipboard operation
ChezScheme copied to clipboard

Apple Silicon support

Open cjfrisz opened this issue 3 years ago • 5 comments

This changeset adds an arm64mac machine type, with draft implementations for the define-registers and section 2 define-instructions in arm64.ss. The arm64.ss file is based off of arm32.ss, and so the section 3 assembler is unchanged from arm32.ss. The code included compiles, but (unsurprisingly) fails to bootstrap.

cjfrisz avatar Feb 07 '22 02:02 cjfrisz

I've left changes in the arm64mac workarea, so the diff is larger than the actual changeset. Changes are primarily in arm64.ss and cpnanopass.ss.

cjfrisz avatar Feb 07 '22 02:02 cjfrisz

Will this be merged? If so, about how long will it take for this to be merged?

michaelmesser avatar Apr 09 '22 01:04 michaelmesser

It can't be merged in its current state because it effectively has no assembler and doesn't pass the mats. There's no set timeline for merging it, but I see the mentioned issue that Idris can't be installed on Apple Silicon via Homebrew without it.

Until this PR is complete, is it possible to install the Intel version of Idris via Homebrew and run through Rosetta 2?

cjfrisz avatar Apr 10 '22 13:04 cjfrisz

Idris can use the racket fork of chez scheme on M1 to run natively.

michaelmesser avatar Apr 10 '22 17:04 michaelmesser

Despite Apple's current preferred branding, I would strongly advocate for calling the machine type arm64osx (i.e. not arm64mac):

  1. for consistency with the existing machine types i3osx, a6osx, and ppc32osx;
  2. for consistency with Racket's variant of Chez Scheme, which already supports a machine type called arm64osx; and
  3. in keeping with, for example, the fact that the machine types for Illumos/OpenIndiana are i3s2 and a6s2, despite the fact that even Sun/Oracle Solaris has long since stopped branding itself as "Solaris 2" (since c. 1998, IIUC?).

LiberalArtist avatar May 03 '22 19:05 LiberalArtist

Apple Silicon support is included in v9.9.9 merge 47daa9b34016de84fd111801d9d589d15a523abe.

mflatt avatar Oct 17 '23 18:10 mflatt

Can you cut off a new release per this issue close?

relates to https://github.com/Homebrew/homebrew-core/pull/152760

chenrui333 avatar Oct 30 '23 01:10 chenrui333

Yes, the next release will include this support.

burgerrg avatar Oct 30 '23 17:10 burgerrg